新增任务列表查询接口、修改宣教库统计查询接口。
This commit is contained in:
parent
1a99ff2754
commit
478a003684
@ -0,0 +1,18 @@
|
||||
package com.xinelu.common.enums;
|
||||
|
||||
/**
|
||||
* 节点执行状态枚举类
|
||||
*
|
||||
* @author haown
|
||||
* @date 2024-04-01
|
||||
*/
|
||||
public enum NodeExecuteStatusEnum {
|
||||
/**
|
||||
* 已执行
|
||||
*/
|
||||
EXECUTED,
|
||||
/**
|
||||
* 未执行
|
||||
*/
|
||||
UNEXECUTED
|
||||
}
|
||||
@ -0,0 +1,19 @@
|
||||
package com.xinelu.common.enums;
|
||||
|
||||
/**
|
||||
* 节点审核状态枚举类
|
||||
*
|
||||
* @author haown
|
||||
* @date 2024-04-01
|
||||
*/
|
||||
public enum RouteCheckStatusEnum {
|
||||
/**
|
||||
* 同意
|
||||
*/
|
||||
AGREE,
|
||||
|
||||
/**
|
||||
* 不同意
|
||||
*/
|
||||
DISAGREE
|
||||
}
|
||||
@ -8,7 +8,6 @@ import com.xinelu.common.core.page.TableDataInfo;
|
||||
import com.xinelu.common.enums.BusinessType;
|
||||
import com.xinelu.common.utils.poi.ExcelUtil;
|
||||
import com.xinelu.manage.domain.propagandainfo.PropagandaInfo;
|
||||
import com.xinelu.manage.dto.department.DepartmentDTO;
|
||||
import com.xinelu.manage.dto.propagandainfo.PropagandaInfoDto;
|
||||
import com.xinelu.manage.dto.propagandainfo.PropagandaInfoSaveDto;
|
||||
import com.xinelu.manage.dto.propagandainfo.PropagandaUpdateDto;
|
||||
@ -138,8 +137,8 @@ public class PropagandaInfoController extends BaseController {
|
||||
*/
|
||||
@ApiOperation("查询科室信息列表及包含宣教库数量")
|
||||
@GetMapping("/selectNumByDept")
|
||||
public R<List<DepartmentVO>> selectNumByDept(DepartmentDTO departmentDto) {
|
||||
List<DepartmentVO> list = propagandaInfoService.selectNumByDept(departmentDto);
|
||||
public R<List<DepartmentVO>> selectNumByDept(PropagandaInfoDto propagandaInfoDto) {
|
||||
List<DepartmentVO> list = propagandaInfoService.selectNumByDept(propagandaInfoDto);
|
||||
return R.ok(list);
|
||||
}
|
||||
}
|
||||
|
||||
@ -94,4 +94,6 @@ public class SignPatientManageRouteController extends BaseController {
|
||||
public AjaxResult remove(@PathVariable Long[] ids) {
|
||||
return toAjax(signPatientManageRouteService.deleteSignPatientManageRouteByIds(ids));
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,52 @@
|
||||
package com.xinelu.manage.controller.signpatientmanageroutenode;
|
||||
|
||||
import com.xinelu.common.core.controller.BaseController;
|
||||
import com.xinelu.common.core.domain.R;
|
||||
import com.xinelu.common.core.page.TableDataInfo;
|
||||
import com.xinelu.manage.domain.signpatientmanageroutenode.SignPatientManageRouteNode;
|
||||
import com.xinelu.manage.dto.signpatientmanageroutenode.PatientTaskDto;
|
||||
import com.xinelu.manage.service.signpatientmanageroutenode.ISignPatientManageRouteNodeService;
|
||||
import com.xinelu.manage.vo.signpatientmanageroutenode.PatientTaskVo;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import java.util.List;
|
||||
import javax.annotation.Resource;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* @description: 签约患者管理任务路径节点控制器
|
||||
* @author: haown
|
||||
* @create: 2024-04-02 15:08
|
||||
**/
|
||||
@Api(tags = "签约患者管理任务路径节点控制器")
|
||||
@RestController
|
||||
@RequestMapping("/manage/signnode")
|
||||
public class SignPatientManageRouteNodeController extends BaseController {
|
||||
|
||||
@Resource
|
||||
private ISignPatientManageRouteNodeService signNodeService;
|
||||
|
||||
/**
|
||||
* 根据患者主键查询签约路径及节点
|
||||
*/
|
||||
@ApiOperation("患者任务列表查询")
|
||||
@GetMapping("/tasklist")
|
||||
public TableDataInfo tasklist(PatientTaskDto patientTaskDto) {
|
||||
startPage();
|
||||
List<PatientTaskVo> list = signNodeService.selectPatientTaskList(patientTaskDto);
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据患者主键查询签约路径及节点
|
||||
*/
|
||||
@ApiOperation("根据患者主键查询患者管理路径节点")
|
||||
@GetMapping("/getNodesByPatient/{patientId}")
|
||||
public R<List<SignPatientManageRouteNode>> getNodesByPatient(@PathVariable("patientId") Long patientId) {
|
||||
List<SignPatientManageRouteNode> list = signNodeService.getNodesByPatient(patientId);
|
||||
return R.ok(list);
|
||||
}
|
||||
}
|
||||
@ -205,6 +205,11 @@ public class PatientInfo extends BaseEntity {
|
||||
@Excel(name = "患者来源,微信小程序:WE_CHAT_APPLET,微信公众号:WE_CHAT_OFFICIAL_ACCOUNT,管理端:MANAGE_END")
|
||||
private String patientSource;
|
||||
|
||||
/** 手术名称 */
|
||||
@ApiModelProperty(value = "手术名称")
|
||||
@Excel(name = "手术名称")
|
||||
private String surgicalName;
|
||||
|
||||
/** 删除标识,0:未删除,1:已删除 */
|
||||
private Integer delFlag;
|
||||
|
||||
|
||||
@ -24,6 +24,12 @@ public class PropagandaInfoDto {
|
||||
@ApiModelProperty(value = "所属科室id")
|
||||
private Long departmentId;
|
||||
|
||||
/**
|
||||
* 科室名称
|
||||
*/
|
||||
@ApiModelProperty(value = "科室名称")
|
||||
private String departmentName;
|
||||
|
||||
/** 宣教标题(宣教名称) */
|
||||
@ApiModelProperty(value = "宣教标题")
|
||||
@Excel(name = "宣教标题", readConverterExp = "宣=教名称")
|
||||
|
||||
@ -0,0 +1,56 @@
|
||||
package com.xinelu.manage.dto.signpatientmanageroutenode;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.time.LocalDateTime;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @description: 患者任务查询传输对象
|
||||
* @author: haown
|
||||
* @create: 2024-04-02 17:06
|
||||
**/
|
||||
@ApiModel("患者任务查询传输对象")
|
||||
@Data
|
||||
public class PatientTaskDto {
|
||||
|
||||
/** 就诊时间,格式:yyyy-MM-dd HH:mm:ss */
|
||||
@ApiModelProperty(value = "就诊时间开始,格式:yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDateTime visitDateStart;
|
||||
|
||||
/** 就诊时间,格式:yyyy-MM-dd HH:mm:ss */
|
||||
@ApiModelProperty(value = "就诊时间结束,格式:yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDateTime visitDateEnd;
|
||||
|
||||
/** 所属医院id */
|
||||
@ApiModelProperty(value = "所属医院id")
|
||||
private Long hospitalAgencyId;
|
||||
|
||||
/** 所属院区id */
|
||||
@ApiModelProperty(value = "所属院区id")
|
||||
private Long campusAgencyId;
|
||||
|
||||
/** 所属科室id */
|
||||
@ApiModelProperty(value = "所属科室id")
|
||||
private Long departmentId;
|
||||
|
||||
/** 所属病区id */
|
||||
@ApiModelProperty(value = "所属病区id")
|
||||
private Long wardId;
|
||||
|
||||
/** 节点审核状态,同意:AGREE,不同意:DISAGREE */
|
||||
@ApiModelProperty(value = "节点审核状态,同意:AGREE,不同意:DISAGREE")
|
||||
private String routeCheckStatus;
|
||||
|
||||
/** 主要诊断 */
|
||||
@ApiModelProperty(value = "主要诊断")
|
||||
private String mainDiagnosis;
|
||||
|
||||
/** 患者姓名 */
|
||||
@ApiModelProperty(value = "患者姓名")
|
||||
private String patientName;
|
||||
|
||||
}
|
||||
@ -1,7 +1,6 @@
|
||||
package com.xinelu.manage.mapper.propagandainfo;
|
||||
|
||||
import com.xinelu.manage.domain.propagandainfo.PropagandaInfo;
|
||||
import com.xinelu.manage.dto.department.DepartmentDTO;
|
||||
import com.xinelu.manage.dto.propagandainfo.PropagandaInfoDto;
|
||||
import com.xinelu.manage.vo.department.DepartmentVO;
|
||||
import com.xinelu.manage.vo.propagandainfo.PropagandaMaterialsVo;
|
||||
@ -73,9 +72,9 @@ public interface PropagandaInfoMapper {
|
||||
/**
|
||||
* 查询科室信息列表及包含宣教库数量
|
||||
*
|
||||
* @param departmentDto
|
||||
* @param propagandaInfoDto 宣教库查询传输对象
|
||||
* @return
|
||||
*/
|
||||
List<DepartmentVO> selectNumByDept(DepartmentDTO departmentDto);
|
||||
List<DepartmentVO> selectNumByDept(PropagandaInfoDto propagandaInfoDto);
|
||||
|
||||
}
|
||||
|
||||
@ -1,6 +1,8 @@
|
||||
package com.xinelu.manage.mapper.signpatientmanageroutenode;
|
||||
|
||||
import com.xinelu.manage.domain.signpatientmanageroutenode.SignPatientManageRouteNode;
|
||||
import com.xinelu.manage.dto.signpatientmanageroutenode.PatientTaskDto;
|
||||
import com.xinelu.manage.vo.signpatientmanageroutenode.PatientTaskVo;
|
||||
import java.util.List;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
@ -60,4 +62,11 @@ public interface SignPatientManageRouteNodeMapper {
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteSignPatientManageRouteNodeByIds(Long[] ids);
|
||||
|
||||
/**
|
||||
* 查询患者任务列表
|
||||
* @param patientTaskDto 患者任务列表查询传输对象
|
||||
* @return 患者任务列表
|
||||
*/
|
||||
List<PatientTaskVo> selectPatientTaskList(PatientTaskDto patientTaskDto);
|
||||
}
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
package com.xinelu.manage.service.materialsinfo.impl;
|
||||
|
||||
import com.xinelu.common.exception.ServiceException;
|
||||
import com.xinelu.common.utils.SecurityUtils;
|
||||
import com.xinelu.manage.domain.materialsinfo.MaterialsInfo;
|
||||
import com.xinelu.manage.domain.propagandamaterials.PropagandaMaterials;
|
||||
import com.xinelu.manage.dto.materialsinfo.MaterialsInfoDto;
|
||||
@ -56,6 +57,8 @@ public class MaterialsInfoServiceImpl implements IMaterialsInfoService {
|
||||
*/
|
||||
@Override
|
||||
public int insertMaterialsInfo(MaterialsInfo materialsInfo) {
|
||||
materialsInfo.setDelFlag(0);
|
||||
materialsInfo.setCreateBy(SecurityUtils.getLoginUser().getUser().getNickName());
|
||||
materialsInfo.setCreateTime(LocalDateTime.now());
|
||||
return materialsInfoMapper.insertMaterialsInfo(materialsInfo);
|
||||
}
|
||||
@ -68,6 +71,7 @@ public class MaterialsInfoServiceImpl implements IMaterialsInfoService {
|
||||
*/
|
||||
@Override
|
||||
public int updateMaterialsInfo(MaterialsInfo materialsInfo) {
|
||||
materialsInfo.setUpdateBy(SecurityUtils.getLoginUser().getUser().getNickName());
|
||||
materialsInfo.setUpdateTime(LocalDateTime.now());
|
||||
return materialsInfoMapper.updateMaterialsInfo(materialsInfo);
|
||||
}
|
||||
|
||||
@ -412,11 +412,11 @@ public class PatientVisitRecordServiceImpl implements IPatientVisitRecordService
|
||||
patientVisitRecord.setVisitDate(patientVisitRecord.getDischargeTime());
|
||||
} else if (StringUtils.equals(VisitMethodConstants.BE_IN_HOSPITAL, patientVisitRecord.getVisitMethod())) {
|
||||
// 住院时间,出院时间-入院时间
|
||||
if (patientVisitRecord.getDischargeTime() != null) {
|
||||
if (patientVisitRecord.getAdmissionTime() != null && patientVisitRecord.getDischargeTime() != null) {
|
||||
long daysBetween = ChronoUnit.DAYS.between(patientVisitRecord.getAdmissionTime(), patientVisitRecord.getDischargeTime());
|
||||
patientVisitRecord.setHospitalizationDays((int) daysBetween + 1);
|
||||
}
|
||||
patientVisitRecord.setVisitDate(patientVisitRecord.getAdmissionTime());
|
||||
patientVisitRecord.setVisitDate(patientVisitRecord.getDischargeTime());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package com.xinelu.manage.service.propagandainfo;
|
||||
|
||||
import com.xinelu.manage.domain.propagandainfo.PropagandaInfo;
|
||||
import com.xinelu.manage.dto.department.DepartmentDTO;
|
||||
import com.xinelu.manage.dto.propagandainfo.PropagandaInfoDto;
|
||||
import com.xinelu.manage.dto.propagandainfo.PropagandaInfoSaveDto;
|
||||
import com.xinelu.manage.dto.propagandainfo.PropagandaUpdateDto;
|
||||
@ -83,8 +82,8 @@ public interface IPropagandaInfoService {
|
||||
/**
|
||||
* 查询科室信息列表及包含宣教信息数量
|
||||
*
|
||||
* @param departmentDto
|
||||
* @param propagandaInfoDto 宣教库查询传输对象
|
||||
* @return
|
||||
*/
|
||||
List<DepartmentVO> selectNumByDept(DepartmentDTO departmentDto);
|
||||
List<DepartmentVO> selectNumByDept(PropagandaInfoDto propagandaInfoDto);
|
||||
}
|
||||
|
||||
@ -5,7 +5,6 @@ import com.xinelu.common.utils.bean.BeanUtils;
|
||||
import com.xinelu.manage.domain.materialsinfo.MaterialsInfo;
|
||||
import com.xinelu.manage.domain.propagandainfo.PropagandaInfo;
|
||||
import com.xinelu.manage.domain.propagandamaterials.PropagandaMaterials;
|
||||
import com.xinelu.manage.dto.department.DepartmentDTO;
|
||||
import com.xinelu.manage.dto.propagandainfo.PropagandaInfoDto;
|
||||
import com.xinelu.manage.dto.propagandainfo.PropagandaInfoSaveDto;
|
||||
import com.xinelu.manage.dto.propagandainfo.PropagandaUpdateDto;
|
||||
@ -191,7 +190,7 @@ public class PropagandaInfoServiceImpl implements IPropagandaInfoService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DepartmentVO> selectNumByDept(DepartmentDTO departmentDto) {
|
||||
return propagandaInfoMapper.selectNumByDept(departmentDto);
|
||||
public List<DepartmentVO> selectNumByDept(PropagandaInfoDto propagandaInfoDto) {
|
||||
return propagandaInfoMapper.selectNumByDept(propagandaInfoDto);
|
||||
}
|
||||
}
|
||||
|
||||
@ -3,7 +3,6 @@ package com.xinelu.manage.service.signpatientmanageroute;
|
||||
import com.xinelu.manage.domain.signpatientmanageroute.SignPatientManageRoute;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 签约患者管理任务路径Service接口
|
||||
*
|
||||
@ -58,4 +57,5 @@ public interface ISignPatientManageRouteService {
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteSignPatientManageRouteById(Long id);
|
||||
|
||||
}
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
package com.xinelu.manage.service.signpatientmanageroute.impl;
|
||||
|
||||
import com.xinelu.manage.domain.signpatientmanageroute.SignPatientManageRoute;
|
||||
import com.xinelu.manage.mapper.patientinfo.PatientInfoMapper;
|
||||
import com.xinelu.manage.mapper.signpatientmanageroute.SignPatientManageRouteMapper;
|
||||
import com.xinelu.manage.service.signpatientmanageroute.ISignPatientManageRouteService;
|
||||
import java.time.LocalDateTime;
|
||||
@ -18,6 +19,8 @@ import org.springframework.stereotype.Service;
|
||||
public class SignPatientManageRouteServiceImpl implements ISignPatientManageRouteService {
|
||||
@Resource
|
||||
private SignPatientManageRouteMapper signPatientManageRouteMapper;
|
||||
@Resource
|
||||
private PatientInfoMapper patientInfoMapper;
|
||||
|
||||
/**
|
||||
* 查询签约患者管理任务路径
|
||||
|
||||
@ -1,6 +1,8 @@
|
||||
package com.xinelu.manage.service.signpatientmanageroutenode;
|
||||
|
||||
import com.xinelu.manage.domain.signpatientmanageroutenode.SignPatientManageRouteNode;
|
||||
import com.xinelu.manage.dto.signpatientmanageroutenode.PatientTaskDto;
|
||||
import com.xinelu.manage.vo.signpatientmanageroutenode.PatientTaskVo;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@ -19,6 +21,14 @@ public interface ISignPatientManageRouteNodeService {
|
||||
*/
|
||||
public SignPatientManageRouteNode selectSignPatientManageRouteNodeById(Long id);
|
||||
|
||||
/**
|
||||
* 根据患者主键查询患者管理路径节点
|
||||
*
|
||||
* @param patientId 患者主键
|
||||
* @return 签约患者管理任务路径节点
|
||||
*/
|
||||
List<SignPatientManageRouteNode> getNodesByPatient(Long patientId);
|
||||
|
||||
/**
|
||||
* 查询签约患者管理任务路径节点列表
|
||||
*
|
||||
@ -58,4 +68,11 @@ public interface ISignPatientManageRouteNodeService {
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteSignPatientManageRouteNodeById(Long id);
|
||||
|
||||
/**
|
||||
* 查询患者任务列表
|
||||
* @param patientTaskDto 患者任务列表查询传输对象
|
||||
* @return 患者任务列表
|
||||
*/
|
||||
List<PatientTaskVo> selectPatientTaskList(PatientTaskDto patientTaskDto);
|
||||
}
|
||||
|
||||
@ -1,11 +1,19 @@
|
||||
package com.xinelu.manage.service.signpatientmanageroutenode.impl;
|
||||
|
||||
import com.xinelu.manage.domain.patientinfo.PatientInfo;
|
||||
import com.xinelu.manage.domain.signpatientmanageroute.SignPatientManageRoute;
|
||||
import com.xinelu.manage.domain.signpatientmanageroutenode.SignPatientManageRouteNode;
|
||||
import com.xinelu.manage.dto.signpatientmanageroutenode.PatientTaskDto;
|
||||
import com.xinelu.manage.mapper.patientinfo.PatientInfoMapper;
|
||||
import com.xinelu.manage.mapper.signpatientmanageroute.SignPatientManageRouteMapper;
|
||||
import com.xinelu.manage.mapper.signpatientmanageroutenode.SignPatientManageRouteNodeMapper;
|
||||
import com.xinelu.manage.service.signpatientmanageroutenode.ISignPatientManageRouteNodeService;
|
||||
import com.xinelu.manage.vo.signpatientmanageroutenode.PatientTaskVo;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import javax.annotation.Resource;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
@ -18,6 +26,10 @@ import org.springframework.stereotype.Service;
|
||||
public class SignPatientManageRouteNodeServiceImpl implements ISignPatientManageRouteNodeService {
|
||||
@Resource
|
||||
private SignPatientManageRouteNodeMapper signPatientManageRouteNodeMapper;
|
||||
@Resource
|
||||
private PatientInfoMapper patientInfoMapper;
|
||||
@Resource
|
||||
private SignPatientManageRouteMapper signRouteMapper;
|
||||
|
||||
/**
|
||||
* 查询签约患者管理任务路径节点
|
||||
@ -30,6 +42,24 @@ public class SignPatientManageRouteNodeServiceImpl implements ISignPatientManage
|
||||
return signPatientManageRouteNodeMapper.selectSignPatientManageRouteNodeById(id);
|
||||
}
|
||||
|
||||
@Override public List<SignPatientManageRouteNode> getNodesByPatient(Long patientId) {
|
||||
List<SignPatientManageRouteNode> nodeList = new ArrayList<>();
|
||||
PatientInfo patientInfo = patientInfoMapper.selectPatientInfoById(patientId);
|
||||
if (patientInfo.getSignPatientRecordId() != null) {
|
||||
// 查询签约路径
|
||||
SignPatientManageRoute signPatientManageRoute = new SignPatientManageRoute();
|
||||
signPatientManageRoute.setSignPatientRecordId(patientInfo.getSignPatientRecordId());
|
||||
List<SignPatientManageRoute> signRoutes = signRouteMapper.selectSignPatientManageRouteList(signPatientManageRoute);
|
||||
if (CollectionUtils.isNotEmpty(signRoutes)) {
|
||||
SignPatientManageRoute signRoute = signRoutes.get(0);
|
||||
SignPatientManageRouteNode nddeQuery = new SignPatientManageRouteNode();
|
||||
nddeQuery.setManageRouteId(signRoute.getId());
|
||||
nodeList = signPatientManageRouteNodeMapper.selectSignPatientManageRouteNodeList(nddeQuery);
|
||||
}
|
||||
}
|
||||
return nodeList;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询签约患者管理任务路径节点列表
|
||||
*
|
||||
@ -86,4 +116,8 @@ public class SignPatientManageRouteNodeServiceImpl implements ISignPatientManage
|
||||
public int deleteSignPatientManageRouteNodeById(Long id) {
|
||||
return signPatientManageRouteNodeMapper.deleteSignPatientManageRouteNodeById(id);
|
||||
}
|
||||
|
||||
@Override public List<PatientTaskVo> selectPatientTaskList(PatientTaskDto patientTaskDto) {
|
||||
return signPatientManageRouteNodeMapper.selectPatientTaskList(patientTaskDto);
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,6 +2,8 @@ package com.xinelu.manage.service.signpatientrecord.impl;
|
||||
|
||||
import com.xinelu.common.constant.SignRecordServiceStatusConstants;
|
||||
import com.xinelu.common.constant.TaskCreateTypeConstant;
|
||||
import com.xinelu.common.enums.NodeExecuteStatusEnum;
|
||||
import com.xinelu.common.enums.RouteCheckStatusEnum;
|
||||
import com.xinelu.common.exception.ServiceException;
|
||||
import com.xinelu.common.utils.SecurityUtils;
|
||||
import com.xinelu.common.utils.StringUtils;
|
||||
@ -184,6 +186,10 @@ public class SignPatientRecordServiceImpl implements ISignPatientRecordService {
|
||||
BeanUtils.copyBeanProp(manageRouteNode, node);
|
||||
manageRouteNode.setManageRouteId(body.getRouteId());
|
||||
manageRouteNode.setId(null);
|
||||
manageRouteNode.setRouteCheckStatus(RouteCheckStatusEnum.AGREE.name());
|
||||
manageRouteNode.setRouteCheckDate(LocalDateTime.now());
|
||||
manageRouteNode.setRouteCheckRemark("签约自动审核通过");
|
||||
manageRouteNode.setNodeExecuteStatus(NodeExecuteStatusEnum.UNEXECUTED.name());
|
||||
manageRouteNode.setCreateTime(LocalDateTime.now());
|
||||
manageRouteNode.setCreateBy(SecurityUtils.getLoginUser().getUser().getNickName());
|
||||
return manageRouteNode;
|
||||
|
||||
@ -0,0 +1,211 @@
|
||||
package com.xinelu.manage.vo.signpatientmanageroute;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.time.LocalTime;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @description: 居民管理路径查询返回视图类
|
||||
* @author: haown
|
||||
* @create: 2024-04-02 08:58
|
||||
**/
|
||||
@ApiModel("居民管理路径查询返回视图类")
|
||||
@Data
|
||||
public class SignPatientManageRouteNodeVo {
|
||||
|
||||
/** 签约记录表id */
|
||||
@ApiModelProperty(value = "签约记录表id")
|
||||
private Long signPatientRecordId;
|
||||
|
||||
/** 路径主键 */
|
||||
@ApiModelProperty(value = "路径主键")
|
||||
private Long routeId;
|
||||
|
||||
/** 路径名称(任务名称) */
|
||||
@ApiModelProperty(value = "路径名称")
|
||||
private String routeName;
|
||||
|
||||
/** 管理路径节点名称,出院后:AFTER_DISCHARGE,入院后:AFTER_ADMISSION,就诊后:AFTER_CONSULTATION,就诊/出院后:AFTER_VISIT_DISCHARGE,术前:PREOPERATIVE,术后:POSTOPERATIVE*/
|
||||
@ApiModelProperty(value = "管理路径节点名称,出院后:AFTER_DISCHARGE,入院后:AFTER_ADMISSION,就诊后:AFTER_CONSULTATION,"
|
||||
+ "就诊/出院后:AFTER_VISIT_DISCHARGE,术前:PREOPERATIVE,术后:POSTOPERATIVE")
|
||||
private String routeNodeName;
|
||||
|
||||
/** 管理路径节点时间,时间单位为:天 */
|
||||
@ApiModelProperty(value = "管理路径节点时间,时间单位为:天")
|
||||
private Integer routeNodeDay;
|
||||
|
||||
/** 任务类型,电话外呼:PHONE_OUTBOUND,问卷量表:QUESTIONNAIRE_SCALE,宣教文章:PROPAGANDA_ARTICLE,文字提醒:TEXT_REMIND,人工随访:ARTIFICIAL_FOLLOW_UP */
|
||||
@ApiModelProperty(value = "任务类型,电话外呼:PHONE_OUTBOUND,问卷量表:QUESTIONNAIRE_SCALE,宣教文章:PROPAGANDA_ARTICLE,文字提醒:TEXT_REMIND,人工随访:ARTIFICIAL_FOLLOW_UP")
|
||||
private String taskType;
|
||||
|
||||
/** 任务状态 */
|
||||
@ApiModelProperty(value = "任务状态")
|
||||
private String taskStatus;
|
||||
|
||||
/** 任务细分 */
|
||||
@ApiModelProperty(value = "任务细分")
|
||||
private String taskSubdivision;
|
||||
|
||||
/** 二级分类描述 */
|
||||
@ApiModelProperty(value = "二级分类描述")
|
||||
private String secondClassifyDescribe;
|
||||
|
||||
/** 执行时间,格式:HH:mm */
|
||||
@ApiModelProperty(value = "执行时间,格式:HH:mm")
|
||||
@JsonFormat(pattern = "HH:mm")
|
||||
private LocalTime executeTime;
|
||||
|
||||
/** 电话推送标识,0:未开启,1:已开启 */
|
||||
@ApiModelProperty(value = "电话推送标识,0:未开启,1:已开启")
|
||||
private Integer phonePushSign;
|
||||
|
||||
/** 电话话术表id */
|
||||
@ApiModelProperty(value = "电话话术表id")
|
||||
private Long phoneId;
|
||||
|
||||
/** 电话模板ID */
|
||||
@ApiModelProperty(value = "电话模板ID")
|
||||
private String phoneTemplateId;
|
||||
|
||||
/** 电话模板名称 */
|
||||
@ApiModelProperty(value = "电话模板名称")
|
||||
private String phoneTemplateName;
|
||||
|
||||
/** 电话内容(富文本存放整个节点的信息,包含标签画像的名称以及其它,标签画像名称使用特殊符号进行标记) */
|
||||
@ApiModelProperty(value = "电话内容")
|
||||
private String phoneNodeContent;
|
||||
|
||||
/** 电话重拨次数,重拨一次:REDIAL_ONCE,重拨二次:REDIAL_TWICE,不重播:NOT_REPLAY */
|
||||
@ApiModelProperty(value = "电话重拨次数,重拨一次:REDIAL_ONCE,重拨二次:REDIAL_TWICE,不重播:NOT_REPLAY")
|
||||
private String phoneRedialTimes;
|
||||
|
||||
/** 电话时间间隔,单位为:分钟 */
|
||||
@ApiModelProperty(value = "电话时间间隔,单位为:分钟")
|
||||
private Integer phoneTimeInterval;
|
||||
|
||||
/** 电话短信提醒,不发送短信:NOT_SEND_MESSAGE,未接通发短信:NOT_CONNECTED_SEND_MESSAGE,接通后发短信:CONNECTED_SEND_MESSAGE,所有人发短信:EVERYONE_SEND_MESSAGE */
|
||||
@ApiModelProperty(value = "电话短信提醒,不发送短信:NOT_SEND_MESSAGE,未接通发短信:NOT_CONNECTED_SEND_MESSAGE,接通后发短信:CONNECTED_SEND_MESSAGE,所有人发短信:EVERYONE_SEND_MESSAGE")
|
||||
private String phoneMessageRemind;
|
||||
|
||||
/** 电话短信模板表id */
|
||||
@ApiModelProperty(value = "电话短信模板表id")
|
||||
private Long phoneMessageTemplateId;
|
||||
|
||||
/** 电话短信模板名称 */
|
||||
@ApiModelProperty(value = "电话短信模板名称")
|
||||
private String phoneMessageTemplateName;
|
||||
|
||||
/** 问卷表id */
|
||||
@ApiModelProperty(value = "问卷表id")
|
||||
private Long questionInfoId;
|
||||
|
||||
/** 问卷模板名称 */
|
||||
@ApiModelProperty(value = "问卷模板名称")
|
||||
private String questionnaireName;
|
||||
|
||||
/** 问卷模板内容(富文本存放整个节点的信息,包含标签画像的名称以及其它,标签画像名称使用特殊符号进行标记) */
|
||||
@ApiModelProperty(value = "问卷模板内容")
|
||||
private String questionnaireContent;
|
||||
|
||||
/** 问卷有效期,单位:天 */
|
||||
@ApiModelProperty(value = "问卷有效期,单位:天")
|
||||
private Integer questionExpirationDate;
|
||||
|
||||
/** 宣教文章表id */
|
||||
@ApiModelProperty(value = "宣教文章表id")
|
||||
private Long propagandaInfoId;
|
||||
|
||||
/** 宣教文章模板标题(宣教模板名称) */
|
||||
@ApiModelProperty(value = "宣教文章模板标题")
|
||||
private String propagandaTitle;
|
||||
|
||||
/** 宣教文章内容(富文本存放整个节点的信息,包含标签画像的名称以及其它,标签画像名称使用特殊符号进行标记) */
|
||||
@ApiModelProperty(value = "宣教文章内容")
|
||||
private String propagandaContent;
|
||||
|
||||
/** 短信推送标识,0:未开启,1:已开启 */
|
||||
@ApiModelProperty(value = "短信推送标识,0:未开启,1:已开启")
|
||||
private Integer messagePushSign;
|
||||
|
||||
/** 短信模板表id */
|
||||
@ApiModelProperty(value = "短信模板表id")
|
||||
private Long messageTemplateId;
|
||||
|
||||
/** 短信模板名称 */
|
||||
@ApiModelProperty(value = "短信模板名称")
|
||||
private String messageTemplateName;
|
||||
|
||||
/** 短信预览 */
|
||||
@ApiModelProperty(value = "短信预览")
|
||||
private String messagePreview;
|
||||
|
||||
/** 短信节点内容(富文本存放整个节点的信息,包含标签画像的名称以及其它,标签画像名称使用特殊符号进行标记) */
|
||||
@ApiModelProperty(value = "短信节点内容")
|
||||
private String messageNodeContent;
|
||||
|
||||
/** 公众号推送标识,0:未开启,1:已开启 */
|
||||
@ApiModelProperty(value = "公众号推送标识,0:未开启,1:已开启")
|
||||
private Integer officialPushSign;
|
||||
|
||||
/** 公众号模板表id */
|
||||
@ApiModelProperty(value = "公众号模板表id")
|
||||
private Long officialTemplateId;
|
||||
|
||||
/** 公众号模板名称 */
|
||||
@ApiModelProperty(value = "公众号模板名称")
|
||||
private String officialTemplateName;
|
||||
|
||||
/** 公众号提醒内容 */
|
||||
@ApiModelProperty(value = "公众号提醒内容")
|
||||
private String officialRemindContent;
|
||||
|
||||
/** 公众号节点内容(富文本存放整个节点的信息,包含标签画像的名称以及其它,标签画像名称使用特殊符号进行标记) */
|
||||
@ApiModelProperty(value = "公众号节点内容")
|
||||
private String officialNodeContent;
|
||||
|
||||
/** 小程序推送标识,0:未开启,1:已开启 */
|
||||
@ApiModelProperty(value = "小程序推送标识,0:未开启,1:已开启")
|
||||
private Integer appletPushSign;
|
||||
|
||||
/** 小程序模板表id */
|
||||
@ApiModelProperty(value = "小程序模板表id")
|
||||
private Long appletTemplateId;
|
||||
|
||||
/** 小程序模板名称 */
|
||||
@ApiModelProperty(value = "小程序模板名称")
|
||||
private String appletTemplateName;
|
||||
|
||||
/** 小程序提醒内容 */
|
||||
@ApiModelProperty(value = "小程序提醒内容")
|
||||
private String appletRemindContent;
|
||||
|
||||
/** 小程序提示说明 */
|
||||
@ApiModelProperty(value = "小程序提示说明")
|
||||
private String appletPromptDescription;
|
||||
|
||||
/** 小程序节点内容(富文本存放整个节点的信息,包含标签画像的名称以及其它,标签画像名称使用特殊符号进行标记) */
|
||||
@ApiModelProperty(value = "小程序节点内容")
|
||||
private String appletNodeContent;
|
||||
|
||||
/** 人工随访模板表id */
|
||||
@ApiModelProperty(value = "人工随访模板表id")
|
||||
private Long followTemplateId;
|
||||
|
||||
/** 人工随访模板名称 */
|
||||
@ApiModelProperty(value = "人工随访模板名称")
|
||||
private String followTemplateName;
|
||||
|
||||
/** 人工随访模板内容(富文本存放整个节点的信息,包含标签画像的名称以及其它,标签画像名称使用特殊符号进行标记) */
|
||||
@ApiModelProperty(value = "人工随访模板内容")
|
||||
private String followContent;
|
||||
|
||||
/** 节点审核状态,同意:AGREE,不同意:DISAGREE */
|
||||
@ApiModelProperty(value = "节点审核状态,同意:AGREE,不同意:DISAGREE")
|
||||
private String routeCheckStatus;
|
||||
|
||||
/** 节点任务执行状态,已执行:EXECUTED,未执行:UNEXECUTED */
|
||||
@ApiModelProperty(value = "节点任务执行状态,已执行:EXECUTED,未执行:UNEXECUTED")
|
||||
private String nodeExecuteStatus;
|
||||
}
|
||||
@ -0,0 +1,143 @@
|
||||
package com.xinelu.manage.vo.signpatientmanageroutenode;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.xinelu.common.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @description: 患者任务列表查询返回视图类
|
||||
* @author: haown
|
||||
* @create: 2024-04-02 17:14
|
||||
**/
|
||||
@ApiModel("患者任务列表查询返回视图类")
|
||||
@Data
|
||||
public class PatientTaskVo {
|
||||
|
||||
/** 患者id */
|
||||
private Long patientId;
|
||||
|
||||
/** 居民信息表id */
|
||||
@ApiModelProperty(value = "居民信息表id")
|
||||
private Long residentId;
|
||||
|
||||
/** 患者姓名 */
|
||||
@ApiModelProperty(value = "患者姓名")
|
||||
@Excel(name = "患者姓名")
|
||||
private String patientName;
|
||||
|
||||
/** 患者电话 */
|
||||
@ApiModelProperty(value = "患者电话")
|
||||
@Excel(name = "患者电话")
|
||||
private String patientPhone;
|
||||
|
||||
/** 家属电话 */
|
||||
@ApiModelProperty(value = "家属电话")
|
||||
private String familyMemberPhone;
|
||||
|
||||
/** 出生日期,格式:yyyy-MM-dd */
|
||||
@ApiModelProperty(value = "出生日期,格式:yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate birthDate;
|
||||
|
||||
/** 身份证号 */
|
||||
@ApiModelProperty(value = "身份证号")
|
||||
private String cardNo;
|
||||
|
||||
/** 性别,男:MALE,女:FEMALE */
|
||||
@ApiModelProperty(value = "性别,男:MALE,女:FEMALE")
|
||||
@Excel(name = "性别,男:MALE,女:FEMALE")
|
||||
private String sex;
|
||||
|
||||
/** 住址 */
|
||||
@ApiModelProperty(value = "住址")
|
||||
@Excel(name = "住址")
|
||||
private String address;
|
||||
|
||||
/** 患者类型,预住院患者:PRE_HOSPITALIZED_PATIENT,在院患者:IN_HOSPITAL_PATIENT,门诊患者:OUTPATIENT,出院患者:DISCHARGED_PATIENT,
|
||||
签约患者:CONTRACTED_PATIENT */
|
||||
@ApiModelProperty(value = "患者类型,预住院患者:PRE_HOSPITALIZED_PATIENT,在院患者:IN_HOSPITAL_PATIENT,门诊患者:OUTPATIENT,出院患者:DISCHARGED_PATIENT,签约患者:CONTRACTED_PATIENT")
|
||||
private String patientType;
|
||||
|
||||
/** 主治医生id */
|
||||
@ApiModelProperty(value = "主治医生id")
|
||||
@Excel(name = "主治医生id")
|
||||
private Long attendingPhysicianId;
|
||||
|
||||
/** 主治医生姓名 */
|
||||
@ApiModelProperty(value = "主治医生姓名")
|
||||
@Excel(name = "主治医生姓名")
|
||||
private String attendingPhysicianName;
|
||||
|
||||
/** 主要诊断 */
|
||||
@ApiModelProperty(value = "主要诊断")
|
||||
private String mainDiagnosis;
|
||||
|
||||
/** 所属医院id */
|
||||
@ApiModelProperty(value = "所属医院id")
|
||||
private Long hospitalAgencyId;
|
||||
|
||||
/** 所属医院名称 */
|
||||
@ApiModelProperty(value = "所属医院名称")
|
||||
@Excel(name = "所属医院名称")
|
||||
private String hospitalAgencyName;
|
||||
|
||||
/** 所属院区id */
|
||||
@ApiModelProperty(value = "所属院区id")
|
||||
private Long campusAgencyId;
|
||||
|
||||
/** 所属院区名称 */
|
||||
@ApiModelProperty(value = "所属院区名称")
|
||||
@Excel(name = "所属院区名称")
|
||||
private String campusAgencyName;
|
||||
|
||||
/** 所属科室id */
|
||||
@ApiModelProperty(value = "所属科室id")
|
||||
private Long departmentId;
|
||||
|
||||
/** 所属科室名称 */
|
||||
@ApiModelProperty(value = "所属科室名称")
|
||||
@Excel(name = "所属科室名称")
|
||||
private String departmentName;
|
||||
|
||||
/** 所属病区id */
|
||||
@ApiModelProperty(value = "所属病区id")
|
||||
private Long wardId;
|
||||
|
||||
/** 所属病区名称 */
|
||||
@ApiModelProperty(value = "所属病区名称")
|
||||
@Excel(name = "所属病区名称")
|
||||
private String wardName;
|
||||
|
||||
/** 门诊/住院号 */
|
||||
@ApiModelProperty(value = "门诊/住院号 ")
|
||||
private String inHospitalNumber;
|
||||
|
||||
/** 就诊时间,格式:yyyy-MM-dd HH:mm:ss */
|
||||
@ApiModelProperty(value = "就诊时间,格式:yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDateTime visitDate;
|
||||
|
||||
/** 手术名称 */
|
||||
@ApiModelProperty(value = "手术名称")
|
||||
private String surgicalName;
|
||||
|
||||
/** 签约患者管理任务路径节点id */
|
||||
@ApiModelProperty(value = "签约患者管理任务路径节点id")
|
||||
private Long manageRouteNodeId;
|
||||
|
||||
/** 签约患者管理任务路径id */
|
||||
@ApiModelProperty(value = "签约患者管理任务路径id")
|
||||
private Long manageRouteId;
|
||||
|
||||
/** 签约患者管理任务路径名称 */
|
||||
@ApiModelProperty(value = "签约患者管理任务路径名称")
|
||||
private String manageRouteName;
|
||||
|
||||
/** 节点审核状态,同意:AGREE,不同意:DISAGREE */
|
||||
@ApiModelProperty(value = "节点审核状态,同意:AGREE,不同意:DISAGREE")
|
||||
private String routeCheckStatus;
|
||||
}
|
||||
@ -49,12 +49,13 @@
|
||||
and materials_type = #{materialsType}
|
||||
</if>
|
||||
<if test="createTimeStart != null">
|
||||
and create_time >= #{createTimeStart}
|
||||
and date_format(create_time,'%y%m%d') >= date_format(#{createTimeStart},'%y%m%d')
|
||||
</if>
|
||||
<if test="createTimeEnd != null">
|
||||
and create_time <= #{createTimeEnd}
|
||||
and date_format(create_time,'%y%m%d') <= date_format(#{createTimeEnd},'%y%m%d')
|
||||
</if>
|
||||
</where>
|
||||
order by create_time desc
|
||||
</select>
|
||||
|
||||
<select id="selectMaterialsInfoById" parameterType="Long"
|
||||
|
||||
@ -43,6 +43,7 @@
|
||||
<result property="visitDate" column="visit_date" />
|
||||
<result property="dischargeMethod" column="discharge_method" />
|
||||
<result property="patientSource" column="patient_source" />
|
||||
<result property="surgicalName" column="surgical_name" />
|
||||
<result property="delFlag" column="del_flag" />
|
||||
<result property="createBy" column="create_by" />
|
||||
<result property="createTime" column="create_time" />
|
||||
@ -67,7 +68,7 @@
|
||||
responsible_nurse, patient_visit_record_id, visit_serial_number,
|
||||
admission_time, discharge_time, appointment_treatment_group,
|
||||
registration_no, registration_date, appointment_date, in_hospital_number, visit_date, discharge_method,
|
||||
patient_source, del_flag, create_by, create_time, update_by, update_time
|
||||
patient_source, surgical_name, del_flag, create_by, create_time, update_by, update_time
|
||||
from patient_info
|
||||
</sql>
|
||||
|
||||
@ -148,6 +149,9 @@
|
||||
<if test="patientSource != null and patientSource != ''">
|
||||
and patient_source = #{patientSource}
|
||||
</if>
|
||||
<if test="surgicalName != null and surgicalName != ''">
|
||||
and surgical_name = #{surgicalName}
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
@ -249,6 +253,8 @@
|
||||
</if>
|
||||
<if test="patientSource != null">patient_source,
|
||||
</if>
|
||||
<if test="surgicalName != null">surgical_name,
|
||||
</if>
|
||||
<if test="delFlag != null">del_flag,
|
||||
</if>
|
||||
<if test="createBy != null">create_by,
|
||||
@ -337,6 +343,8 @@
|
||||
</if>
|
||||
<if test="patientSource != null">#{patientSource},
|
||||
</if>
|
||||
<if test="surgicalName != null">#{surgicalName},
|
||||
</if>
|
||||
<if test="delFlag != null">#{delFlag},
|
||||
</if>
|
||||
<if test="createBy != null">#{createBy},
|
||||
@ -465,6 +473,9 @@
|
||||
<if test="patientSource != null">patient_source =
|
||||
#{patientSource},
|
||||
</if>
|
||||
<if test="surgicalName != null">surgical_name =
|
||||
#{surgicalName},
|
||||
</if>
|
||||
<if test="delFlag != null">del_flag =
|
||||
#{delFlag},
|
||||
</if>
|
||||
|
||||
@ -298,6 +298,9 @@
|
||||
<if test="departmentName != null and departmentName != ''">
|
||||
and d.department_name like concat('%', #{departmentName}, '%')
|
||||
</if>
|
||||
<if test="propagandaStatus != null and propagandaStatus != ''">
|
||||
and p.propaganda_status = #{propagandaStatus}
|
||||
</if>
|
||||
</where>
|
||||
GROUP BY d.id
|
||||
order by countNum desc
|
||||
|
||||
@ -93,156 +93,6 @@
|
||||
<if test="taskStatus != null and taskStatus != ''">
|
||||
and task_status = #{taskStatus}
|
||||
</if>
|
||||
<if test="taskSubdivision != null and taskSubdivision != ''">
|
||||
and task_subdivision = #{taskSubdivision}
|
||||
</if>
|
||||
<if test="secondClassifyDescribe != null and secondClassifyDescribe != ''">
|
||||
and second_classify_describe = #{secondClassifyDescribe}
|
||||
</if>
|
||||
<if test="executeTime != null ">
|
||||
and execute_time = #{executeTime}
|
||||
</if>
|
||||
<if test="phonePushSign != null ">
|
||||
and phone_push_sign = #{phonePushSign}
|
||||
</if>
|
||||
<if test="phoneId != null ">
|
||||
and phone_id = #{phoneId}
|
||||
</if>
|
||||
<if test="phoneTemplateId != null and phoneTemplateId != ''">
|
||||
and phone_template_id = #{phoneTemplateId}
|
||||
</if>
|
||||
<if test="phoneTemplateName != null and phoneTemplateName != ''">
|
||||
and phone_template_name like concat('%', #{phoneTemplateName}, '%')
|
||||
</if>
|
||||
<if test="phoneNodeContent != null and phoneNodeContent != ''">
|
||||
and phone_node_content = #{phoneNodeContent}
|
||||
</if>
|
||||
<if test="phoneRedialTimes != null and phoneRedialTimes != ''">
|
||||
and phone_redial_times = #{phoneRedialTimes}
|
||||
</if>
|
||||
<if test="phoneTimeInterval != null ">
|
||||
and phone_time_interval = #{phoneTimeInterval}
|
||||
</if>
|
||||
<if test="phoneMessageRemind != null and phoneMessageRemind != ''">
|
||||
and phone_message_remind = #{phoneMessageRemind}
|
||||
</if>
|
||||
<if test="phoneMessageTemplateId != null ">
|
||||
and phone_message_template_id = #{phoneMessageTemplateId}
|
||||
</if>
|
||||
<if test="phoneMessageTemplateName != null and phoneMessageTemplateName != ''">
|
||||
and phone_message_template_name like concat('%', #{phoneMessageTemplateName}, '%')
|
||||
</if>
|
||||
<if test="questionInfoId != null ">
|
||||
and question_info_id = #{questionInfoId}
|
||||
</if>
|
||||
<if test="questionnaireName != null and questionnaireName != ''">
|
||||
and questionnaire_name like concat('%', #{questionnaireName}, '%')
|
||||
</if>
|
||||
<if test="questionnaireContent != null and questionnaireContent != ''">
|
||||
and questionnaire_content = #{questionnaireContent}
|
||||
</if>
|
||||
<if test="questionExpirationDate != null ">
|
||||
and question_expiration_date = #{questionExpirationDate}
|
||||
</if>
|
||||
<if test="propagandaInfoId != null ">
|
||||
and propaganda_info_id = #{propagandaInfoId}
|
||||
</if>
|
||||
<if test="propagandaTitle != null and propagandaTitle != ''">
|
||||
and propaganda_title = #{propagandaTitle}
|
||||
</if>
|
||||
<if test="propagandaContent != null and propagandaContent != ''">
|
||||
and propaganda_content = #{propagandaContent}
|
||||
</if>
|
||||
<if test="messagePushSign != null ">
|
||||
and message_push_sign = #{messagePushSign}
|
||||
</if>
|
||||
<if test="messageTemplateId != null ">
|
||||
and message_template__id = #{messageTemplateId}
|
||||
</if>
|
||||
<if test="messageTemplateName != null and messageTemplateName != ''">
|
||||
and message_template_name like concat('%', #{messageTemplateName}, '%')
|
||||
</if>
|
||||
<if test="messagePreview != null and messagePreview != ''">
|
||||
and message_preview = #{messagePreview}
|
||||
</if>
|
||||
<if test="messageNodeContent != null and messageNodeContent != ''">
|
||||
and message_node_content = #{messageNodeContent}
|
||||
</if>
|
||||
<if test="officialPushSign != null ">
|
||||
and official_push_sign = #{officialPushSign}
|
||||
</if>
|
||||
<if test="officialTemplateId != null ">
|
||||
and official_template_id = #{officialTemplateId}
|
||||
</if>
|
||||
<if test="officialTemplateName != null and officialTemplateName != ''">
|
||||
and official_template_name like concat('%', #{officialTemplateName}, '%')
|
||||
</if>
|
||||
<if test="officialRemindContent != null and officialRemindContent != ''">
|
||||
and official_remind_content = #{officialRemindContent}
|
||||
</if>
|
||||
<if test="officialNodeContent != null and officialNodeContent != ''">
|
||||
and official_node_content = #{officialNodeContent}
|
||||
</if>
|
||||
<if test="appletPushSign != null ">
|
||||
and applet_push_sign = #{appletPushSign}
|
||||
</if>
|
||||
<if test="appletTemplateId != null ">
|
||||
and applet_template_id = #{appletTemplateId}
|
||||
</if>
|
||||
<if test="appletTemplateName != null and appletTemplateName != ''">
|
||||
and applet_template_name like concat('%', #{appletTemplateName}, '%')
|
||||
</if>
|
||||
<if test="appletRemindContent != null and appletRemindContent != ''">
|
||||
and applet_remind_content = #{appletRemindContent}
|
||||
</if>
|
||||
<if test="appletPromptDescription != null and appletPromptDescription != ''">
|
||||
and applet_prompt_description = #{appletPromptDescription}
|
||||
</if>
|
||||
<if test="appletNodeContent != null and appletNodeContent != ''">
|
||||
and applet_node_content = #{appletNodeContent}
|
||||
</if>
|
||||
<if test="followTemplateId != null ">
|
||||
and follow_template_id = #{followTemplateId}
|
||||
</if>
|
||||
<if test="followTemplateName != null and followTemplateName != ''">
|
||||
and follow_template_name like concat('%', #{followTemplateName}, '%')
|
||||
</if>
|
||||
<if test="followContent != null and followContent != ''">
|
||||
and follow_content = #{followContent}
|
||||
</if>
|
||||
<if test="routeCheckStatus != null and routeCheckStatus != ''">
|
||||
and route_check_status = #{routeCheckStatus}
|
||||
</if>
|
||||
<if test="routeCheckPerson != null and routeCheckPerson != ''">
|
||||
and route_check_person = #{routeCheckPerson}
|
||||
</if>
|
||||
<if test="routeCheckDate != null ">
|
||||
and route_check_date = #{routeCheckDate}
|
||||
</if>
|
||||
<if test="routeCheckRemark != null and routeCheckRemark != ''">
|
||||
and route_check_remark = #{routeCheckRemark}
|
||||
</if>
|
||||
<if test="routeNodeRemark != null and routeNodeRemark != ''">
|
||||
and route_node_remark = #{routeNodeRemark}
|
||||
</if>
|
||||
<if test="nodeExecuteStatus != null and nodeExecuteStatus != ''">
|
||||
and node_execute_status = #{nodeExecuteStatus}
|
||||
</if>
|
||||
<if test="routeHandleRemark != null and routeHandleRemark != ''">
|
||||
and route_handle_remark = #{routeHandleRemark}
|
||||
</if>
|
||||
<if test="routeHandleId != null ">
|
||||
and route_handle_id = #{routeHandleId}
|
||||
</if>
|
||||
<if test="routeHandlePerson != null and routeHandlePerson != ''">
|
||||
and route_handle_person = #{routeHandlePerson}
|
||||
</if>
|
||||
<if test="routeLink != null and routeLink != ''">
|
||||
and route_link = #{routeLink}
|
||||
</if>
|
||||
<if test="textRemindContent != null and textRemindContent != ''">
|
||||
and text_remind_content = #{textRemindContent}
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
@ -716,4 +566,51 @@
|
||||
#{id}
|
||||
</foreach>
|
||||
</delete>
|
||||
|
||||
<select id="selectPatientTaskList" parameterType="com.xinelu.manage.dto.signpatientmanageroutenode.PatientTaskDto" resultType="com.xinelu.manage.vo.signpatientmanageroutenode.PatientTaskVo">
|
||||
select patient.id as patientId, patient.patient_name,
|
||||
patient.patient_phone,
|
||||
patient.family_member_phone,
|
||||
patient.birth_date,
|
||||
patient.card_no,
|
||||
patient.sex,
|
||||
patient.address,
|
||||
patient.patient_type, patient.visit_method, patient.attending_physician_id, patient.attending_physician_name, patient.main_diagnosis,
|
||||
patient.hospital_agency_id, patient.hospital_agency_name, patient.campus_agency_id, patient.campus_agency_name,
|
||||
patient.department_id, patient.department_name,patient.ward_id, patient.ward_name, patient.in_hospital_number, patient.visit_date,
|
||||
patient.surgical_name, node.id as manageRouteNodeId, node.manage_route_id, node.manage_route_name,node.route_check_status
|
||||
from sign_patient_manage_route_node node
|
||||
left join sign_patient_manage_route route on node.manage_route_id = route.id
|
||||
left join patient_info patient on route.patient_id = patient.id
|
||||
<where>
|
||||
<if test="patientName != null and patientName != ''">
|
||||
and patient.patient_name = #{patientName}
|
||||
</if>
|
||||
<if test="mainDiagnosis != null and mainDiagnosis != ''">
|
||||
and patient.main_diagnosis like concat('%', #{mainDiagnosis}, '%')
|
||||
</if>
|
||||
<if test="routeCheckStatus != null ">
|
||||
and node.route_check_status = #{routeCheckStatus}
|
||||
</if>
|
||||
<if test="hospitalAgencyId != null ">
|
||||
and patient.hospital_agency_id = #{hospitalAgencyId}
|
||||
</if>
|
||||
<if test="campusAgencyId != null ">
|
||||
and patient.campus_agency_id = #{campusAgencyId}
|
||||
</if>
|
||||
<if test="departmentId != null ">
|
||||
and patient.department_id = #{departmentId}
|
||||
</if>
|
||||
<if test="wardId != null ">
|
||||
and patient.ward_id = #{wardId}
|
||||
</if>
|
||||
<if test="visitDateStart != null ">
|
||||
and date_format(patient.visit_date,'%y%m%d') >= date_format(#{visitDateStart},'%y%m%d')
|
||||
</if>
|
||||
<if test="visitDateEnd != null ">
|
||||
and date_format(patient.visit_date,'%y%m%d') <= date_format(#{visitDateEnd},'%y%m%d')
|
||||
</if>
|
||||
</where>
|
||||
group by patient_id
|
||||
</select>
|
||||
</mapper>
|
||||
Loading…
Reference in New Issue
Block a user