package com.ruoyi.inhospvisit.domain.row;
import java.io.Serializable;
/**
* 长期随访任务({@code service_task})的随访侧只读行。
*
*
字段来源(@ b25c3b51)
* 精确等于 {@code boxedServiceSubtask} 与 {@code dealOutHospInfoBySchedule} 对
* {@code serviceTask} 的 getter 访问集合,外加 {@code addOperationSubTask} 用到的几个:
*
* taskid type serviceType templateid templatename libtemplateid sendDay
* preachform preachformDesc orgid campusid updateBy createBy longTask appltype
* leavehospitaldistrictcode leavehospitaldistrictcodes leaveldeptcodes
* icd10codeList opLevelCodes(后 4 个是任务组的过滤维度)
*
*
* ⚠️ 为什么自己拿而不复用 VisitLongTaskDto
* {@code VisitLongTaskDto} 是 {@code VisitTaskCreateApi} 的出参("已发布的任务"),
* 语义是"任务创建域"的东西;而本行是 {@code service_task} 表的读模型,
* 还要承载任务组扫描用的过滤维度({@code leavehospitaldistrictcodes} 等)。
* 两者职责不同,硬合成一个类会让"任务创建模块"将来难以独立演进。
* 代价:字段有部分重叠,由 {@code verify_inhospvisit_equivalence.py} 逐字段覆盖。
*/
public class VisitTaskRow implements Serializable {
private static final long serialVersionUID = 1L;
/** 任务ID(原 taskid) */
private Long taskid;
/** 任务名称 */
private String taskName;
/** 任务类型:"3" = 通知类(决定 visitTime 提前 N 天) */
private String type;
/** 服务类型("2" 出院随访 / "13" 专病随访 / "17" 宣教关怀(入院) …) */
private String serviceType;
/** 问卷模板ID */
private Long templateid;
/** 问卷模板名称 */
private String templatename;
/** 语音模板ID(原字段是 String,用 Long.valueOf 转换) */
private String libtemplateid;
/** 推送/发送日偏移天数(缺省按 1 处理) */
private Long sendDay;
/** 执行方式 */
private String preachform;
/** 执行方式明细 JSON(由 addServiceSubtaskPreachform 解析) */
private String preachformDesc;
/** 机构ID */
private String orgid;
/** 院区ID */
private String campusid;
/** 更新人 */
private String updateBy;
/** 创建人 */
private String createBy;
/** 是否长期任务:1 = 是 */
private Long longTask;
/** 申请类型:"5" = 任务组 */
private String appltype;
// ---------- 任务组(appltype=5)的过滤维度 ----------
/** 任务组:离院科室编码串(逗号分隔) */
private String leavehospitaldistrictcode;
/** 任务组:离院科室编码列表 */
private java.util.List leaveldeptcodes;
/** 任务组:离院病区编码列表 */
private java.util.List leavehospitaldistrictcodes;
/** 任务组:疾病 ICD10 编码列表 */
private java.util.List icd10codeList;
/** 任务组:手术等级编码列表 */
private java.util.List opLevelCodes;
/** 任务组:下一个任务ID(随访超时转再次随访用) */
private Long nexttaskid;
// ==========================================================================
// boxed 组装需要的另外 13 个字段(配合已有的 diagType,正好覆盖
// DtoConversionUtils 拷入但未被显式覆盖的那 18 个)
// ==========================================================================
// 为什么这些"看起来没用"的字段也要带:原 boxedServiceSubtask 第一行用
// DtoConversionUtils.sourceToTarget(serviceTask, ServiceSubtask.class)
// 把 ServiceTask 与 ServiceSubtask 的同名字段整批拷过去,其中 18 个之后
// 再也没被显式 set 覆盖 —— 它们是【隐式】进子任务的。少一个就静默丢值。
// 详见 VisitSubtaskFactory#applyCarriedOverFieldsFromTask 的注释。
/** 删除标记(原 serviceTask.delFlag) */
private String delFlag;
/** 出院时间区间终点(原 serviceTask.endOutHospTime) */
private java.util.Date endOutHospTime;
/** GUID(原 serviceTask.guid) */
private String guid;
/** 是否已上传(原 serviceTask.isupload) */
private Long isupload;
/** 语音模板名称(原 serviceTask.libtemplatename) */
private String libtemplatename;
/** 分页页码(原 serviceTask.pageNum) */
private Integer pageNum;
/** 分页页长(原 serviceTask.pageSize) */
private Integer pageSize;
/** pid(原 serviceTask.pid 是 Integer;目标 ServiceSubtask.pid 是 Long) */
private Integer pid;
/** 发送类型(原 serviceTask.sendType 是 Long;目标 ServiceSubtask.sendType 是 String) */
private Long sendType;
/** 出院时间区间起点(原 serviceTask.startOutHospTime) */
private java.util.Date startOutHospTime;
/** 任务描述(原 serviceTask.taskDesc) */
private String taskDesc;
/** 文本参数(原 serviceTask.textParam) */
private String textParam;
/** 上传时间(原 serviceTask.uploadTime) */
private java.util.Date uploadTime;
// ---------- 补齐的字段 ----------
/** 疾病类型(原 serviceTask.diagType;属 DtoConversionUtils 拷入的 18 个字段之一) */
private String diagType;
public Long getTaskid() {
return taskid;
}
public void setTaskid(Long taskid) {
this.taskid = taskid;
}
public String getTaskName() {
return taskName;
}
public void setTaskName(String taskName) {
this.taskName = taskName;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public String getServiceType() {
return serviceType;
}
public void setServiceType(String serviceType) {
this.serviceType = serviceType;
}
public Long getTemplateid() {
return templateid;
}
public void setTemplateid(Long templateid) {
this.templateid = templateid;
}
public String getTemplatename() {
return templatename;
}
public void setTemplatename(String templatename) {
this.templatename = templatename;
}
public String getLibtemplateid() {
return libtemplateid;
}
public void setLibtemplateid(String libtemplateid) {
this.libtemplateid = libtemplateid;
}
public Long getSendDay() {
return sendDay;
}
public void setSendDay(Long sendDay) {
this.sendDay = sendDay;
}
public String getPreachform() {
return preachform;
}
public void setPreachform(String preachform) {
this.preachform = preachform;
}
public String getPreachformDesc() {
return preachformDesc;
}
public void setPreachformDesc(String preachformDesc) {
this.preachformDesc = preachformDesc;
}
public String getOrgid() {
return orgid;
}
public void setOrgid(String orgid) {
this.orgid = orgid;
}
public String getCampusid() {
return campusid;
}
public void setCampusid(String campusid) {
this.campusid = campusid;
}
public String getUpdateBy() {
return updateBy;
}
public void setUpdateBy(String updateBy) {
this.updateBy = updateBy;
}
public String getCreateBy() {
return createBy;
}
public void setCreateBy(String createBy) {
this.createBy = createBy;
}
public Long getLongTask() {
return longTask;
}
public void setLongTask(Long longTask) {
this.longTask = longTask;
}
public String getAppltype() {
return appltype;
}
public void setAppltype(String appltype) {
this.appltype = appltype;
}
public String getLeavehospitaldistrictcode() {
return leavehospitaldistrictcode;
}
public void setLeavehospitaldistrictcode(String leavehospitaldistrictcode) {
this.leavehospitaldistrictcode = leavehospitaldistrictcode;
}
public java.util.List getLeaveldeptcodes() {
return leaveldeptcodes;
}
public void setLeaveldeptcodes(java.util.List leaveldeptcodes) {
this.leaveldeptcodes = leaveldeptcodes;
}
public java.util.List getLeavehospitaldistrictcodes() {
return leavehospitaldistrictcodes;
}
public void setLeavehospitaldistrictcodes(java.util.List leavehospitaldistrictcodes) {
this.leavehospitaldistrictcodes = leavehospitaldistrictcodes;
}
public java.util.List getIcd10codeList() {
return icd10codeList;
}
public void setIcd10codeList(java.util.List icd10codeList) {
this.icd10codeList = icd10codeList;
}
public java.util.List getOpLevelCodes() {
return opLevelCodes;
}
public void setOpLevelCodes(java.util.List opLevelCodes) {
this.opLevelCodes = opLevelCodes;
}
public Long getNexttaskid() {
return nexttaskid;
}
public void setNexttaskid(Long nexttaskid) {
this.nexttaskid = nexttaskid;
}
// ---------- 上述 13 个承载字段的访问器 ----------
public String getDelFlag() {
return delFlag;
}
public void setDelFlag(String delFlag) {
this.delFlag = delFlag;
}
public java.util.Date getEndOutHospTime() {
return endOutHospTime;
}
public void setEndOutHospTime(java.util.Date endOutHospTime) {
this.endOutHospTime = endOutHospTime;
}
public String getGuid() {
return guid;
}
public void setGuid(String guid) {
this.guid = guid;
}
public Long getIsupload() {
return isupload;
}
public void setIsupload(Long isupload) {
this.isupload = isupload;
}
public String getLibtemplatename() {
return libtemplatename;
}
public void setLibtemplatename(String libtemplatename) {
this.libtemplatename = libtemplatename;
}
public Integer getPageNum() {
return pageNum;
}
public void setPageNum(Integer pageNum) {
this.pageNum = pageNum;
}
public Integer getPageSize() {
return pageSize;
}
public void setPageSize(Integer pageSize) {
this.pageSize = pageSize;
}
public Integer getPid() {
return pid;
}
public void setPid(Integer pid) {
this.pid = pid;
}
public Long getSendType() {
return sendType;
}
public void setSendType(Long sendType) {
this.sendType = sendType;
}
public java.util.Date getStartOutHospTime() {
return startOutHospTime;
}
public void setStartOutHospTime(java.util.Date startOutHospTime) {
this.startOutHospTime = startOutHospTime;
}
public String getTaskDesc() {
return taskDesc;
}
public void setTaskDesc(String taskDesc) {
this.taskDesc = taskDesc;
}
public String getTextParam() {
return textParam;
}
public void setTextParam(String textParam) {
this.textParam = textParam;
}
public java.util.Date getUploadTime() {
return uploadTime;
}
public void setUploadTime(java.util.Date uploadTime) {
this.uploadTime = uploadTime;
}
// ---------- 补齐字段的访问器 ----------
public String getDiagType() {
return diagType;
}
public void setDiagType(String diagType) {
this.diagType = diagType;
}
}