package cn.lihu.jh.module.ecg.controller.admin.appointment.vo;
|
|
import io.swagger.v3.oas.annotations.media.Schema;
|
import lombok.*;
|
|
// 注意:原为 java.sql.Date(只表示日期),会让 registerDate/doctorTime 丢失时分秒。
|
// 2026-09-30 与 AppointmentSaveReqVO/AppointmentDO 统一为 java.util.Date。
|
import java.util.Date;
|
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")
|
@DictFormat("ecg_check_type")
|
@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 = "已付款 0-未交费 1-已缴费")
|
@DictFormat("ecg_pay_type")
|
@ExcelProperty(value = "付款状态", converter = DictConvert.class)
|
private Integer paid;
|
|
// @TableField(exist = false)
|
@Schema(description = "状态")
|
@DictFormat("ecg_status_type")
|
@ExcelProperty(value = "状态", converter = DictConvert.class)
|
private String status;
|
|
|
/**
|
* 登记时间
|
*/
|
@Schema(description = "登记时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
@ExcelProperty("登记时间")
|
private Date registerDate;
|
|
/**
|
* 耐药性: 是否多耐1代表是,0代表不是
|
*/
|
private String tolerance;
|
|
@Schema(description = "是否床边 0=否 1=是", example = "0")
|
@ExcelProperty("是否床边")
|
private String isBedside;
|
|
/**
|
* 住院号
|
*/
|
private String hospitalNo;
|
|
/**
|
* 医保卡号
|
*/
|
private String medicalCard;
|
|
/**
|
* 门诊号
|
*/
|
private String outpatientNo;
|
|
private LocalDateTime createTime;
|
|
/**
|
* 开单医生
|
*/
|
private String doctor;
|
|
/**
|
* 开单医生编码
|
*/
|
private String doctorCode;
|
|
/**
|
* 开单时间
|
*/
|
@ExcelProperty("开单时间")
|
private Date doctorTime;
|
|
// ==================== HIS 接入补充字段(2026-09-27 随表新增列一起加入) ====================
|
// 注:bookSeqNum 已在上方声明,此处不重复定义
|
|
/**
|
* 优先级 / 加急标记:N=常规,J=加急
|
*/
|
@ExcelProperty("加急标记")
|
private String jjbz;
|
|
/**
|
* 检查方式编码
|
*/
|
private String methodCode;
|
|
/**
|
* 检查部位编码
|
*/
|
private String targetSiteCode;
|
|
/**
|
* 医嘱号(HIS 报文 component2.observationRequest.id.item[root=2.16.156.10011.1.28].extension)。
|
* 与「申请单号 applyNo」不同:前者是医嘱标识,后者是申请单标识。
|
*/
|
private String doctorAdviceNo;
|
|
/**
|
* 检查房间名称
|
*/
|
private String roomName;
|
|
/**
|
* 注意事项
|
*/
|
private String remark;
|
|
}
|