package cn.lihu.jh.module.ecg.controller.admin.appointment.vo; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; import java.time.LocalDate; import java.util.*; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; import com.alibaba.excel.annotation.*; import cn.lihu.jh.framework.excel.core.annotations.DictFormat; import cn.lihu.jh.framework.excel.core.convert.DictConvert; @Schema(description = "管理后台 - 预约 Response VO") @Data @ExcelIgnoreUnannotated public class AppointmentRespVO { private Long id; @Schema(description = "预约申请号", example = "2024435") @ExcelProperty("预约申请号") private String applyNo; @Schema(description = "就诊流水号", example = "2024546") @ExcelProperty("就诊流水号") private String episodeId; @Schema(description = "患者来源", example = "2024546") @ExcelProperty("患者来源") private Integer patSrc; @Schema(description = "患者编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "29034") @ExcelProperty("患者编号") private String patId; @Schema(description = "患者姓名", requiredMode = Schema.RequiredMode.REQUIRED, example = "赵六") @ExcelProperty("患者姓名") private String patName; @Schema(description = "患者性别", requiredMode = Schema.RequiredMode.REQUIRED) @ExcelProperty(value = "患者性别", converter = DictConvert.class) @DictFormat("system_user_sex") // TODO 代码优化:建议设置到对应的 DictTypeConstants 枚举类中 private Byte patGender; @Schema(description = "患者生日") @ExcelProperty("患者生日") private LocalDateTime patBirthday; @Schema(description = "患者手机") @ExcelProperty("患者手机") private String patMobile; @Schema(description = "患者电话") @ExcelProperty("患者电话") private String patPhone; @Schema(description = "身份证号", example = "798") @ExcelProperty("身份证号") private String patIdentityId; @Schema(description = "患者地址") @ExcelProperty("患者地址") private String patAddr; @Schema(description = "患者所在科室代码") @ExcelProperty("患者所在科室代码") private String patDeptCode; @Schema(description = "患者所在科室名称") @ExcelProperty("患者所在科室名称") private String patDeptDesc; @Schema(description = "患者所在病区代码") @ExcelProperty("患者所在病区代码") private String patWardCode; @Schema(description = "患者所在病区名称") @ExcelProperty("患者所在病区名称") private String patWardDesc; @Schema(description = "床号") @ExcelProperty("床号") private String patBedNo; @Schema(description = "预约日期", requiredMode = Schema.RequiredMode.REQUIRED) @ExcelProperty("预约日期") private LocalDate bookDate; @Schema(description = "预约时间段", requiredMode = Schema.RequiredMode.REQUIRED) @ExcelProperty("预约时间段") private Integer bookTimeslot; @Schema(description = "预约发生时间", requiredMode = Schema.RequiredMode.REQUIRED) @ExcelProperty("预约发生时间") private LocalDateTime bookTime; @Schema(description = "预约检查类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") @ExcelProperty(value = "预约检查类型", converter = DictConvert.class) private Integer bookCheckType; @Schema(description = "内部预约编号", requiredMode = Schema.RequiredMode.REQUIRED) @ExcelProperty("内部预约编号") private Integer bookSeqNum; @Schema(description = "预约来源:X系统、护士手动预约", requiredMode = Schema.RequiredMode.REQUIRED) @ExcelProperty("预约来源:X系统、护士手动预约") private Integer bookSrc; @Schema(description = "已付款") @ExcelProperty("已付款") private Integer paid; }