package com.smartor.service;
import com.ruoyi.outpatientvisit.domain.PatMedOuthosp;
import java.util.Collection;
import java.util.Set;
/**
* 患者门诊记录 Service —— 过渡接口(正在收口)。
*
*
⚠️ 本接口的大部分方法已不在本模块实现
* 门急诊随访模块化(O2~O4)已把门诊记录的服务端能力整体迁入
* {@code ruoyi-outpatientvisit}:
*
* - 基础读写/统计/分表路由 → 该模块的 {@code OuthospDataService};
* - 随访编排(扫全量)→ 该模块的 {@code OuthospVisitTaskService}。
*
* 本接口保留是为了让既有调用方零改动(10 个文件,跨 smartor / ruoyi-admin / ruoyi-quartz),
* 由委托实现把已迁方法转发到模块门面 ——
* 与宣教单跨模块收口({@code ServiceSubtaskPreachformMapperBridge})同一手法。
*
* 本接口刻意只保留「调用方实际用到的 5 个方法」
* 原接口有 14 个方法,但实测只有以下 5 个被外部调用:
*
* insertPatMedOuthosp(...) HNGatherPatArchive、CollectHIS、ServiceExternal、ServiceSLTD…
* updatePatMedOuthosp(...) CollectHIS、ServiceExternal、ServiceSubtask…
* selectExistingSerialnums(...) ServiceSLTD…
* dealPatMedOuthosp(...) ServiceExternal
*
* 其余({@code selectById} / {@code selectList} / {@code selectCount} / {@code getDeptCodeByPatId}
* / {@code delete*} / {@code boxedServiceSubtask} / {@code followUp*})无外部调用方,
* 故不在此声明。
*
* 将来动作
* 调用方逐个改为直接依赖模块门面后,本接口与委托实现即可整体删除。
* 新代码请直接用 {@code ruoyi-outpatientvisit} 的
* {@code OuthospDataFacade} / {@code OuthospDataService}。
*
* @deprecated 用 {@code com.ruoyi.outpatientvisit.api.OuthospDataFacade} 代替。
* 保留仅为兼容既有调用方,新代码不要使用。
*/
@Deprecated
public interface IPatMedOuthospService {
/**
* 新增门诊记录(按就诊时间路由到分表)。
*/
public int insertPatMedOuthosp(PatMedOuthosp patMedOuthosp);
/**
* 修改门诊记录(查不到则转新增)。
*/
public int updatePatMedOuthosp(PatMedOuthosp patMedOuthosp);
/**
* 批量查已入库的 serialnum(按就诊日期定位分表,一次 IN 查询)。
*/
public Set selectExistingSerialnums(String admitDateStr, Collection serialnums);
/**
* 单患者按需随访(景宁站点特殊逻辑 → 首次随访或再次随访)。
*
* ⚠️ 本次【未】迁移,仍由 smartor 原生实现:它依赖 {@code serviceSubtaskMapper}
* 与 {@code followUpByPatMedOuthosp} / {@code followUpAgainByPatMedOuthosp} 两个私有方法,
* 属另一条链路("按需"而非"扫全量")。随该链路一起收口。
*/
public Integer dealPatMedOuthosp(PatMedOuthosp patMedOuthosp, Integer visitTimeNum);
}