From 6659135780e718758417efde4c8c351c69e3755b Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期四, 11 十二月 2025 15:52:19 +0800
Subject: [PATCH] 代码提交
---
smartor/src/main/java/com/smartor/service/impl/PatMedOuthospServiceImpl.java | 84 +++++++++++++++++++++++++++---------------
1 files changed, 54 insertions(+), 30 deletions(-)
diff --git a/smartor/src/main/java/com/smartor/service/impl/PatMedOuthospServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PatMedOuthospServiceImpl.java
index c793f11..988b5af 100644
--- a/smartor/src/main/java/com/smartor/service/impl/PatMedOuthospServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/PatMedOuthospServiceImpl.java
@@ -17,6 +17,7 @@
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service;
import com.smartor.service.IPatMedOuthospService;
import org.springframework.util.CollectionUtils;
@@ -46,6 +47,9 @@
private ServiceTaskdiagMapper serviceTaskdiagMapper;
@Autowired
+ private ServiceTaskdeptMapper serviceTaskdeptMapper;
+
+ @Autowired
private PatArchiveMapper patArchiveMapper;
@@ -67,6 +71,7 @@
* @return 鎮h�呴棬璇婅褰�
*/
@Override
+ @Cacheable(value = "selectPatMedOuthospList", key = "T(org.springframework.util.DigestUtils).md5DigestAsHex(#patMedOuthosp.toString().getBytes())", unless = "#result == null or #result.isEmpty()")
public List<PatMedOuthosp> selectPatMedOuthospList(PatMedOuthosp patMedOuthosp) {
List<PatMedOuthosp> patMedOuthosps = patMedOuthospMapper.selectPatMedOuthospList(patMedOuthosp);
for (PatMedOuthosp patMedOuthosp1 : patMedOuthosps) {
@@ -81,6 +86,16 @@
patMedOuthosp1.setTelcode(patArchive.getTelcode());
patMedOuthosp1.setIdcardno(patArchive.getIdcardno());
}
+ ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO();
+ serviceSubtaskVO.setPatid(patMedOuthosp1.getPatid());
+ List<Long> sendstates = new ArrayList<>();
+ sendstates.add(1L);
+ sendstates.add(2L);
+ sendstates.add(3L);
+ serviceSubtaskVO.setSendstates(sendstates);
+ serviceSubtaskVO.setServiceType("3");
+ List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskBySendstate(serviceSubtaskVO);
+ if (!CollectionUtils.isEmpty(serviceSubtaskList)) patMedOuthosp1.setServerState("1");
}
return patMedOuthosps;
}
@@ -221,21 +236,19 @@
for (PatMedOuthosp patMedOuthosp1 : patMedOuthosps) {
PatArchive patArchive = patArchiveMapper.selectPatArchiveByPatid(patMedOuthosp1.getPatid());
- //璇ユ偅鑰呮湁鍙兘鎻愬墠鏉ュ璇婁簡锛岄偅浠栧悗闈㈢殑鏈瀹ょ殑閫氱煡灏卞彲浠ヤ笉鐢ㄥ啀鍙戠煭淇′簡
- ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO();
- if (StringUtils.isNotEmpty(patMedOuthosp1.getDeptcode())) {
- serviceSubtaskVO.setDeptcode(patMedOuthosp1.getDeptcode());
- serviceSubtaskVO.setSfzh(patArchive.getIdcardno());
- serviceSubtaskVO.setType("3");
- serviceSubtaskVO.setSendstate(2L);
- serviceSubtaskVO.setPreachform("4");
- List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
- if (!CollectionUtils.isEmpty(serviceSubtaskList)) {
- for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
- serviceSubtask.setSendstate(6L);
- serviceSubtask.setRemark("宸插洖鏉ュ璇婏紝鏃犻渶鍐嶈繘琛岀煭淇¢�氱煡");
- serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
- }
+ //鏍规嵁鎮h�呯瀹わ紝鑾峰彇璇ョ柧鐥呯殑闀挎湡浠诲姟
+ ServiceTaskdept serviceTaskdept = new ServiceTaskdept();
+ serviceTaskdept.setLongtask(1L);
+ serviceTaskdept.setDeptCode(patMedOuthosp1.getDeptcode());
+ serviceTaskdept.setServiceType("3");
+ List<ServiceTaskdept> serviceTaskdeptList = serviceTaskdeptMapper.selectServiceTaskdeptList(serviceTaskdept);
+ if (org.apache.commons.collections4.CollectionUtils.isEmpty(serviceTaskdeptList) || serviceTaskdeptList.size() == 0) {
+ patMedOuthosp1.setDeptcheckFlag("2");
+ patMedOuthosp1.setRemark("閫氳繃閮ㄩ棬,娌℃湁鎵惧埌闂ㄨ瘖闅忚浠诲姟ID");
+ patMedOuthospMapper.updatePatMedOuthosp(patMedOuthosp1);
+ } else {
+ for (ServiceTaskdept serviceTaskdept1 : serviceTaskdeptList) {
+ writeInSubTask(serviceTaskdept1.getTaskId(), true, patMedOuthosp1, patArchive, 1);
}
}
@@ -247,11 +260,11 @@
//濡傛灉閮ㄩ棬妯℃澘涓虹┖锛堝皢deptIsNull璁剧疆涓簍rue锛�
if (org.apache.commons.collections4.CollectionUtils.isEmpty(serviceTaskdiags) || serviceTaskdiags.size() == 0) {
patMedOuthosp1.setDiagcheckFlag("2");
- patMedOuthosp1.setRemark("閫氳繃icd10,娌℃湁鎵惧埌闅忚浠诲姟ID");
+ patMedOuthosp1.setRemark("閫氳繃icd10,娌℃湁鎵惧埌闂ㄨ瘖闅忚浠诲姟ID");
patMedOuthospMapper.updatePatMedOuthosp(patMedOuthosp1);
} else {
for (ServiceTaskdiag serviceTaskdept1 : serviceTaskdiags) {
- writeInSubTask(serviceTaskdept1.getTaskId(), true, patMedOuthosp1, patArchive);
+ writeInSubTask(serviceTaskdept1.getTaskId(), true, patMedOuthosp1, patArchive, 2);
}
}
@@ -259,16 +272,24 @@
return 1;
}
- private void writeInSubTask(Long taskid, Boolean check, PatMedOuthosp patMedOuthosp, PatArchive patArchive) {
+ /**
+ * @param taskid
+ * @param check
+ * @param patMedOuthosp
+ * @param patArchive
+ * @param type 1 绉戝 2 鐤剧梾
+ */
+ private void writeInSubTask(Long taskid, Boolean check, PatMedOuthosp patMedOuthosp, PatArchive patArchive, Integer type) {
ServiceTask st = new ServiceTask();
st.setTaskid(taskid);
st.setSendState(2L);
List<ServiceTask> serviceTasks = serviceTaskMapper.selectServiceTaskList(st);
if (org.apache.commons.collections4.CollectionUtils.isEmpty(serviceTasks)) {
- log.error("璇ユ偅鑰呯柧鐥呴殢璁块暱鏈熶换鍔′笉瀛樺湪,浠诲姟ID涓猴細{}", taskid);
- patMedOuthosp.setDiagcheckFlag("2");
- patMedOuthosp.setRemark("璇ユ偅鑰呯柧鐥呴殢璁块暱鏈熶换鍔′笉瀛樺湪,浠诲姟ID涓�:" + taskid);
+ log.info("璇ユ偅鑰呯柧鐥呴殢璁块暱鏈熶换鍔′笉瀛樺湪,浠诲姟ID涓猴細{}", taskid);
+ if (type == 1) patMedOuthosp.setDiagcheckFlag("2");
+ if (type == 2) patMedOuthosp.setDeptcheckFlag("2");
+ patMedOuthosp.setRemark("璇ユ偅鑰呴棬璇婇殢璁块暱鏈熶换鍔′笉瀛樺湪,浠诲姟ID涓�:" + taskid);
patMedOuthospMapper.updatePatMedOuthosp(patMedOuthosp);
return;
}
@@ -284,7 +305,7 @@
subtask.setSendstate(2L);
subtask.setTaskid(taskid);
List<ServiceSubtask> selectServiceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(subtask);
- log.error("璇ユ偅鑰呭緟鎵ц鐨勪换鍔�:{}", selectServiceSubtaskList);
+ log.info("璇ユ偅鑰呭緟鎵ц鐨勪换鍔�:{}", CollectionUtils.isEmpty(selectServiceSubtaskList) ? null : selectServiceSubtaskList.size());
if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(selectServiceSubtaskList) && selectServiceSubtaskList.size() > 0) {
for (ServiceSubtask serviceSubtask1 : selectServiceSubtaskList) {
if (Objects.isNull(serviceSubtask1.getLongSendTime())) {
@@ -293,15 +314,14 @@
}
//灏嗕箣鍓嶇殑鍋滄帀
- serviceSubtask1.setSendstate(4L);
- serviceSubtask1.setRemark("鐤剧梾鎮h�呭啀鍏ラ櫌");
- serviceSubtask1.setResult("error");
-// serviceSubtask1.setFinishtime(new Date());
+ serviceSubtask1.setSendstate(6L);
+ serviceSubtask1.setRemark("鎮h�呭凡缁忓洖闄㈠璇�");
+ serviceSubtask1.setResult("success");
+ serviceSubtask1.setFinishtime(new Date());
serviceSubtask1.setUpdateBy(serviceTask.getUpdateBy());
serviceSubtaskMapper.updateServiceSubtask(serviceSubtask1);
//閲嶆柊鏂板瀛愪换鍔�
i = serviceSubtaskMapper.insertServiceSubtask(serviceSubtask);
-
}
} else {
if (StringUtils.isEmpty(serviceSubtask.getPhone())) {
@@ -330,14 +350,16 @@
//灏哻heck_flag鏀规垚1锛堝凡澶勭悊锛�
PatMedOuthosp patMedOuthosp1 = new PatMedOuthosp();
patMedOuthosp1.setId(patMedOuthosp.getId());
- patMedOuthosp1.setDiagcheckFlag("1");
+ if (type == 1) patMedOuthosp1.setDiagcheckFlag("2");
+ if (type == 2) patMedOuthosp1.setDeptcheckFlag("2");
patMedOuthospMapper.updatePatMedOuthosp(patMedOuthosp1);
} else {
//鐢熸垚瀛愪换鍔″け璐ワ紝
- log.error("鐢熸垚瀛愪换鍔″け璐erviceSubtask涓猴細{}", serviceSubtask);
+ log.info("鐢熸垚瀛愪换鍔″け璐erviceSubtask鐨則askid涓猴細{},patid涓猴細{}", serviceSubtask.getTaskid(), serviceSubtask.getPatid());
PatMedOuthosp pmo = new PatMedOuthosp();
pmo.setId(patMedOuthosp.getId());
- pmo.setDiagcheckFlag("2");
+ if (type == 1) pmo.setDiagcheckFlag("2");
+ if (type == 2) pmo.setDeptcheckFlag("2");
pmo.setRemark("鐢熸垚瀛愪换鍔″け璐�");
patMedOuthospMapper.updatePatMedOuthosp(pmo);
}
@@ -352,6 +374,8 @@
serviceSubtask.setDrcode(patMedOuthosp.getDrcode());
serviceSubtask.setDrname(patMedOuthosp.getDrname());
serviceSubtask.setDeptcode(patMedOuthosp.getDeptcode());
+ serviceSubtask.setInhospid(patMedOuthosp.getId());
+ serviceSubtask.setHospno(patMedOuthosp.getOuthospno());
serviceSubtask.setDeptname(patMedOuthosp.getDeptname());
serviceSubtask.setTemplateid(serviceTask.getTemplateid());
serviceSubtask.setTemplatename(serviceTask.getTemplatename());
--
Gitblit v1.9.3