package cn.lihu.jh.module.ecg.controller.admin.callingscreen;
|
|
import com.alibaba.excel.annotation.ExcelProperty;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
import lombok.Data;
|
|
import java.time.LocalDate;
|
|
@Schema(description = "叫号屏数据")
|
@Data
|
public class ScreenQueueRespVO {
|
|
@Schema(description = "患者编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "30473")
|
@ExcelProperty("患者编号")
|
private String patId;
|
|
@Schema(description = "患者姓名", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿")
|
@ExcelProperty("患者姓名")
|
private String patName;
|
|
@Schema(description = "患者性别")
|
@ExcelProperty("患者性别")
|
private Byte patGender;
|
|
@Schema(description = "预约日期")
|
@ExcelProperty("预约日期")
|
private LocalDate bookDate;
|
|
@Schema(description = "预约检查类型", example = "1")
|
@ExcelProperty("预约检查类型")
|
private Integer bookCheckType;
|
|
@Schema(description = "排队序号", requiredMode = Schema.RequiredMode.REQUIRED)
|
@ExcelProperty("排队序号")
|
private Integer seqNum;
|
|
/**
|
* 排队号显示前缀({@code check_type.seq_prefix})。
|
*
|
* <p>【号统一(本需求)】排队号改为**按检查项目各自编号**,不同检查项目之间会出现相同数字
|
* (例:动态心电 5 号、动态血压 5 号),屏幕必须靠前缀区分,故由后端随队列数据一并下发。
|
* <p>屏幕设备未登录、拿不到检查项目字典接口,因此不能由前端自行查表。
|
*/
|
@Schema(description = "排队号显示前缀(检查项目配置的 seq_prefix)", example = "A")
|
@ExcelProperty("排队号前缀")
|
private String seqPrefix;
|
|
/** 【已停用】屏幕请显示 seqPrefix + seqNum;本字段仅保留兼容老屏幕页面,后端已不再写入 */
|
@Schema(description = "预约序号(已停用,请用 seqPrefix + seqNum)", requiredMode = Schema.RequiredMode.REQUIRED)
|
@ExcelProperty("预约序号")
|
private Integer bookSeqNum;
|
|
/**
|
* 【重叫(本需求)】该患者**最近一次叫号记录**的 id。
|
*
|
* <p>屏幕靠"数据变化"触发播报:医生点「重叫」只会新增一条叫号记录、不改变队列数据,
|
* 因此把 callId 一并下发 —— 它一变,屏幕就重新播报(大屏绕过"同一患者只播一次"的锁,
|
* 诊间屏对比上次的 callId)。为空表示今天还没有叫号记录,屏幕按老逻辑处理。
|
*/
|
@Schema(description = "最近一次叫号记录id(用于重叫时重新播报)", example = "1234")
|
private Long callId;
|
|
/**
|
* 5:过号 10:排队中 15:已召回 20:候诊准备 30:就诊中 40:就诊完成
|
*/
|
@Schema(description = "排队状态", example = "1")
|
@ExcelProperty("排队状态")
|
private Byte status;
|
|
@Schema(description = "过号标记", requiredMode = Schema.RequiredMode.REQUIRED)
|
@ExcelProperty("过号标记")
|
private Byte passed;
|
|
@Schema(description = "预约过期标记", requiredMode = Schema.RequiredMode.REQUIRED)
|
@ExcelProperty("预约过期标记")
|
private Byte expired;
|
|
@Schema(description = "插队标记", requiredMode = Schema.RequiredMode.REQUIRED)
|
@ExcelProperty("插队标记")
|
private Byte jumpFlag;
|
|
@Schema(description = "诊室编号")
|
@ExcelProperty("诊室编号")
|
private Long roomId;
|
|
@Schema(description = "诊室名称")
|
@ExcelProperty("诊室名称")
|
private String roomName;
|
|
@Schema(description = "诊疗床编号")
|
@ExcelProperty("诊疗床编号")
|
private String bedNo;
|
|
// ==================== 需求1:患者信息 18 项 ====================
|
// 均来自预约单 appointment(queue 表无此列),由 CallingScreenServiceImpl
|
// 调用 QueueService#fillAppointmentInfo 回填后再经 BeanUtils.toBean 映射到这里。
|
// 补齐后大屏/诊间屏才能展示完整患者信息。
|
|
@Schema(description = "就诊流水号")
|
@ExcelProperty("就诊流水号")
|
private String episodeId;
|
|
@Schema(description = "申请编号")
|
@ExcelProperty("申请编号")
|
private String applyNo;
|
|
@Schema(description = "出生日期")
|
@ExcelProperty("出生日期")
|
private java.time.LocalDate patBirthday;
|
|
@Schema(description = "患者电话(手机优先,回退固话)")
|
@ExcelProperty("患者电话")
|
private String patMobile;
|
|
@Schema(description = "病区名称")
|
@ExcelProperty("病区名称")
|
private String patWardDesc;
|
|
@Schema(description = "病床号(注意不是本类的 bedNo,后者是诊疗床/工位号)")
|
@ExcelProperty("病床号")
|
private String patBedNo;
|
|
@Schema(description = "患者来源:1门诊 2急诊 3住院 4体检")
|
@ExcelProperty("患者来源")
|
private Integer patSrc;
|
|
@Schema(description = "开单医师")
|
@ExcelProperty("开单医师")
|
private String doctor;
|
|
@Schema(description = "开单日期")
|
@ExcelProperty("开单日期")
|
private java.util.Date doctorTime;
|
|
@Schema(description = "登记时间")
|
@ExcelProperty("登记时间")
|
private java.util.Date registerDate;
|
|
@Schema(description = "多耐药:0无 1多耐 2多重耐药")
|
@ExcelProperty("多耐药")
|
private String tolerance;
|
|
private String isBedside;
|
|
@Schema(description = "医嘱号(HIS observationRequest.id.item[root=2.16.156.10011.1.28];与申请号 applyNo 不同)")
|
@ExcelProperty("医嘱号")
|
private String doctorAdviceNo;
|
}
|