From dc36d0b607bbed640bbe11514e437871b1bc3371 Mon Sep 17 00:00:00 2001 From: zhangheng <3226558941@qq.com> Date: Mon, 15 Jul 2024 11:07:17 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=BB=E5=83=8F=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PatientQuestionSubmitResultDTO.java | 3 ++ .../impl/LabelFieldContentServiceImpl.java | 28 +++++++------ .../SignPatientManageRouteServiceImpl.java | 40 +++++++------------ .../vo/labelfieldcontent/LabelField.java | 10 +++++ 4 files changed, 44 insertions(+), 37 deletions(-) diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/dto/patientquestionsubmitresult/PatientQuestionSubmitResultDTO.java b/postdischarge-manage/src/main/java/com/xinelu/manage/dto/patientquestionsubmitresult/PatientQuestionSubmitResultDTO.java index 7d1d5ae4..14a45fcb 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/dto/patientquestionsubmitresult/PatientQuestionSubmitResultDTO.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/dto/patientquestionsubmitresult/PatientQuestionSubmitResultDTO.java @@ -21,6 +21,9 @@ public class PatientQuestionSubmitResultDTO extends PatientQuestionSubmitResult @ApiModelProperty(value = "任务类型,电话外呼:PHONE_OUTBOUND,问卷量表:QUESTIONNAIRE_SCALE,人工随访:ARTIFICIAL_FOLLOW_UP") private String taskType; + @ApiModelProperty(value = "任务节点类型,电话外呼:PHONE_OUTBOUND,问卷量表:QUESTIONNAIRE_SCALE") + private String taskNodeType; + @ApiModelProperty(value = "任务处理人id") private Long routeHandleId; diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/labelfieldcontent/impl/LabelFieldContentServiceImpl.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/labelfieldcontent/impl/LabelFieldContentServiceImpl.java index 98fcf69d..0caf0973 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/labelfieldcontent/impl/LabelFieldContentServiceImpl.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/labelfieldcontent/impl/LabelFieldContentServiceImpl.java @@ -182,7 +182,7 @@ public class LabelFieldContentServiceImpl implements ILabelFieldContentService { List labelFieldInfos = labelFieldInfoMapper.taskPartitionDictIdList(); if (CollectionUtils.isNotEmpty(labelFieldInfos)) { List collect = labelFieldInfos.stream().filter(Objects::nonNull).filter(item -> Objects.nonNull(item.getTaskPartitionDictId())).map(LabelFieldInfo::getTaskPartitionDictId).distinct().collect(Collectors.toList()); - List labelFieldContents = labelFieldContentMapper.selectLabelFieldContentPortraitSn(collect,patientId); + List labelFieldContents = labelFieldContentMapper.selectLabelFieldContentPortraitSn(collect, patientId); if (CollectionUtils.isNotEmpty(labelFieldContents)) { for (LabelFieldInfo fieldInfo : labelFieldInfos) { List collect1 = labelFieldContents.stream().filter(Objects::nonNull).filter(item -> Objects.nonNull(item.getFieldId()) && fieldInfo.getTaskPartitionDictId().equals(item.getFieldId())).map(LabelFieldContent::getPortraitSn).distinct().collect(Collectors.toList()); @@ -278,23 +278,27 @@ public class LabelFieldContentServiceImpl implements ILabelFieldContentService { return AjaxResult.success(); } List PortraitSnVOS = new ArrayList<>(); - try { - for (LabelFieldAndPartitionDict labelFieldAndPartitionDict : labelField.getLabelFieldAndPartitionDictList()) { - if (StringUtils.isBlank(labelFieldAndPartitionDict.getPortraitSnVOList().get(0).getPortraitSn())) { - String portraitSn = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS")); - labelFieldAndPartitionDict.getPortraitSnVOList().forEach(item -> item.setPortraitSn(portraitSn)); - } + List groupingValues = new ArrayList<>(); + for (LabelFieldAndPartitionDict labelFieldAndPartitionDict : labelField.getLabelFieldAndPartitionDictList()) { + if (CollectionUtils.isNotEmpty(labelFieldAndPartitionDict.getPortraitSnVOList())) { PortraitSnVOS.addAll(labelFieldAndPartitionDict.getPortraitSnVOList()); + } + } + if (CollectionUtils.isEmpty(PortraitSnVOS)) { + return AjaxResult.success(); + } + try { + for (PortraitSnVO portraitSnVO : PortraitSnVOS) { + if (StringUtils.isBlank(portraitSnVO.getPortraitSn())) { + portraitSnVO.setPortraitSn(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS"))); + portraitSnVO.getGroupingValues().forEach(item -> item.setPortraitSn(portraitSnVO.getPortraitSn())); + groupingValues.addAll(portraitSnVO.getGroupingValues()); + } TimeUnit.MILLISECONDS.sleep(10); } } catch (InterruptedException e) { throw new RuntimeException(e); } - List groupingValues = new ArrayList<>(); - for (PortraitSnVO portraitSnVO : PortraitSnVOS) { - portraitSnVO.getGroupingValues().forEach(item -> item.setPortraitSn(portraitSnVO.getPortraitSn())); - groupingValues.addAll(portraitSnVO.getGroupingValues()); - } List updateGroupingValues = new ArrayList<>(); List insertGroupingValues = new ArrayList<>(); //传入标签ids diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/signpatientmanageroute/impl/SignPatientManageRouteServiceImpl.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/signpatientmanageroute/impl/SignPatientManageRouteServiceImpl.java index 55d1946c..5de2f0fa 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/signpatientmanageroute/impl/SignPatientManageRouteServiceImpl.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/signpatientmanageroute/impl/SignPatientManageRouteServiceImpl.java @@ -7,13 +7,7 @@ import com.xinelu.common.constant.TaskCreateTypeConstant; import com.xinelu.common.constant.TaskNodeTypeConstants; import com.xinelu.common.constant.TemplateTypeConstants; import com.xinelu.common.core.domain.AjaxResult; -import com.xinelu.common.enums.NodeExecuteStatusEnum; -import com.xinelu.common.enums.PhoneConnectStatusEnum; -import com.xinelu.common.enums.PhoneMessageRemindEnum; -import com.xinelu.common.enums.RouteNodeNameEnum; -import com.xinelu.common.enums.TaskContentEnum; -import com.xinelu.common.enums.TaskCreateTypeEnum; -import com.xinelu.common.enums.TaskNodeTypeEnum; +import com.xinelu.common.enums.*; import com.xinelu.common.exception.ServiceException; import com.xinelu.common.utils.AgeUtil; import com.xinelu.common.utils.SecurityUtils; @@ -63,20 +57,17 @@ import com.xinelu.manage.vo.specialdiseasenode.RouteTaskAuditVo; import com.xinelu.manage.vo.specialdiseasenode.SpecialDiseaseNodeAuditVo; import com.xinelu.manage.vo.specialdiseaseroute.SpecialDiseaseChildRouteAuditVo; import com.xinelu.manage.vo.specialdiseaseroute.SpecialDiseaseRouteAuditVo; -import java.time.LocalDateTime; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Objects; -import java.util.stream.Collectors; -import javax.annotation.Resource; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import javax.annotation.Resource; +import java.time.LocalDateTime; +import java.util.*; +import java.util.stream.Collectors; + /** * 签约患者管理任务路径Service业务层处理 @@ -119,11 +110,7 @@ public class SignPatientManageRouteServiceImpl implements ISignPatientManageRout @Resource private LabelFieldContentMapper labelFieldContentMapper; @Resource - private TextMessageMapper textMessageMapper; - @Resource - private WechatTemplateMapper wechatTemplateMapper; - @Resource - private ISignPatientManageRouteNodeService signPatientManageRouteNodeService; + private ISignPatientManageRouteNodeService signPatientManageRouteNodeService; /** * 查询签约患者管理任务路径 @@ -312,15 +299,15 @@ public class SignPatientManageRouteServiceImpl implements ISignPatientManageRout String routeHandlePerson = dto.getRouteHandlePerson(); LocalDateTime time = LocalDateTime.now(); // 如果任务类型是电话外呼,更新节点任务表,新增患者管理任务执行记录 - if (dto.getTaskType().equals(TaskContentEnum.PHONE_OUTBOUND.getInfo())) { + if (dto.getTaskNodeType().equals(TaskContentEnum.PHONE_OUTBOUND.getInfo())) { // 更新节点任务表 + if (StringUtils.isBlank(dto.getPhoneConnectStatus())) { + dto.setPhoneConnectStatus(PhoneConnectStatusEnum.CONNECTED.getInfo()); + } updateSignPatientManageRouteNode(dto, routeHandlePerson, time); // 新增患者管理任务执行记录 insertPatientTaskExecuteRecord(dto, routeHandlePerson, time); // 发送短信 - if (StringUtils.isBlank(dto.getPhoneConnectStatus())) { - dto.setPhoneConnectStatus(PhoneConnectStatusEnum.CONNECTED.getInfo()); - } if (StringUtils.isNotBlank(dto.getPhoneMessageRemind()) && (PhoneMessageRemindEnum.EVERYONE_SEND_MESSAGE.getInfo().equals(dto.getPhoneMessageRemind()) || (PhoneConnectStatusEnum.CONNECTED.getInfo().equals(dto.getPhoneConnectStatus()) && PhoneMessageRemindEnum.CONNECTED_SEND_MESSAGE.getInfo().equals(dto.getPhoneMessageRemind())) || (PhoneConnectStatusEnum.NOTCONNECTED.getInfo().equals(dto.getPhoneConnectStatus()) && PhoneMessageRemindEnum.NOT_CONNECTED_SEND_MESSAGE.getInfo().equals(dto.getPhoneMessageRemind())))) { iSignPatientManageRouteNodeService.generateTask(dto.getManageRouteNodeId(), dto.getTaskType()); } @@ -662,7 +649,7 @@ public class SignPatientManageRouteServiceImpl implements ISignPatientManageRout private Long insertPatientTaskExecuteRecord(PatientQuestionSubmitResultDTO dto, String routeHandlePerson, LocalDateTime time) { PatientTaskExecuteRecord patientTaskExecuteRecord = new PatientTaskExecuteRecord(); BeanUtils.copyProperties(dto, patientTaskExecuteRecord); - patientTaskExecuteRecord.setTaskContent(dto.getTaskType()); + patientTaskExecuteRecord.setTaskContent(dto.getTaskNodeType()); patientTaskExecuteRecord.setExecuteTime(time); patientTaskExecuteRecord.setExecutePerson(routeHandlePerson); patientTaskExecuteRecord.setExecuteType(TaskCreateTypeConstant.MANUAL_CREATE); @@ -682,6 +669,9 @@ public class SignPatientManageRouteServiceImpl implements ISignPatientManageRout SignPatientManageRouteNode signPatientManageRouteNode = new SignPatientManageRouteNode(); signPatientManageRouteNode.setId(dto.getManageRouteNodeId()); signPatientManageRouteNode.setNodeExecuteStatus(NodeExecuteStatusEnum.EXECUTED.toString()); + if (dto.getTaskNodeType().equals(TaskContentEnum.PHONE_OUTBOUND.getInfo())) { + signPatientManageRouteNode.setPhoneConnectStatus(dto.getPhoneConnectStatus()); + } signPatientManageRouteNode.setRouteHandleRemark(dto.getRouteHandleRemark()); signPatientManageRouteNode.setPhoneConnectStatus(dto.getPhoneConnectStatus()); signPatientManageRouteNode.setRouteHandleId(dto.getRouteHandleId()); diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/vo/labelfieldcontent/LabelField.java b/postdischarge-manage/src/main/java/com/xinelu/manage/vo/labelfieldcontent/LabelField.java index 7fd084b3..f0294b8e 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/vo/labelfieldcontent/LabelField.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/vo/labelfieldcontent/LabelField.java @@ -4,10 +4,20 @@ import lombok.Data; import java.util.List; + +/** + * 画像编辑传值反值 + */ @Data public class LabelField { + /** + * 未使用 + */ private List> groupingValues; + /** + * 传值 + */ private List labelFieldAndPartitionDictList; }