From d9b1730bab30deb63273f17d4caf9aaf82d3e730 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期五, 27 二月 2026 16:20:01 +0800
Subject: [PATCH] 【丽水】增加患者离抢数据修正,修正出院转院记录的时间
---
smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java | 93 +++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 87 insertions(+), 6 deletions(-)
diff --git a/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java
index 0cd4212..aa20bd1 100644
--- a/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java
@@ -253,8 +253,8 @@
for (ServiceTaskdept serviceTaskdept1 : serviceTaskdepts) {
writeInSubTask(serviceTaskdept1.getTaskId(), true, patMedInhosp1, patArchive, 1, config);
}
- patMedInhosp1.setDeptcheckFlag("1");
- patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
+// patMedInhosp1.setDeptcheckFlag("1");
+// patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
}
} catch (Exception e) {
@@ -307,8 +307,8 @@
for (ServiceTaskdept serviceTaskdept1 : serviceTaskdeptList) {
writeInSubTask(serviceTaskdept1.getTaskId(), true, pmiBQ1, patArchive, 2, config);
}
- pmiBQ1.setWardcheckFlag("1");
- patMedInhospMapper.updatePatMedInhosp(pmiBQ1);
+// pmiBQ1.setWardcheckFlag("1");
+// patMedInhospMapper.updatePatMedInhosp(pmiBQ1);
}
@@ -363,8 +363,8 @@
for (ServiceTaskdiag serviceTaskdept1 : serviceTaskdiags) {
writeInSubTask(serviceTaskdept1.getTaskId(), true, pmiJB, patArchive, 3, config);
}
- pmiJB.setDiagcheckFlag("1");
- patMedInhospMapper.updatePatMedInhosp(pmiJB);
+// pmiJB.setDiagcheckFlag("1");
+// patMedInhospMapper.updatePatMedInhosp(pmiJB);
}
} catch (Exception e) {
@@ -385,6 +385,75 @@
List<PatMedInhosp> patMedInhospList = patMedInhospMapper.selectPatMedInhospList(patMedInhosp);
if (CollectionUtils.isNotEmpty(patMedInhospList) && patMedInhospList.size() > 0) {
dealInHospInfo(patMedInhospList);
+ }
+ return 1;
+ }
+
+ public int dealOutHospInfo1(String config) {
+ //鑾峰彇浠诲姟淇℃伅
+ ServiceTask st = new ServiceTask();
+ st.setDelFlag("0");
+ st.setLongTask(1);
+ List<ServiceTask> serviceTasks = serviceTaskMapper.selectServiceTaskList(st);
+ log.info("銆恉ealOutHospInfo1銆戣幏鍙栧埌{}涓暱鏈熶换鍔�", serviceTasks.size());
+
+ PatMedInhosp pmks = new PatMedInhosp();
+ //鑾峰彇闇�瑕佸嚭闄㈤儴闂ㄩ殢璁匡紝鏈鐞嗙殑鏁版嵁
+ pmks.setDeptcheckFlag("0");
+ pmks.setInhospstate("1");
+ pmks.setFuflag("1");
+ List<PatMedInhosp> patMedInhosps = patMedInhospMapper.selectPatMedInhospList(pmks);
+
+ log.info("dealOutHospInfo1 闇�瑕佸鐞嗙殑鍑洪櫌閮ㄩ棬鎮h�呬俊鎭細{}", CollectionUtils.isNotEmpty(patMedInhosps)
+ ? patMedInhosps.size() : null);
+ for (PatMedInhosp patMedInhosp1 : patMedInhosps) {
+ String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid());
+ patMedInhosp1.setTagname(tagname);
+ }
+
+ //绉戝
+ for (PatMedInhosp patMedInhosp1 : patMedInhosps) {
+ //鐥呬汉杞闀挎湡浠诲姟 闀挎湡浠诲姟閰嶇疆闅忚
+ for(ServiceTask serviceTask : serviceTasks) {
+
+ }
+ //鑾峰彇鎮h�呬俊鎭�
+ PatArchive patArchive = patArchiveMapper.selectPatArchiveByPatid(patMedInhosp1.getPatid());
+ if (Objects.isNull(patArchive)) {
+ patMedInhosp1.setDeptcheckFlag("2");
+ patMedInhosp1.setLongTaskReason("鎮h�呭熀鏈俊鎭负绌�");
+ patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
+ continue;
+ }
+ try {
+ //鏍规嵁鎮h�呮墍鍦ㄧ瀹わ紝鑾峰彇璇ョ瀹ょ殑闀挎湡浠诲姟
+ ServiceTaskdept serviceTaskdept = new ServiceTaskdept();
+ serviceTaskdept.setLongtask(1L);
+ serviceTaskdept.setDeptCode(patMedInhosp1.getLeaveldeptcode());
+ serviceTaskdept.setDeptType("1");
+ serviceTaskdept.setOrgid(patMedInhosp1.getOrgid());
+ List<ServiceTaskdept> serviceTaskdepts = serviceTaskdeptMapper.selectServiceTaskdeptList(serviceTaskdept);
+ //濡傛灉閮ㄩ棬妯℃澘涓虹┖锛堝皢deptIsNull璁剧疆涓簍rue锛�
+ if (CollectionUtils.isEmpty(serviceTaskdepts) || serviceTaskdepts.size() == 0) {
+ PatMedInhosp patMedInhosp = patMedInhospMapper.selectPatMedInhospByInhospid(patMedInhosp1.getInhospid());
+ patMedInhosp1.setDeptcheckFlag("2");
+ patMedInhosp1.setLongTaskReason(patMedInhosp.getLongTaskReason() + "璇ユ偅鑰呮墍鍦ㄧ瀹ゆ湭閰嶇疆闀挎湡浠诲姟;");
+ patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
+ } else {
+ for (ServiceTaskdept serviceTaskdept1 : serviceTaskdepts) {
+ writeInSubTask(serviceTaskdept1.getTaskId(), true, patMedInhosp1, patArchive, 1, config);
+ }
+// patMedInhosp1.setDeptcheckFlag("1");
+// patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
+ }
+
+ } catch (Exception e) {
+ e.printStackTrace();
+ log.error("浜哄憳绉戝澶勭悊鍑哄紓甯镐簡锛歿}", e.getMessage());
+ patMedInhosp1.setDeptcheckFlag("2");
+ patMedInhosp1.setLongTaskReason("浜哄憳绉戝澶勭悊寮傚父锛�" + e.getMessage());
+ patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
+ }
}
return 1;
}
@@ -547,6 +616,15 @@
return calendar.getTime();
}
+ /**
+ *
+ * @param taskid 浠诲姟id
+ * @param check 鏄惁闇�瑕佹牎楠�
+ * @param patMedInhosp1 鐥呬汉鍑哄叆闄俊鎭�
+ * @param patArchive 鐥呬汉淇℃伅
+ * @param type 闅忚绫诲瀷(1-绉戝锛�2-鐥呭尯锛�3-鐤剧梾锛�
+ * @param config 閰嶇疆淇℃伅 visit.early.day
+ */
//灏嗘偅鑰呮斁鍒皊ubtask涓�
private void writeInSubTask(Long taskid, Boolean check, PatMedInhosp patMedInhosp1, PatArchive patArchive, Integer type, String config) {
String longTaskReason = patMedInhosp1.getLongTaskReason();
@@ -834,6 +912,9 @@
if (!Objects.isNull(patMedInhosp1.getEndtime())) {
newDate = addDays(patMedInhosp1.getEndtime(), serviceTask.getSendDay().intValue());
} else {
+ patMedInhosp1.setDeptcheckFlag("2");
+ patMedInhosp1.setRemark(patMedInhosp1.getRemark() + "& 璇ユ偅鑰呯柧鐥呭嚭闄㈡椂闂翠负绌�,鍑洪櫌璁板綍ID涓�:" + patMedInhosp1.getInhospid());
+ patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
//濡傛灉鍑洪櫌鏃堕棿涓虹┖锛屽垯杩斿洖涓�涓柊瀵硅薄
return new ServiceSubtask();
}
--
Gitblit v1.9.3