package com.ruoyi.common.core.service;
import com.ruoyi.common.core.service.dto.VisitArchiveRow;
/**
* 患者档案({@code pat_archive})只读契约。
*
*
为什么需要它
* {@code pat_archive} 是全院共享表,多个随访模块都要读它:
*
* - 出入院随访({@code ruoyi-inhospvisit})—— 组装出院/入院随访子任务;
* - 门急诊随访({@code ruoyi-outpatientvisit})—— 组装门诊随访子任务;
* - 其他随访({@code ruoyi-othervisit})—— 组装手术随访子任务。
*
* 各模块都只读随访组装真正用到的那几列({@link VisitArchiveRow} 的 10 个字段)。
* 若每个模块各写一份只读 Mapper,就会出现"同表多份查询、字段一漂移就静默丢字段"的问题。
*
* ⚠️ 只读,且不含业务判断
* 不提供写入方法 —— 档案的写属档案域。查询条件与原实现逐字一致:
* {@code where id = #{patid} and del_flag = 0}
* (已删除的档案会被判为"查不到",调用方据此走"患者基本信息为空"分支)。
*
* @see VisitArchiveRow
*/
public interface ArchiveReadApi {
/**
* 按患者档案ID查询。
*
* 原实现:{@code PatArchiveMapper.selectPatArchiveByPatid}({@code id = #{id} and del_flag = 0})。
*
* @param patid 患者档案ID
* @return 档案行;不存在(或已删除)返回 {@code null}
*/
VisitArchiveRow findByPatid(Long patid);
}