Sfoglia il codice sorgente

人员配置实体类同步

penghao 4 giorni fa
parent
commit
5181c4db7d

+ 49 - 1
alien-entity/src/main/java/shop/alien/entity/store/StoreStaffConfig.java

@@ -8,8 +8,10 @@ import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import shop.alien.entity.store.dto.StoreStaffFitnessCourseGroup;
 
 import java.util.Date;
+import java.util.List;
 
 /**
  * @Author: fcw
@@ -37,11 +39,19 @@ public class StoreStaffConfig extends Model<StoreStaffConfig> {
     @TableField("name")
     private String name;
 
+    @ApiModelProperty(value = "背景图片/视频(存储URL逗号分隔)")
+    @TableField("background_url")
+    private String backgroundUrl;
+
     @ApiModelProperty(value = "头像")
     @TableField("staff_image")
     private String staffImage;
 
-    @ApiModelProperty(value = "擅长项目")
+    @ApiModelProperty(value = "擅长标签id(字典表proficient_tag的dict_id逗号分隔)")
+    @TableField("proficient_id")
+    private String proficientId;
+
+    @ApiModelProperty(value = "擅长标签名称(逗号分隔)")
     @TableField("proficient_projects")
     private String proficientProjects;
 
@@ -53,6 +63,10 @@ public class StoreStaffConfig extends Model<StoreStaffConfig> {
     @TableField("personal_introduction")
     private String personalIntroduction;
 
+    @ApiModelProperty(value = "电话")
+    @TableField("phone")
+    private String phone;
+
     @ApiModelProperty(value = "人员状态0-待审核 1-审核通过 2-审核拒绝")
     @TableField("status")
     private String status;
@@ -100,4 +114,38 @@ public class StoreStaffConfig extends Model<StoreStaffConfig> {
     @TableField("top_time")
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private Date topTime;
+
+    @ApiModelProperty(value = "上线状态(0-上线 1-下线)")
+    @TableField("online_status")
+    private Integer onlineStatus;
+
+    @ApiModelProperty(value = "经营板块id(词典表 键为 business_section)")
+    @TableField("business_section")
+    private Integer businessSection;
+
+    // ===== 运动健身业务扩展信息(当 businessSection 对应“运动健身”时生效) =====
+
+    @ApiModelProperty(value = "运动健身-课程信息列表")
+    @TableField(exist = false)
+    private List<StoreStaffFitnessCourse> fitnessCourseList;
+
+    @ApiModelProperty(value = "运动健身-课程分组(前端推荐使用:课程类型下多项目)")
+    @TableField(exist = false)
+    private List<StoreStaffFitnessCourseGroup> fitnessCourseGroupList;
+
+    @ApiModelProperty(value = "运动健身-职业认证列表")
+    @TableField(exist = false)
+    private List<StoreStaffFitnessCertification> fitnessCertificationList;
+
+    @ApiModelProperty(value = "运动健身-荣誉奖项列表")
+    @TableField(exist = false)
+    private List<StoreStaffFitnessCertification> fitnessHonorList;
+
+    @ApiModelProperty(value = "运动健身-从业经历列表")
+    @TableField(exist = false)
+    private List<StoreStaffFitnessExperience> fitnessExperienceList;
+
+    @ApiModelProperty(value = "运动健身-基本信息")
+    @TableField(exist = false)
+    private StoreStaffFitnessBase fitnessBase;
 }

+ 83 - 0
alien-entity/src/main/java/shop/alien/entity/store/StoreStaffFitnessCourse.java

@@ -0,0 +1,83 @@
+package shop.alien.entity.store;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 运动健身员工课程信息表
+ *
+ * @author system
+ * @since 2025-01-XX
+ */
+@Data
+@JsonInclude
+@TableName("store_staff_fitness_course")
+@ApiModel(value = "StoreStaffFitnessCourse对象", description = "运动健身员工课程信息表")
+public class StoreStaffFitnessCourse implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "主键")
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    @ApiModelProperty(value = "员工id")
+    @TableField("staff_id")
+    private Integer staffId;
+
+    @ApiModelProperty(value = "课程类型")
+    @TableField("course_type")
+    private String courseType;
+
+    @ApiModelProperty(value = "项目名称")
+    @TableField("course_name")
+    private String courseName;
+
+    @ApiModelProperty(value = "价格类型(0-固定价 1-价格区间)")
+    @TableField("course_price_type")
+    private Integer coursePriceType;
+
+    @ApiModelProperty(value = "课程价格")
+    @TableField("course_price")
+    private BigDecimal coursePrice;
+
+    @ApiModelProperty(value = "课程最低价格")
+    @TableField("course_min_price")
+    private BigDecimal courseMinPrice;
+
+    @ApiModelProperty(value = "课程最高价格")
+    @TableField("course_max_price")
+    private BigDecimal courseMaxPrice;
+
+    @ApiModelProperty(value = "删除状态")
+    @TableField("delete_flag")
+    @TableLogic
+    private Integer deleteFlag;
+
+    @ApiModelProperty(value = "创建时间")
+    @TableField(value = "created_time", fill = FieldFill.INSERT)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date createdTime;
+
+    @ApiModelProperty(value = "更新时间")
+    @TableField(value = "updated_time", fill = FieldFill.UPDATE)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date updatedTime;
+
+    @ApiModelProperty(value = "创建人ID")
+    @TableField("created_user_id")
+    private Integer createdUserId;
+
+    @ApiModelProperty(value = "修改人ID")
+    @TableField("updated_user_id")
+    private Integer updatedUserId;
+}
+

