From c62e26954e41360fc6a2efc874815aa84f8b0073 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期三, 21 五月 2025 14:45:10 +0800 Subject: [PATCH] 代码提交 --- smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java | 205 +++++++++++++++++++++++++++++++++++---------------- 1 files changed, 140 insertions(+), 65 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 4136526..c44c160 100644 --- a/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java +++ b/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java @@ -76,6 +76,19 @@ return patMedInhospList; } + @Override + public Map<String, Integer> queryPersonCount(PatServiceCount patServiceCount) { + if (patServiceCount.getInterval() == 1) { + //鍛� + } else if (patServiceCount.getInterval() == 2) { + //鏈� + } else if (patServiceCount.getInterval() == 3) { + //骞� + } + + return null; + } + /** * 鏌ヨ褰撳墠鐧婚檰浜鸿嚜宸憋紙鐥呭尯銆侀儴闂級鐨勬偅鑰呬綇闄㈣褰曞垪琛� * @@ -189,30 +202,25 @@ @Override public int dealOutHospInfo() { - //瀹氫箟涓変釜鍙橀噺鐢ㄦ潵璁板綍锛岃繖涓偅鑰呮槸涓嶆槸涓変釜闅忚閮芥槸涓虹┖ - Boolean deptIsNull = false; - Boolean wardIsNull = false; - Boolean diagIsNull = false; - PatMedInhosp patMedInhosp = new PatMedInhosp(); + PatMedInhosp pmks = new PatMedInhosp(); //鑾峰彇闇�瑕佸嚭闄㈤儴闂ㄩ殢璁匡紝鏈鐞嗙殑鏁版嵁 - patMedInhosp.setDeptcheckFlag("0"); - patMedInhosp.setInhospstate("1"); - patMedInhosp.setFuflag("1"); - List<PatMedInhosp> patMedInhosps = patMedInhospMapper.selectPatMedInhospList(patMedInhosp); - log.error("dealOutHospInfo闇�瑕佸鐞嗙殑鍑洪櫌鎮h�呬俊鎭細{}", patMedInhosps); + pmks.setDeptcheckFlag("0"); + pmks.setInhospstate("1"); + pmks.setFuflag("1"); + List<PatMedInhosp> patMedInhosps = patMedInhospMapper.selectPatMedInhospList(pmks); + log.error("dealOutHospInfo闇�瑕佸鐞嗙殑鍑洪櫌閮ㄩ棬鎮h�呬俊鎭細{}", patMedInhosps); for (PatMedInhosp patMedInhosp1 : patMedInhosps) { String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid()); patMedInhosp1.setTagname(tagname); } + //绉戝 for (PatMedInhosp patMedInhosp1 : patMedInhosps) { //鑾峰彇鎮h�呬俊鎭� PatArchive patArchive = patArchiveMapper.selectPatArchiveByPatid(patMedInhosp1.getPatid()); if (Objects.isNull(patArchive)) { patMedInhosp1.setDeptcheckFlag("2"); - patMedInhosp1.setWardcheckFlag("2"); - patMedInhosp1.setDiagcheckFlag("2"); patMedInhosp1.setLongTaskReason("鎮h�呭熀鏈俊鎭负绌�"); patMedInhospMapper.updatePatMedInhosp(patMedInhosp1); continue; @@ -223,59 +231,19 @@ 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) { - deptIsNull = true; + 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); } patMedInhosp1.setDeptcheckFlag("1"); - patMedInhospMapper.updatePatMedInhosp(patMedInhosp1); - } - - //鏍规嵁鎮h�呮墍鍦ㄧ梾鍖猴紝鑾峰彇璇ョ梾鍖虹殑闀挎湡浠诲姟,鏂板崕鍖婚櫌鍙互鍏堜笉鐢ㄦ牴鎹梾鍖哄拰鐤剧梾鏉ュ仛 - if (visitHosp != 1) { - serviceTaskdept.setLongtask(1L); - serviceTaskdept.setDeptCode(patMedInhosp1.getLeavehospitaldistrictcode()); - serviceTaskdept.setDeptType("2"); - List<ServiceTaskdept> serviceTaskdeptList = serviceTaskdeptMapper.selectServiceTaskdeptList(serviceTaskdept); - //濡傛灉閮ㄩ棬妯℃澘涓虹┖锛堝皢deptIsNull璁剧疆涓簍rue锛� - if (CollectionUtils.isEmpty(serviceTaskdeptList) || serviceTaskdeptList.size() == 0) { - wardIsNull = true; - } else { - for (ServiceTaskdept serviceTaskdept1 : serviceTaskdeptList) { - writeInSubTask(serviceTaskdept1.getTaskId(), true, patMedInhosp1, patArchive, 2); - } - patMedInhosp1.setWardcheckFlag("1"); - patMedInhospMapper.updatePatMedInhosp(patMedInhosp1); - } - - // 鏍规嵁鎮h�呯殑鐤剧梾锛岃幏鍙栬鐤剧梾鐨勯暱鏈熶换鍔� - ServiceTaskdiag serviceTaskdiag = new ServiceTaskdiag(); - serviceTaskdiag.setLongtask(1L); - serviceTaskdiag.setIcd10code(patMedInhosp1.getLeaveicd10code()); - List<ServiceTaskdiag> serviceTaskdiags = serviceTaskdiagMapper.selectServiceTaskdiagList(serviceTaskdiag); - //濡傛灉閮ㄩ棬妯℃澘涓虹┖锛堝皢deptIsNull璁剧疆涓簍rue锛� - if (CollectionUtils.isEmpty(serviceTaskdiags) || serviceTaskdiags.size() == 0) { - diagIsNull = true; - } else { - - for (ServiceTaskdiag serviceTaskdept1 : serviceTaskdiags) { - writeInSubTask(serviceTaskdept1.getTaskId(), true, patMedInhosp1, patArchive, 3); - } - patMedInhosp1.setDiagcheckFlag("1"); - patMedInhospMapper.updatePatMedInhosp(patMedInhosp1); - } - } - - //涓変釜閮戒负绌猴紝娌℃硶闅忚浜� - if (diagIsNull == true && deptIsNull == true && wardIsNull == true) { - patMedInhosp1.setDeptcheckFlag("2"); - patMedInhosp1.setWardcheckFlag("2"); - patMedInhosp1.setDiagcheckFlag("2"); - patMedInhosp1.setLongTaskReason("璇ユ偅鑰呮墍鍦ㄧ瀹ゃ�佺梾鍖� 鎴栨墍鎮g殑鐤剧梾锛屾湭閰嶇疆闀挎湡浠诲姟;"); patMedInhospMapper.updatePatMedInhosp(patMedInhosp1); } @@ -285,14 +253,118 @@ } } + //鏍规嵁鎮h�呮墍鍦ㄧ梾鍖猴紝鑾峰彇璇ョ梾鍖虹殑闀挎湡浠诲姟,鏂板崕鍖婚櫌鍙互鍏堜笉鐢ㄦ牴鎹梾鍖哄拰鐤剧梾鏉ュ仛 + if (visitHosp != 1) { + + PatMedInhosp pmbq = new PatMedInhosp(); + //鑾峰彇闇�瑕佸嚭闄㈤儴闂ㄩ殢璁匡紝鏈鐞嗙殑鏁版嵁 + pmbq.setWardcheckFlag("0"); + pmbq.setInhospstate("1"); + pmbq.setFuflag("1"); + List<PatMedInhosp> patMedInhospBQs = patMedInhospMapper.selectPatMedInhospList(pmbq); + log.error("dealOutHospInfo闇�瑕佸鐞嗙殑鍑洪櫌鐥呭尯鎮h�呬俊鎭細{}", patMedInhosps); + for (PatMedInhosp patMedInhosp1 : patMedInhospBQs) { + String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid()); + patMedInhosp1.setTagname(tagname); + } + + //鐥呭尯鏁版嵁澶勭悊 + for (PatMedInhosp pmiBQ1 : patMedInhospBQs) { + //鑾峰彇鎮h�呬俊鎭� + PatArchive patArchive = patArchiveMapper.selectPatArchiveByPatid(pmiBQ1.getPatid()); + if (Objects.isNull(patArchive)) { + pmiBQ1.setWardcheckFlag("2"); + pmiBQ1.setLongTaskReason("鎮h�呭熀鏈俊鎭负绌�"); + patMedInhospMapper.updatePatMedInhosp(pmiBQ1); + continue; + } + try { + ServiceTaskdept serviceTaskdept = new ServiceTaskdept(); + serviceTaskdept.setLongtask(1L); + serviceTaskdept.setDeptCode(pmiBQ1.getLeavehospitaldistrictcode()); + serviceTaskdept.setDeptType("2"); + serviceTaskdept.setOrgid(pmiBQ1.getOrgid()); + List<ServiceTaskdept> serviceTaskdeptList = serviceTaskdeptMapper.selectServiceTaskdeptList(serviceTaskdept); + //濡傛灉閮ㄩ棬妯℃澘涓虹┖锛堝皢deptIsNull璁剧疆涓簍rue锛� + if (CollectionUtils.isEmpty(serviceTaskdeptList) || serviceTaskdeptList.size() == 0) { + PatMedInhosp patMedInhosp = patMedInhospMapper.selectPatMedInhospByInhospid(pmiBQ1.getInhospid()); + pmiBQ1.setWardcheckFlag("2"); + pmiBQ1.setLongTaskReason(patMedInhosp.getLongTaskReason() + "璇ユ偅鑰呮墍鍦ㄧ梾鍖烘湭閰嶇疆闀挎湡浠诲姟;"); + patMedInhospMapper.updatePatMedInhosp(pmiBQ1); + } else { + for (ServiceTaskdept serviceTaskdept1 : serviceTaskdeptList) { + writeInSubTask(serviceTaskdept1.getTaskId(), true, pmiBQ1, patArchive, 2); + } + pmiBQ1.setWardcheckFlag("1"); + patMedInhospMapper.updatePatMedInhosp(pmiBQ1); + } + + + } catch (Exception e) { + e.printStackTrace(); + log.error("浜哄憳澶勭悊鍑哄紓甯镐簡锛歿}", e.getMessage()); + } + } + + PatMedInhosp pmjb = new PatMedInhosp(); + //鑾峰彇闇�瑕佸嚭闄㈢柧鐥呴殢璁匡紝鏈鐞嗙殑鏁版嵁 + pmjb.setDiagcheckFlag("0"); + pmjb.setInhospstate("1"); + pmjb.setFuflag("1"); + List<PatMedInhosp> patMedInhospJBs = patMedInhospMapper.selectPatMedInhospList(pmjb); + log.error("dealOutHospInfo闇�瑕佸鐞嗙殑鍑洪櫌鐤剧梾鎮h�呬俊鎭細{}", patMedInhosps); + for (PatMedInhosp patMedInhosp1 : patMedInhospJBs) { + String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid()); + patMedInhosp1.setTagname(tagname); + } + + for (PatMedInhosp pmiJB : patMedInhospJBs) { + //鑾峰彇鎮h�呬俊鎭� + PatArchive patArchive = patArchiveMapper.selectPatArchiveByPatid(pmiJB.getPatid()); + if (Objects.isNull(patArchive)) { + pmiJB.setDiagcheckFlag("2"); + pmiJB.setLongTaskReason("鎮h�呭熀鏈俊鎭负绌�"); + patMedInhospMapper.updatePatMedInhosp(pmiJB); + continue; + } + try { + if (StringUtils.isEmpty(pmiJB.getLeaveicd10code())) { + continue; + } + // 鏍规嵁鎮h�呯殑鐤剧梾锛岃幏鍙栬鐤剧梾鐨勯暱鏈熶换鍔� + ServiceTaskdiag serviceTaskdiag = new ServiceTaskdiag(); + serviceTaskdiag.setLongtask(1L); + serviceTaskdiag.setIcd10code(pmiJB.getLeaveicd10code()); + serviceTaskdiag.setOrgid(pmiJB.getOrgid()); + + List<ServiceTaskdiag> serviceTaskdiags = serviceTaskdiagMapper.selectServiceTaskdiagList(serviceTaskdiag); + //濡傛灉閮ㄩ棬妯℃澘涓虹┖锛堝皢deptIsNull璁剧疆涓簍rue锛� + if (CollectionUtils.isEmpty(serviceTaskdiags) || serviceTaskdiags.size() == 0) { + PatMedInhosp patMedInhosp = patMedInhospMapper.selectPatMedInhospByInhospid(pmiJB.getInhospid()); + pmiJB.setDiagcheckFlag("2"); + pmiJB.setLongTaskReason(patMedInhosp.getLongTaskReason() + "鎵�鎮g殑鐤剧梾鏈厤缃暱鏈熶换鍔�;"); + patMedInhospMapper.updatePatMedInhosp(pmiJB); + } else { + for (ServiceTaskdiag serviceTaskdept1 : serviceTaskdiags) { + writeInSubTask(serviceTaskdept1.getTaskId(), true, pmiJB, patArchive, 3); + } + pmiJB.setDiagcheckFlag("1"); + patMedInhospMapper.updatePatMedInhosp(pmiJB); + } + + } catch (Exception e) { + e.printStackTrace(); + log.error("浜哄憳澶勭悊鍑哄紓甯镐簡锛歿}", e.getMessage()); + } + } + } + //鑾峰彇鏈鐞嗗湪闄㈢殑鏁版嵁(濡傛灉鍒氬垰鍑洪櫌鐨勬偅鑰呮暟鎹殑鍑洪櫌鏃堕棿,鍦ㄤ笅闈㈡煡璇㈠嚭鐨勫叆闄㈡椂闂翠箣鍓�,閭d箣鍓嶇殑鍑洪櫌鎮h�呯殑鏁版嵁,涔熷緱鍋滄帀,鍥犱负鍙堝叆闄簡) + PatMedInhosp patMedInhosp = new PatMedInhosp(); + //鑾峰彇闇�瑕佸嚭闄㈤儴闂ㄩ殢璁匡紝鏈鐞嗙殑鏁版嵁 patMedInhosp.setDeptcheckFlag("0"); patMedInhosp.setInhospstate("0"); List<PatMedInhosp> patMedInhospList = patMedInhospMapper.selectPatMedInhospList(patMedInhosp); - for (PatMedInhosp patMedInhosp1 : patMedInhosps) { - String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid()); - patMedInhosp1.setTagname(tagname); - } if (CollectionUtils.isNotEmpty(patMedInhospList) && patMedInhospList.size() > 0) { dealInHospInfo(patMedInhospList); } @@ -410,7 +482,7 @@ @Override public List<PatMedRes> getDeptRanking(PatMedReq patMedReq) { - return patMedInhospMapper.getDeptRanking(patMedReq); + return serviceSubtaskMapper.getDeptRanking(patMedReq); } @Override @@ -585,6 +657,8 @@ serviceSubtask.setDrname(patMedInhosp1.getDrname()); serviceSubtask.setDeptcode(patMedInhosp1.getLeaveldeptcode()); serviceSubtask.setDeptname(patMedInhosp1.getLeaveldeptname()); + serviceSubtask.setLeaveicd10code(patMedInhosp1.getLeaveicd10code()); + serviceSubtask.setLeavediagname(patMedInhosp1.getDiagname()); serviceSubtask.setTemplateid(serviceTask.getTemplateid()); serviceSubtask.setTemplatename(serviceTask.getTemplatename()); serviceSubtask.setPatid(patArchive.getId()); @@ -597,7 +671,7 @@ serviceSubtask.setSendstate(2L); serviceSubtask.setStarttime(patMedInhosp1.getStarttime()); serviceSubtask.setEndtime(patMedInhosp1.getEndtime()); - serviceSubtask.setServiceType("2"); + serviceSubtask.setServiceType(serviceTask.getServiceType()); serviceSubtask.setPreachform(serviceTask.getPreachform()); serviceSubtask.setHospType("2"); serviceSubtask.setCreateTime(new Date()); @@ -613,6 +687,7 @@ serviceSubtask.setLongSendTime(newDate); //鎮h�呭彂閫佹椂闂� if (StringUtils.isNotEmpty(patArchive.getNotrequiredFlag()) && patArchive.getNotrequiredFlag().equals("1")) { +// log.error("serviceSubtask99999999鐨勫�间负锛歿}",serviceSubtask); String remark = patArchive.getNotrequiredreason(); serviceSubtask.setRemark(remark); serviceSubtask.setResult("error"); @@ -632,7 +707,7 @@ subtask.setPatid(patMedInhosp1.getPatid()); subtask.setSendstate(2L); List<ServiceSubtask> selectServiceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(subtask); - log.error("鍏ラ櫌鐨勬偅鑰呭緟鎵ц鐨勪换鍔�:{}", selectServiceSubtaskList); +// log.error("鍏ラ櫌鐨勬偅鑰呭緟鎵ц鐨勪换鍔�:{}", selectServiceSubtaskList); if (CollectionUtils.isNotEmpty(selectServiceSubtaskList) && selectServiceSubtaskList.size() > 0) { for (ServiceSubtask serviceSubtask1 : selectServiceSubtaskList) { if (Objects.isNull(serviceSubtask1.getLongSendTime())) { @@ -641,7 +716,7 @@ } if (serviceSubtask1.getEndtime().before(patMedInhosp1.getStarttime())) { //濡傛灉褰撳墠寰幆鐨勫瓙浠诲姟鐨勫嚭闄㈡椂闂村湪鈥滃噯澶囨柊澧炵殑瀛愪换鍔♀�濈殑鍑洪櫌鏃堕棿涔嬪墠锛屽垯灏嗗惊鐜殑瀛愪换鍔″仠鎺� - log.error("鎮h�呭啀鍏ラ櫌鐨剆erviceSubtask1涓�:{}", serviceSubtask1); +// log.error("鎮h�呭啀鍏ラ櫌鐨剆erviceSubtask1涓�:{}", serviceSubtask1); serviceSubtask1.setSendstate(4L); serviceSubtask1.setRemark("鎮h�呭啀鍏ラ櫌"); serviceSubtask1.setResult("error"); -- Gitblit v1.9.3