yxh
昨天 fce96ef468291fb9a0e6a4d34ab371315e9485d4
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/devrent/DevRentDO.java
@@ -1,11 +1,11 @@
package cn.lihu.jh.module.ecg.dal.dataobject.devrent;
import cn.lihu.jh.module.ecg.dal.dataobject.patient.PatDetails;
import cn.lihu.jh.module.ecg.enums.DevRentStateEnum;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDate;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.lihu.jh.framework.mybatis.core.dataobject.BaseDO;
@@ -15,7 +15,7 @@
 *
 * @author 芋道源码
 */
@TableName("dev_rent")
@TableName(value="dev_rent", autoResultMap = true)
@KeySequence("dev_rent_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@@ -31,22 +31,35 @@
    @TableId
    private Long id;
    /**
     * 设备编号
     * 申请编号
     */
    @TableField(updateStrategy = FieldStrategy.ALWAYS)
    private String devId;
    private String applyNo;
    /**
     * 就诊流水号
     */
    private String episodeId;
    /**
     * 患者编号
     */
    private String patId;
    /**
     * 患者详情
     */
    private String patDetails;
    /**
     * 患者名称
     */
    private String patName;
    /**
     * 患者详情
     */
    @TableField(typeHandler = JacksonTypeHandler.class)
    private PatDetails patDetails;
    /**
     * 检查类型
     */
    private Integer checkType;
    /**
     * 设备编号
     */
    @TableField(updateStrategy = FieldStrategy.ALWAYS)
    private String devId;
    /**
     * 装机时间
     */
@@ -82,4 +95,70 @@
    private Integer state;
    private Integer paid;
    // ==================== 需求1:患者信息 18 项所需的平铺字段 ====================
    // 以下均来自预约单 appointment(dev_rent 表无对应列),由 DevRentServiceImpl
    // 查询后按 applyNo 回查回填。
    //
    // 【重要】必须标记 @TableField(exist = false):
    //   DevRentDO 会用于 updateById / insert,若不加该注解,MyBatis-Plus 会把这些
    //   不存在的列拼进 SQL,导致 "Unknown column" 报错。
    //
    // 之所以平铺而不让前端读 patDetails JSON:
    //   patDetails 是确认预约时写入的快照,可能滞后于 appointment 的最新值;
    //   且前端读 patDetails?.xxx 无 TS 类型提示,容易写错。
    @TableField(exist = false)
    private Byte patGender;
    @TableField(exist = false)
    private LocalDate patBirthday;
    @TableField(exist = false)
    private Date registerDate;
    @TableField(exist = false)
    private String doctor;
    @TableField(exist = false)
    private Date doctorTime;
    @TableField(exist = false)
    private Integer patSrc;
    @TableField(exist = false)
    private String patMobile;
    @TableField(exist = false)
    private String patPhone;
    @TableField(exist = false)
    private String patWardDesc;
    @TableField(exist = false)
    private String patBedNo;
    @TableField(exist = false)
    private String medicalCard;
    @TableField(exist = false)
    private String outpatientNo;
    @TableField(exist = false)
    private String patIdentityId;
    /**
     * 医嘱号(HIS 报文 observationRequest.id.item[root=2.16.156.10011.1.28].extension)。
     * 与「申请单号 applyNo」不同:前者是医嘱标识,后者是申请单标识。该节点在规范中非必须项,库中可为空。
     */
    private String doctorAdviceNo;
    /** 多耐药:0 无 / 1 多耐 / 2 多重耐药 */
    @TableField(exist = false)
    private String tolerance;
    /**
     * 是否床边(0否 1是)—— 需求2,来源 HIS zdy.ISCB
     */
    private String isBedside;
}