+ 38 - 0
alien-entity/src/main/java/shop/alien/entity/store/dto/StoreStaffConfigListQueryDto.java

@@ -0,0 +1,38 @@
+package shop.alien.entity.store.dto;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * 商家端-员工列表查询 DTO(QueryString 绑定)
+ */
+@Data
+@JsonInclude
+@ApiModel(value = "StoreStaffConfigListQueryDto对象", description = "商家端-员工列表查询DTO")
+public class StoreStaffConfigListQueryDto {
+
+    @ApiModelProperty(value = "店铺ID")
+    private Integer storeId;
+
+    @ApiModelProperty(value = "分页页数", example = "1")
+    private Integer page;
+
+    @ApiModelProperty(value = "分页条数", example = "10")
+    private Integer size;
+
+    @ApiModelProperty(value = "员工状态(0-待审核 1-审核通过 2-审核拒绝)", example = "1")
+    private String status;
+
+    @ApiModelProperty(value = "经营板块id(词典表 键为 business_section)")
+    private Integer businessSection;
+
+    @ApiModelProperty(value = "上线状态(0-上线 1-下线)")
+    private Integer onlineStatus;
+
+    @ApiModelProperty(value = "职位")
+    private String staffPosition;
+}
+
+

+ 36 - 0
alien-entity/src/main/java/shop/alien/entity/store/dto/StoreStaffFitnessCourseGroup.java

@@ -0,0 +1,36 @@
+package shop.alien.entity.store.dto;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * 运动健身-课程类型分组(用于前端“课程类型下多项目”的绑定;不直接映射数据库表)
+ */
+@Data
+@JsonInclude
+@ApiModel(value = "StoreStaffFitnessCourseGroup对象", description = "运动健身-课程类型分组(分组结构用)")
+public class StoreStaffFitnessCourseGroup implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 课程类型编码:
+     * - 推荐传字典 dictId(更稳定)
+     * - 兼容传字典 dictDetail(名称)
+     */
+    @ApiModelProperty(value = "课程类型(推荐 dictId;兼容 dictDetail)")
+    private String courseType;
+
+    @ApiModelProperty(value = "课程类型名称(可选,便于回填展示)")
+    private String courseTypeName;
+
+    @ApiModelProperty(value = "项目列表")
+    private List<StoreStaffFitnessCourseItem> items;
+}
+
+

+ 37 - 0
alien-entity/src/main/java/shop/alien/entity/store/dto/StoreStaffFitnessCourseItem.java

@@ -0,0 +1,37 @@
+package shop.alien.entity.store.dto;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+/**
+ * 运动健身-课程项目(用于前端分组绑定;不直接映射数据库表)
+ */
+@Data
+@JsonInclude
+@ApiModel(value = "StoreStaffFitnessCourseItem对象", description = "运动健身-课程项目(分组结构用)")
+public class StoreStaffFitnessCourseItem implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "项目名称")
+    private String courseName;
+
+    @ApiModelProperty(value = "价格类型(0-固定价 1-价格区间)")
+    private Integer coursePriceType;
+
+    @ApiModelProperty(value = "固定价(coursePriceType=0)")
+    private BigDecimal coursePrice;
+
+    @ApiModelProperty(value = "最低价(coursePriceType=1)")
+    private BigDecimal courseMinPrice;
+
+    @ApiModelProperty(value = "最高价(coursePriceType=1)")
+    private BigDecimal courseMaxPrice;
+}
+
+