diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtCommentAdminBo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtCommentAdminBo.java new file mode 100644 index 0000000..b19645b --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtCommentAdminBo.java @@ -0,0 +1,23 @@ +package org.leocoder.heritage.domain.model.bo.admin; + +import jakarta.validation.constraints.NotNull; +import lombok.Data; + +/** + * @author Leocoder + * @description [后台评论操作Bo] + */ +@Data +public class HrtCommentAdminBo { + + // 评论ID + @NotNull(message = "评论ID不能为空") + private Long id; + + // 审核状态:0-待审核,1-已通过,2-已拒绝 + private Integer status; + + // 审核备注 + private String remark; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtCommentAdminQueryBo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtCommentAdminQueryBo.java new file mode 100644 index 0000000..63030f1 --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtCommentAdminQueryBo.java @@ -0,0 +1,42 @@ +package org.leocoder.heritage.domain.model.bo.admin; + +import lombok.Data; + +/** + * @author Leocoder + * @description [后台评论查询Bo] + */ +@Data +public class HrtCommentAdminQueryBo { + + // 页码 + private Integer pageNum = 1; + + // 每页数量 + private Integer pageSize = 10; + + // 用户ID + private Long userId; + + // 目标类型:heritage、inheritor、news、event + private String targetType; + + // 目标ID + private Long targetId; + + // 评论内容(模糊查询) + private String content; + + // 状态:0-待审核,1-已通过,2-已拒绝 + private Integer status; + + // 开始时间 + private String startTime; + + // 结束时间 + private String endTime; + + // 用户昵称或用户名(模糊查询) + private String userKeyword; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtEventAdminBo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtEventAdminBo.java new file mode 100644 index 0000000..6b766d2 --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtEventAdminBo.java @@ -0,0 +1,86 @@ +package org.leocoder.heritage.domain.model.bo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import jakarta.validation.constraints.NotBlank; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [活动管理BO(新增/编辑)] + */ +@Data +public class HrtEventAdminBo { + + /** + * 主键ID(编辑时必填) + */ + private Long id; + + /** + * 活动标题 + */ + @NotBlank(message = "活动标题不能为空") + private String title; + + /** + * 活动摘要 + */ + private String summary; + + /** + * 活动详情 + */ + private String content; + + /** + * 封面图 + */ + private String coverImage; + + /** + * 活动地点 + */ + private String location; + + /** + * 开始时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime startTime; + + /** + * 结束时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime endTime; + + /** + * 最大参与人数 + */ + private Integer maxParticipants; + + /** + * 报名开始时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime registrationStart; + + /** + * 报名结束时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime registrationEnd; + + /** + * 状态:upcoming、ongoing、finished、cancelled + */ + private String status; + + /** + * 发布状态:0-草稿,1-已发布 + */ + private Integer publishStatus; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtEventAdminQueryBo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtEventAdminQueryBo.java new file mode 100644 index 0000000..ce3844c --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtEventAdminQueryBo.java @@ -0,0 +1,72 @@ +package org.leocoder.heritage.domain.model.bo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [活动管理查询BO] + */ +@Data +public class HrtEventAdminQueryBo { + + /** + * 页码 + */ + private Integer pageNum = 1; + + /** + * 每页数量 + */ + private Integer pageSize = 10; + + /** + * 活动标题(模糊查询) + */ + private String title; + + /** + * 活动地点(模糊查询) + */ + private String location; + + /** + * 状态:upcoming、ongoing、finished、cancelled + */ + private String status; + + /** + * 关键词(搜索标题、摘要、内容等字段) + */ + private String keyword; + + /** + * 发布状态:0-草稿,1-已发布,null-全部 + */ + private Integer publishStatus; + + /** + * 活动开始时间(开始) + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime startTimeBegin; + + /** + * 活动开始时间(结束) + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime startTimeEnd; + + /** + * 排序字段:view_count、start_time、create_time、current_participants + */ + private String sortField = "create_time"; + + /** + * 排序方式:asc、desc + */ + private String sortOrder = "desc"; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtHeritageAdminBo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtHeritageAdminBo.java new file mode 100644 index 0000000..95550f4 --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtHeritageAdminBo.java @@ -0,0 +1,111 @@ +package org.leocoder.heritage.domain.model.bo.admin; + +import jakarta.validation.constraints.NotBlank; +import lombok.Data; + +/** + * @author Leocoder + * @description [非遗项目管理BO(新增/编辑)] + */ +@Data +public class HrtHeritageAdminBo { + + /** + * 主键ID(编辑时必填) + */ + private Long id; + + /** + * 项目名称 + */ + @NotBlank(message = "项目名称不能为空") + private String name; + + /** + * 英文名称 + */ + private String nameEn; + + /** + * 分类:traditional-craft、traditional-art等 + */ + @NotBlank(message = "分类不能为空") + private String category; + + /** + * 级别:world、national、provincial、municipal、county + */ + @NotBlank(message = "级别不能为空") + private String level; + + /** + * 省份 + */ + private String province; + + /** + * 城市 + */ + private String city; + + /** + * 项目介绍 + */ + private String description; + + /** + * 历史渊源 + */ + private String history; + + /** + * 技艺特点 + */ + private String skills; + + /** + * 文化意义 + */ + private String significance; + + /** + * 封面图 + */ + private String coverImage; + + /** + * 图片集合(JSON数组) + */ + private String images; + + /** + * 视频URL + */ + private String videoUrl; + + /** + * 标签(逗号分隔) + */ + private String tags; + + /** + * 状态:active-正常传承,endangered-濒危 + */ + private String status; + + /** + * 是否精选:0-否,1-是 + */ + private Integer isFeatured; + + /** + * 排序权重 + */ + private Integer sortOrder; + + /** + * 发布状态:0-草稿,1-已发布 + */ + private Integer publishStatus; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtHeritageAdminQueryBo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtHeritageAdminQueryBo.java new file mode 100644 index 0000000..e282036 --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtHeritageAdminQueryBo.java @@ -0,0 +1,87 @@ +package org.leocoder.heritage.domain.model.bo.admin; + +import lombok.Data; + +/** + * @author Leocoder + * @description [非遗项目管理查询BO] + */ +@Data +public class HrtHeritageAdminQueryBo { + + /** + * 页码 + */ + private Integer pageNum = 1; + + /** + * 每页数量 + */ + private Integer pageSize = 10; + + /** + * 项目名称(模糊查询) + */ + private String name; + + /** + * 英文名称(模糊查询) + */ + private String nameEn; + + /** + * 分类:traditional-craft、traditional-art等 + */ + private String category; + + /** + * 级别:world、national、provincial、municipal、county + */ + private String level; + + /** + * 省份 + */ + private String province; + + /** + * 城市 + */ + private String city; + + /** + * 状态:active-正常传承,endangered-濒危 + */ + private String status; + + /** + * 标签(模糊匹配) + */ + private String tag; + + /** + * 关键词(搜索名称、描述、历史等字段) + */ + private String keyword; + + /** + * 发布状态:0-草稿,1-已发布,null-全部 + */ + private Integer publishStatus; + + /** + * 是否精选:0-否,1-是,null-全部 + */ + private Integer isFeatured; + + /** + * 排序字段:view_count、like_count、favorite_count、create_time、sort_order + */ + private String sortField = "create_time"; + + /** + * 排序方式:asc、desc + */ + private String sortOrder = "desc"; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtInheritorAdminBo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtInheritorAdminBo.java new file mode 100644 index 0000000..25711ca --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtInheritorAdminBo.java @@ -0,0 +1,114 @@ +package org.leocoder.heritage.domain.model.bo.admin; + +import jakarta.validation.constraints.NotBlank; +import lombok.Data; + +/** + * @author Leocoder + * @description [传承人管理BO(新增/编辑)] + */ +@Data +public class HrtInheritorAdminBo { + + /** + * 主键ID(编辑时必填) + */ + private Long id; + + /** + * 姓名 + */ + @NotBlank(message = "姓名不能为空") + private String name; + + /** + * 英文名 + */ + private String nameEn; + + /** + * 性别:1-男,2-女 + */ + private Integer gender; + + /** + * 出生年份 + */ + private Integer birthYear; + + /** + * 头像 + */ + private String avatar; + + /** + * 关联非遗项目ID + */ + private Long heritageId; + + /** + * 传承项目名称 + */ + private String heritageName; + + /** + * 传承人级别:national、provincial等 + */ + private String level; + + /** + * 省份 + */ + private String province; + + /** + * 城市 + */ + private String city; + + /** + * 个人简介 + */ + private String introduction; + + /** + * 传承故事 + */ + private String story; + + /** + * 主要成就 + */ + private String achievements; + + /** + * 代表作品(JSON数组) + */ + private String works; + + /** + * 图片集合(JSON数组) + */ + private String images; + + /** + * 视频URL + */ + private String videoUrl; + + /** + * 是否精选:0-否,1-是 + */ + private Integer isFeatured; + + /** + * 排序权重 + */ + private Integer sortOrder; + + /** + * 发布状态:0-草稿,1-已发布 + */ + private Integer publishStatus; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtInheritorAdminQueryBo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtInheritorAdminQueryBo.java new file mode 100644 index 0000000..de60f27 --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtInheritorAdminQueryBo.java @@ -0,0 +1,87 @@ +package org.leocoder.heritage.domain.model.bo.admin; + +import lombok.Data; + +/** + * @author Leocoder + * @description [传承人管理查询BO] + */ +@Data +public class HrtInheritorAdminQueryBo { + + /** + * 页码 + */ + private Integer pageNum = 1; + + /** + * 每页数量 + */ + private Integer pageSize = 10; + + /** + * 姓名(模糊查询) + */ + private String name; + + /** + * 英文名(模糊查询) + */ + private String nameEn; + + /** + * 性别:1-男,2-女 + */ + private Integer gender; + + /** + * 关联非遗项目ID + */ + private Long heritageId; + + /** + * 传承项目名称(模糊查询) + */ + private String heritageName; + + /** + * 传承人级别:national、provincial等 + */ + private String level; + + /** + * 省份 + */ + private String province; + + /** + * 城市 + */ + private String city; + + /** + * 关键词(搜索姓名、简介、故事等字段) + */ + private String keyword; + + /** + * 发布状态:0-草稿,1-已发布,null-全部 + */ + private Integer publishStatus; + + /** + * 是否精选:0-否,1-是,null-全部 + */ + private Integer isFeatured; + + /** + * 排序字段:view_count、like_count、create_time、sort_order + */ + private String sortField = "create_time"; + + /** + * 排序方式:asc、desc + */ + private String sortOrder = "desc"; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtNewsAdminBo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtNewsAdminBo.java new file mode 100644 index 0000000..ae68984 --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtNewsAdminBo.java @@ -0,0 +1,78 @@ +package org.leocoder.heritage.domain.model.bo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import jakarta.validation.constraints.NotBlank; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [新闻资讯管理BO(新增/编辑)] + */ +@Data +public class HrtNewsAdminBo { + + /** + * 主键ID(编辑时必填) + */ + private Long id; + + /** + * 标题 + */ + @NotBlank(message = "标题不能为空") + private String title; + + /** + * 摘要 + */ + private String summary; + + /** + * 内容 + */ + private String content; + + /** + * 封面图 + */ + private String coverImage; + + /** + * 作者 + */ + private String author; + + /** + * 来源 + */ + private String source; + + /** + * 分类:news、activity、notice + */ + private String category; + + /** + * 标签(逗号分隔) + */ + private String tags; + + /** + * 是否置顶:0-否,1-是 + */ + private Integer isTop; + + /** + * 发布时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime publishTime; + + /** + * 发布状态:0-草稿,1-已发布 + */ + private Integer publishStatus; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtNewsAdminQueryBo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtNewsAdminQueryBo.java new file mode 100644 index 0000000..fc808bf --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtNewsAdminQueryBo.java @@ -0,0 +1,87 @@ +package org.leocoder.heritage.domain.model.bo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [新闻资讯管理查询BO] + */ +@Data +public class HrtNewsAdminQueryBo { + + /** + * 页码 + */ + private Integer pageNum = 1; + + /** + * 每页数量 + */ + private Integer pageSize = 10; + + /** + * 标题(模糊查询) + */ + private String title; + + /** + * 作者(模糊查询) + */ + private String author; + + /** + * 来源(模糊查询) + */ + private String source; + + /** + * 分类:news、activity、notice + */ + private String category; + + /** + * 标签(模糊匹配) + */ + private String tag; + + /** + * 关键词(搜索标题、摘要、内容等字段) + */ + private String keyword; + + /** + * 是否置顶:0-否,1-是,null-全部 + */ + private Integer isTop; + + /** + * 发布状态:0-草稿,1-已发布,null-全部 + */ + private Integer publishStatus; + + /** + * 发布开始时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime publishTimeStart; + + /** + * 发布结束时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime publishTimeEnd; + + /** + * 排序字段:view_count、like_count、publish_time、create_time + */ + private String sortField = "create_time"; + + /** + * 排序方式:asc、desc + */ + private String sortOrder = "desc"; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtUserAdminBo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtUserAdminBo.java new file mode 100644 index 0000000..280311b --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtUserAdminBo.java @@ -0,0 +1,87 @@ +package org.leocoder.heritage.domain.model.bo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import jakarta.validation.constraints.Email; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.Pattern; +import lombok.Data; + +import java.time.LocalDate; + +/** + * @author Leocoder + * @description [前台用户管理BO(新增/编辑)] + */ +@Data +public class HrtUserAdminBo { + + /** + * 主键ID(编辑时必填) + */ + private Long id; + + /** + * 用户名(唯一) + */ + @NotBlank(message = "用户名不能为空") + private String username; + + /** + * 密码(新增时必填,编辑时选填) + */ + private String password; + + /** + * 昵称 + */ + private String nickname; + + /** + * 头像URL + */ + private String avatar; + + /** + * 邮箱(唯一) + */ + @Pattern(regexp = "^$|^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}$", message = "邮箱格式不正确") + private String email; + + /** + * 手机号(唯一) + */ + @Pattern(regexp = "^$|^1[3-9]\\d{9}$", message = "手机号格式不正确") + private String phone; + + /** + * 性别:0-未知,1-男,2-女 + */ + private Integer gender; + + /** + * 生日 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd") + private LocalDate birthday; + + /** + * 省份 + */ + private String province; + + /** + * 城市 + */ + private String city; + + /** + * 状态:0-禁用,1-正常 + */ + private Integer status; + + /** + * 备注 + */ + private String remark; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtUserAdminQueryBo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtUserAdminQueryBo.java new file mode 100644 index 0000000..994d47a --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/bo/admin/HrtUserAdminQueryBo.java @@ -0,0 +1,92 @@ +package org.leocoder.heritage.domain.model.bo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [前台用户管理查询BO] + */ +@Data +public class HrtUserAdminQueryBo { + + /** + * 页码 + */ + private Integer pageNum = 1; + + /** + * 每页数量 + */ + private Integer pageSize = 10; + + /** + * 用户名(模糊查询) + */ + private String username; + + /** + * 昵称(模糊查询) + */ + private String nickname; + + /** + * 手机号(精确查询) + */ + private String phone; + + /** + * 邮箱(精确查询) + */ + private String email; + + /** + * 关键词(搜索用户名、昵称、手机号、邮箱等字段) + */ + private String keyword; + + /** + * 状态:0-禁用,1-正常,null-全部 + */ + private Integer status; + + /** + * 性别:0-未知,1-男,2-女,null-全部 + */ + private Integer gender; + + /** + * 省份 + */ + private String province; + + /** + * 城市 + */ + private String city; + + /** + * 注册时间(开始) + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime createTimeBegin; + + /** + * 注册时间(结束) + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime createTimeEnd; + + /** + * 排序字段:create_time、login_time + */ + private String sortField = "create_time"; + + /** + * 排序方式:asc、desc + */ + private String sortOrder = "desc"; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtCommentAdminDetailVo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtCommentAdminDetailVo.java new file mode 100644 index 0000000..81b12cc --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtCommentAdminDetailVo.java @@ -0,0 +1,77 @@ +package org.leocoder.heritage.domain.model.vo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [后台评论详情Vo] + */ +@Data +public class HrtCommentAdminDetailVo { + + // 评论ID + private Long id; + + // 用户ID + private Long userId; + + // 用户名 + private String username; + + // 用户昵称 + private String nickname; + + // 用户头像 + private String avatar; + + // 用户手机号 + private String phone; + + // 用户邮箱 + private String email; + + // 目标类型:heritage、inheritor、news、event + private String targetType; + + // 目标ID + private Long targetId; + + // 目标标题 + private String targetTitle; + + // 评论内容 + private String content; + + // 评分:1-5星(仅针对非遗项目) + private Integer rating; + + // 父评论ID(0表示一级评论) + private Long parentId; + + // 父评论内容 + private String parentContent; + + // 父评论用户昵称 + private String parentUserNickname; + + // 点赞数 + private Integer likeCount; + + // 状态:0-待审核,1-已通过,2-已拒绝 + private Integer status; + + // 回复数量 + private Integer replyCount; + + // 创建时间 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime createTime; + + // 更新时间 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime updateTime; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtCommentAdminVo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtCommentAdminVo.java new file mode 100644 index 0000000..6e7fbf1 --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtCommentAdminVo.java @@ -0,0 +1,62 @@ +package org.leocoder.heritage.domain.model.vo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [后台评论列表Vo] + */ +@Data +public class HrtCommentAdminVo { + + // 评论ID + private Long id; + + // 用户ID + private Long userId; + + // 用户名 + private String username; + + // 用户昵称 + private String nickname; + + // 用户头像 + private String avatar; + + // 目标类型:heritage、inheritor、news、event + private String targetType; + + // 目标ID + private Long targetId; + + // 目标标题 + private String targetTitle; + + // 评论内容 + private String content; + + // 评分:1-5星(仅针对非遗项目) + private Integer rating; + + // 父评论ID(0表示一级评论) + private Long parentId; + + // 点赞数 + private Integer likeCount; + + // 状态:0-待审核,1-已通过,2-已拒绝 + private Integer status; + + // 创建时间 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime createTime; + + // 更新时间 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime updateTime; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtEventAdminDetailVo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtEventAdminDetailVo.java new file mode 100644 index 0000000..5d617e0 --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtEventAdminDetailVo.java @@ -0,0 +1,116 @@ +package org.leocoder.heritage.domain.model.vo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [活动管理详情VO] + */ +@Data +public class HrtEventAdminDetailVo { + + /** + * 主键ID + */ + private Long id; + + /** + * 活动标题 + */ + private String title; + + /** + * 活动摘要 + */ + private String summary; + + /** + * 活动详情 + */ + private String content; + + /** + * 封面图 + */ + private String coverImage; + + /** + * 活动地点 + */ + private String location; + + /** + * 开始时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime startTime; + + /** + * 结束时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime endTime; + + /** + * 最大参与人数 + */ + private Integer maxParticipants; + + /** + * 当前参与人数 + */ + private Integer currentParticipants; + + /** + * 报名开始时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime registrationStart; + + /** + * 报名结束时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime registrationEnd; + + /** + * 状态:upcoming、ongoing、finished、cancelled + */ + private String status; + + /** + * 浏览量 + */ + private Integer viewCount; + + /** + * 发布状态:0-草稿,1-已发布 + */ + private Integer publishStatus; + + /** + * 创建人 + */ + private String createBy; + + /** + * 创建时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime createTime; + + /** + * 更新人 + */ + private String updateBy; + + /** + * 更新时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime updateTime; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtEventAdminVo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtEventAdminVo.java new file mode 100644 index 0000000..d803adc --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtEventAdminVo.java @@ -0,0 +1,111 @@ +package org.leocoder.heritage.domain.model.vo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [活动管理列表VO] + */ +@Data +public class HrtEventAdminVo { + + /** + * 主键ID + */ + private Long id; + + /** + * 活动标题 + */ + private String title; + + /** + * 活动摘要 + */ + private String summary; + + /** + * 封面图 + */ + private String coverImage; + + /** + * 活动地点 + */ + private String location; + + /** + * 开始时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime startTime; + + /** + * 结束时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime endTime; + + /** + * 最大参与人数 + */ + private Integer maxParticipants; + + /** + * 当前参与人数 + */ + private Integer currentParticipants; + + /** + * 报名开始时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime registrationStart; + + /** + * 报名结束时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime registrationEnd; + + /** + * 状态:upcoming、ongoing、finished、cancelled + */ + private String status; + + /** + * 浏览量 + */ + private Integer viewCount; + + /** + * 发布状态:0-草稿,1-已发布 + */ + private Integer publishStatus; + + /** + * 创建人 + */ + private String createBy; + + /** + * 创建时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime createTime; + + /** + * 更新人 + */ + private String updateBy; + + /** + * 更新时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime updateTime; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtHeritageAdminDetailVo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtHeritageAdminDetailVo.java new file mode 100644 index 0000000..2ff757d --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtHeritageAdminDetailVo.java @@ -0,0 +1,152 @@ +package org.leocoder.heritage.domain.model.vo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [非遗项目管理详情VO] + */ +@Data +public class HrtHeritageAdminDetailVo { + + /** + * 主键ID + */ + private Long id; + + /** + * 项目名称 + */ + private String name; + + /** + * 英文名称 + */ + private String nameEn; + + /** + * 分类:traditional-craft、traditional-art等 + */ + private String category; + + /** + * 级别:world、national、provincial、municipal、county + */ + private String level; + + /** + * 省份 + */ + private String province; + + /** + * 城市 + */ + private String city; + + /** + * 项目介绍 + */ + private String description; + + /** + * 历史渊源 + */ + private String history; + + /** + * 技艺特点 + */ + private String skills; + + /** + * 文化意义 + */ + private String significance; + + /** + * 封面图 + */ + private String coverImage; + + /** + * 图片集合(JSON数组) + */ + private String images; + + /** + * 视频URL + */ + private String videoUrl; + + /** + * 标签(逗号分隔) + */ + private String tags; + + /** + * 状态:active-正常传承,endangered-濒危 + */ + private String status; + + /** + * 浏览量 + */ + private Integer viewCount; + + /** + * 点赞数 + */ + private Integer likeCount; + + /** + * 收藏数 + */ + private Integer favoriteCount; + + /** + * 评论数 + */ + private Integer commentCount; + + /** + * 是否精选:0-否,1-是 + */ + private Integer isFeatured; + + /** + * 排序权重 + */ + private Integer sortOrder; + + /** + * 发布状态:0-草稿,1-已发布 + */ + private Integer publishStatus; + + /** + * 创建人 + */ + private String createBy; + + /** + * 创建时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime createTime; + + /** + * 更新人 + */ + private String updateBy; + + /** + * 更新时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime updateTime; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtHeritageAdminVo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtHeritageAdminVo.java new file mode 100644 index 0000000..e2dac52 --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtHeritageAdminVo.java @@ -0,0 +1,127 @@ +package org.leocoder.heritage.domain.model.vo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [非遗项目管理列表VO] + */ +@Data +public class HrtHeritageAdminVo { + + /** + * 主键ID + */ + private Long id; + + /** + * 项目名称 + */ + private String name; + + /** + * 英文名称 + */ + private String nameEn; + + /** + * 分类:traditional-craft、traditional-art等 + */ + private String category; + + /** + * 级别:world、national、provincial、municipal、county + */ + private String level; + + /** + * 省份 + */ + private String province; + + /** + * 城市 + */ + private String city; + + /** + * 项目介绍(简短摘要) + */ + private String description; + + /** + * 封面图 + */ + private String coverImage; + + /** + * 标签(逗号分隔) + */ + private String tags; + + /** + * 状态:active-正常传承,endangered-濒危 + */ + private String status; + + /** + * 浏览量 + */ + private Integer viewCount; + + /** + * 点赞数 + */ + private Integer likeCount; + + /** + * 收藏数 + */ + private Integer favoriteCount; + + /** + * 评论数 + */ + private Integer commentCount; + + /** + * 是否精选:0-否,1-是 + */ + private Integer isFeatured; + + /** + * 排序权重 + */ + private Integer sortOrder; + + /** + * 发布状态:0-草稿,1-已发布 + */ + private Integer publishStatus; + + /** + * 创建人 + */ + private String createBy; + + /** + * 创建时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime createTime; + + /** + * 更新人 + */ + private String updateBy; + + /** + * 更新时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime updateTime; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtInheritorAdminDetailVo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtInheritorAdminDetailVo.java new file mode 100644 index 0000000..5f7c72c --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtInheritorAdminDetailVo.java @@ -0,0 +1,147 @@ +package org.leocoder.heritage.domain.model.vo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [传承人管理详情VO] + */ +@Data +public class HrtInheritorAdminDetailVo { + + /** + * 主键ID + */ + private Long id; + + /** + * 姓名 + */ + private String name; + + /** + * 英文名 + */ + private String nameEn; + + /** + * 性别:1-男,2-女 + */ + private Integer gender; + + /** + * 出生年份 + */ + private Integer birthYear; + + /** + * 头像 + */ + private String avatar; + + /** + * 关联非遗项目ID + */ + private Long heritageId; + + /** + * 传承项目名称 + */ + private String heritageName; + + /** + * 传承人级别:national、provincial等 + */ + private String level; + + /** + * 省份 + */ + private String province; + + /** + * 城市 + */ + private String city; + + /** + * 个人简介 + */ + private String introduction; + + /** + * 传承故事 + */ + private String story; + + /** + * 主要成就 + */ + private String achievements; + + /** + * 代表作品(JSON数组) + */ + private String works; + + /** + * 图片集合(JSON数组) + */ + private String images; + + /** + * 视频URL + */ + private String videoUrl; + + /** + * 浏览量 + */ + private Integer viewCount; + + /** + * 点赞数 + */ + private Integer likeCount; + + /** + * 是否精选:0-否,1-是 + */ + private Integer isFeatured; + + /** + * 排序权重 + */ + private Integer sortOrder; + + /** + * 发布状态:0-草稿,1-已发布 + */ + private Integer publishStatus; + + /** + * 创建人 + */ + private String createBy; + + /** + * 创建时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime createTime; + + /** + * 更新人 + */ + private String updateBy; + + /** + * 更新时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime updateTime; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtInheritorAdminVo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtInheritorAdminVo.java new file mode 100644 index 0000000..a5b1974 --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtInheritorAdminVo.java @@ -0,0 +1,122 @@ +package org.leocoder.heritage.domain.model.vo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [传承人管理列表VO] + */ +@Data +public class HrtInheritorAdminVo { + + /** + * 主键ID + */ + private Long id; + + /** + * 姓名 + */ + private String name; + + /** + * 英文名 + */ + private String nameEn; + + /** + * 性别:1-男,2-女 + */ + private Integer gender; + + /** + * 出生年份 + */ + private Integer birthYear; + + /** + * 头像 + */ + private String avatar; + + /** + * 关联非遗项目ID + */ + private Long heritageId; + + /** + * 传承项目名称 + */ + private String heritageName; + + /** + * 传承人级别:national、provincial等 + */ + private String level; + + /** + * 省份 + */ + private String province; + + /** + * 城市 + */ + private String city; + + /** + * 个人简介(简短摘要) + */ + private String introduction; + + /** + * 浏览量 + */ + private Integer viewCount; + + /** + * 点赞数 + */ + private Integer likeCount; + + /** + * 是否精选:0-否,1-是 + */ + private Integer isFeatured; + + /** + * 排序权重 + */ + private Integer sortOrder; + + /** + * 发布状态:0-草稿,1-已发布 + */ + private Integer publishStatus; + + /** + * 创建人 + */ + private String createBy; + + /** + * 创建时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime createTime; + + /** + * 更新人 + */ + private String updateBy; + + /** + * 更新时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime updateTime; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtNewsAdminDetailVo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtNewsAdminDetailVo.java new file mode 100644 index 0000000..711c5c8 --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtNewsAdminDetailVo.java @@ -0,0 +1,108 @@ +package org.leocoder.heritage.domain.model.vo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [新闻资讯管理详情VO] + */ +@Data +public class HrtNewsAdminDetailVo { + + /** + * 主键ID + */ + private Long id; + + /** + * 标题 + */ + private String title; + + /** + * 摘要 + */ + private String summary; + + /** + * 内容 + */ + private String content; + + /** + * 封面图 + */ + private String coverImage; + + /** + * 作者 + */ + private String author; + + /** + * 来源 + */ + private String source; + + /** + * 分类:news、activity、notice + */ + private String category; + + /** + * 标签(逗号分隔) + */ + private String tags; + + /** + * 浏览量 + */ + private Integer viewCount; + + /** + * 点赞数 + */ + private Integer likeCount; + + /** + * 是否置顶:0-否,1-是 + */ + private Integer isTop; + + /** + * 发布时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime publishTime; + + /** + * 发布状态:0-草稿,1-已发布 + */ + private Integer publishStatus; + + /** + * 创建人 + */ + private String createBy; + + /** + * 创建时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime createTime; + + /** + * 更新人 + */ + private String updateBy; + + /** + * 更新时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime updateTime; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtNewsAdminVo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtNewsAdminVo.java new file mode 100644 index 0000000..493518c --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtNewsAdminVo.java @@ -0,0 +1,103 @@ +package org.leocoder.heritage.domain.model.vo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [新闻资讯管理列表VO] + */ +@Data +public class HrtNewsAdminVo { + + /** + * 主键ID + */ + private Long id; + + /** + * 标题 + */ + private String title; + + /** + * 摘要 + */ + private String summary; + + /** + * 封面图 + */ + private String coverImage; + + /** + * 作者 + */ + private String author; + + /** + * 来源 + */ + private String source; + + /** + * 分类:news、activity、notice + */ + private String category; + + /** + * 标签(逗号分隔) + */ + private String tags; + + /** + * 浏览量 + */ + private Integer viewCount; + + /** + * 点赞数 + */ + private Integer likeCount; + + /** + * 是否置顶:0-否,1-是 + */ + private Integer isTop; + + /** + * 发布时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime publishTime; + + /** + * 发布状态:0-草稿,1-已发布 + */ + private Integer publishStatus; + + /** + * 创建人 + */ + private String createBy; + + /** + * 创建时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime createTime; + + /** + * 更新人 + */ + private String updateBy; + + /** + * 更新时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime updateTime; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtRankingVo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtRankingVo.java new file mode 100644 index 0000000..fcf8d4e --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtRankingVo.java @@ -0,0 +1,33 @@ +package org.leocoder.heritage.domain.model.vo.admin; + +import lombok.Data; + +/** + * @author Leocoder + * @description [排行榜数据Vo] + */ +@Data +public class HrtRankingVo { + + // 排名 + private Integer rank; + + // ID + private Long id; + + // 标题/名称 + private String title; + + // 类型(heritage/inheritor/news/event) + private String type; + + // 封面图 + private String coverImage; + + // 数值(浏览量/收藏数等) + private Long value; + + // 数值类型描述(浏览量/收藏数) + private String valueType; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtStatisticsVo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtStatisticsVo.java new file mode 100644 index 0000000..5e2c73d --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtStatisticsVo.java @@ -0,0 +1,79 @@ +package org.leocoder.heritage.domain.model.vo.admin; + +import lombok.Data; + +/** + * @author Leocoder + * @description [非遗平台统计数据Vo] + */ +@Data +public class HrtStatisticsVo { + + // ===== 核心数据统计 ===== + + // 非遗项目总数 + private Long heritageTotal; + + // 今日新增非遗项目数 + private Long heritageTodayCount; + + // 传承人总数 + private Long inheritorTotal; + + // 今日新增传承人数 + private Long inheritorTodayCount; + + // 用户总数 + private Long userTotal; + + // 今日新增用户数 + private Long userTodayCount; + + // 活动总数 + private Long eventTotal; + + // 今日新增活动数 + private Long eventTodayCount; + + // 新闻总数 + private Long newsTotal; + + // 今日新增新闻数 + private Long newsTodayCount; + + // ===== 用户行为统计 ===== + + // 评论总数 + private Long commentTotal; + + // 今日新增评论数 + private Long commentTodayCount; + + // 待审核评论数 + private Long commentPendingCount; + + // 点赞总数 + private Long likeTotal; + + // 今日新增点赞数 + private Long likeTodayCount; + + // 收藏总数 + private Long favoriteTotal; + + // 今日新增收藏数 + private Long favoriteTodayCount; + + // 浏览总数 + private Long viewTotal; + + // 今日浏览数 + private Long viewTodayCount; + + // 活动报名总数 + private Long registrationTotal; + + // 今日活动报名数 + private Long registrationTodayCount; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtTrendVo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtTrendVo.java new file mode 100644 index 0000000..73cd123 --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtTrendVo.java @@ -0,0 +1,18 @@ +package org.leocoder.heritage.domain.model.vo.admin; + +import lombok.Data; + +/** + * @author Leocoder + * @description [趋势数据Vo] + */ +@Data +public class HrtTrendVo { + + // 日期 + private String date; + + // 数值 + private Long value; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtUserAdminDetailVo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtUserAdminDetailVo.java new file mode 100644 index 0000000..f32d884 --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtUserAdminDetailVo.java @@ -0,0 +1,100 @@ +package org.leocoder.heritage.domain.model.vo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDate; +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [前台用户管理详情VO] + */ +@Data +public class HrtUserAdminDetailVo { + + /** + * 主键ID + */ + private Long id; + + /** + * 用户名 + */ + private String username; + + /** + * 昵称 + */ + private String nickname; + + /** + * 头像URL + */ + private String avatar; + + /** + * 邮箱 + */ + private String email; + + /** + * 手机号 + */ + private String phone; + + /** + * 性别:0-未知,1-男,2-女 + */ + private Integer gender; + + /** + * 生日 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd") + private LocalDate birthday; + + /** + * 省份 + */ + private String province; + + /** + * 城市 + */ + private String city; + + /** + * 状态:0-禁用,1-正常 + */ + private Integer status; + + /** + * 最后登录IP + */ + private String loginIp; + + /** + * 最后登录时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime loginTime; + + /** + * 创建时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime createTime; + + /** + * 更新时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime updateTime; + + /** + * 备注 + */ + private String remark; + +} diff --git a/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtUserAdminVo.java b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtUserAdminVo.java new file mode 100644 index 0000000..448a24f --- /dev/null +++ b/heritage-model/src/main/java/org/leocoder/heritage/domain/model/vo/admin/HrtUserAdminVo.java @@ -0,0 +1,100 @@ +package org.leocoder.heritage.domain.model.vo.admin; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDate; +import java.time.LocalDateTime; + +/** + * @author Leocoder + * @description [前台用户管理列表VO] + */ +@Data +public class HrtUserAdminVo { + + /** + * 主键ID + */ + private Long id; + + /** + * 用户名 + */ + private String username; + + /** + * 昵称 + */ + private String nickname; + + /** + * 头像URL + */ + private String avatar; + + /** + * 邮箱 + */ + private String email; + + /** + * 手机号 + */ + private String phone; + + /** + * 性别:0-未知,1-男,2-女 + */ + private Integer gender; + + /** + * 生日 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd") + private LocalDate birthday; + + /** + * 省份 + */ + private String province; + + /** + * 城市 + */ + private String city; + + /** + * 状态:0-禁用,1-正常 + */ + private Integer status; + + /** + * 最后登录IP + */ + private String loginIp; + + /** + * 最后登录时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime loginTime; + + /** + * 创建时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime createTime; + + /** + * 更新时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime updateTime; + + /** + * 备注 + */ + private String remark; + +}