package com.ruoyi.common.core.service.dto; import com.ruoyi.common.core.service.VisitTaskCreateApi; import java.io.Serializable; /** * 出入院随访模块对外返回的「再次随访子任务草稿」。 *

* 用于 {@code RyTask#dealSubtaskDeadline}(随访超时后生成"再次随访"): * 原实现先 {@code selectPatMedInhospList} 按 {@code inhospid} 反查出入院记录、 * 再调 {@code boxedServiceSubtask(...)} 组装子任务,然后由 {@code RyTask} 自己补 * {@code upid / visitCount / visitType / visitDeptCode} 等字段再落库。 *

* 搬迁后出入院记录与组装逻辑都在 {@code ruoyi-inhospvisit} 里, * 所以把"组装结果"以本 DTO 返回给调用方,由调用方继续补自己的字段并落库 * (落库本身走 {@link VisitTaskCreateApi#createSubtask})。 * * @see com.ruoyi.inhospvisit.api.InhospVisitApi#buildAgainVisitDraft(Long, Long, String, Integer) */ public class VisitAgainSubtaskDto implements Serializable { private static final long serialVersionUID = 1L; /** 组装好的子任务草稿;出入院记录查不到时为 {@code null} */ private VisitSubtaskDraft draft; /** * 是否找到了对应的出入院记录。 *

* ⚠️ 原实现在查不到时是 {@code continue} 跳过该条子任务 * ({@code RyTask.java:2061-2066}),调用方必须保持同样的语义。 */ private boolean inhospFound; /** 未找到出入院记录的原因(仅用于日志,不落库) */ private String missReason; public VisitSubtaskDraft getDraft() { return draft; } public void setDraft(VisitSubtaskDraft draft) { this.draft = draft; } public boolean isInhospFound() { return inhospFound; } public void setInhospFound(boolean inhospFound) { this.inhospFound = inhospFound; } public String getMissReason() { return missReason; } public void setMissReason(String missReason) { this.missReason = missReason; } }