package cn.lihu.jh.module.ecg.controller.admin.devrent.vo; import cn.lihu.jh.module.ecg.dal.dataobject.patient.PatDetails; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; import java.util.*; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDate; import java.time.LocalDateTime; import com.alibaba.excel.annotation.*; @Schema(description = "管理后台 - 装机拆机 Response VO") @Data @ExcelIgnoreUnannotated public class DevRentRespVO { @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "26525") @ExcelProperty("id") private Long id; @Schema(description = "预约申请号", example = "2024435") @ExcelProperty("预约申请号") private String applyNo; @Schema(description = "就诊流水号", example = "2024546") @ExcelProperty("就诊流水号") private String episodeId; @Schema(description = "设备编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "3986") @ExcelProperty("设备编号") private String devId; @Schema(description = "患者编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "4973") @ExcelProperty("患者编号") private String patId; @Schema(description = "患者名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿") @ExcelProperty("患者名称") private String patName; @Schema(description = "患者详情", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿") @ExcelProperty("患者详情") private PatDetails patDetails; @Schema(description = "检查类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿") @ExcelProperty("检查类型") private Integer checkType; @Schema(description = "装机时间") @ExcelProperty("装机时间") private LocalDateTime rentTime; @Schema(description = "拆机时间") @ExcelProperty("拆机时间") private LocalDateTime returnTime; @Schema(description = "录入时间") @ExcelProperty("录入时间") private LocalDateTime entryTime; @Schema(description = "干扰数") @ExcelProperty("干扰数") private Integer interference; @Schema(description = "基线粗") @ExcelProperty("基线粗") private String baseline; @Schema(description = "脱离") @ExcelProperty("脱离") private String detachment; @Schema(description = "备注", example = "你猜") @ExcelProperty("备注") private String remark; @Schema(description = "状态") @ExcelProperty("状态") private Integer state; @Schema(description = "已付款") @ExcelProperty("已付款") private Integer paid; @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) @ExcelProperty("创建时间") private LocalDateTime createTime; @Schema(description = "分类名") private String category; @Schema(description = "品牌") private String brand; @Schema(description = "型号") private String model; @Schema(description = "设备状态") private Integer devState; // ==================== 需求1:患者信息 18 项 ==================== // 均来自预约单 appointment(dev_rent 表无此列),由 DevRentServiceImpl 按 applyNo 回填。 // 补齐这些字段后,领用/装机/拆机/数据录入/检查记录 5 个界面才能展示完整患者信息。 @Schema(description = "患者性别") private Byte patGender; @Schema(description = "出生日期") private LocalDate patBirthday; @Schema(description = "登记时间") private Date registerDate; @Schema(description = "开单医师") private String doctor; @Schema(description = "开单日期(开单时间)") private Date doctorTime; @Schema(description = "患者来源:1门诊 2急诊 3住院 4体检") private Integer patSrc; @Schema(description = "手机号") private String patMobile; @Schema(description = "电话") private String patPhone; @Schema(description = "病区名称") private String patWardDesc; @Schema(description = "病床号") private String patBedNo; @Schema(description = "就诊卡号(medical_card,库中多为空)") private String medicalCard; @Schema(description = "门诊号(实测部分数据存的是身份证号,非真正卡号)") private String outpatientNo; @Schema(description = "身份证号") private String patIdentityId; /** * 医嘱号(HIS 报文 observationRequest.id.item[root=2.16.156.10011.1.28].extension)。 * 与「申请单号 applyNo」不同:前者是医嘱标识,后者是申请单标识。该节点在规范中非必须项,库中可为空。 */ private String doctorAdviceNo; @Schema(description = "多耐药:0无 1多耐 2多重耐药") private String tolerance; @Schema(description = "是否床边 0=否 1=是", example = "0") private String isBedside; }