package com.ruoyi.common.core.service.dto;
import lombok.Data;
/**
* 在院患者"当前所在位置"(科室 / 病区 / 床位)——
* {@link com.ruoyi.common.core.service.HisGatherApi} 的契约 DTO。
*
*
数据来源与语义
* 来自来未来 {@code dtcQueryHealthcareRecordList}(就是 south-china 入院采集用的同一个接口),
* 用 {@code healthcareRecordNo} 单查、配 {@code statusList=["FH0109.24"]}(在院)时,
* 返回的是该患者此刻的状态,不是历史分段:
*
* - {@code deptId}/{@code deptName} —— 当前科室;
* - {@code areaId}/{@code areaName} —— 当前病区;
* - {@code bedNumber} —— 当前床位号(实测在院患者恒有值);
* - {@code healthcareRecordStatus} —— 当前诊疗状态({@code FH0109.24}=在院)。
*
* 接口返回 {@code data: []}(空数组)表示该患者当前不在"入院"状态
* (已出院 {@code FH0109.27} / 预出院 / 预入院等),此时调用方应跳过、不动库内位置。
*
* 为什么是契约 DTO
* 采集实现(HTTP 调用)当前仍在 smartor,而 {@code ruoyi-datacollection}
* 不能依赖 smartor,所以类型声明在 common(与 {@link SltdGatherReq} 同一手法)。
* 字段名与接口 JSON、与 smartor 的 {@code ServiceSLTDInhospResDTO} 口径一致。
*
* @author smartor
*/
@Data
public class InhospPositionRecord {
/**
* 诊疗记录号(即 {@code pat_med_inhosp.serialnum})
*/
private String healthcareRecordNo;
/**
* 患者姓名(仅用于日志定位)
*/
private String patientName;
/**
* 当前科室ID —— 对应 {@code pat_med_inhosp.deptcode}
*/
private Long deptId;
/**
* 当前科室名称 —— 对应 {@code pat_med_inhosp.deptname}
*/
private String deptName;
/**
* 当前病区ID —— 对应 {@code pat_med_inhosp.hospitaldistrictcode} 与 {@code hospitaldistrictid}
*/
private Long areaId;
/**
* 当前病区名称 —— 对应 {@code pat_med_inhosp.hospitaldistrictname}
*/
private String areaName;
/**
* 当前床位号 —— 对应 {@code pat_med_inhosp.bed_no};为空表示 HIS 侧当前没有床位
*/
private String bedNumber;
/**
* 当前诊疗状态:{@code FH0109.24}=在院
*/
private String healthcareRecordStatus;
}