zhanghang 4 anos atrás
pai
commit
965c8ac1cf
1 arquivos alterados com 53 adições e 15 exclusões
  1. 53 15
      src/main/java/com/diagbot/facade/ConsoleFacade.java

+ 53 - 15
src/main/java/com/diagbot/facade/ConsoleFacade.java

@@ -609,14 +609,15 @@ public class ConsoleFacade {
         CopyOnWriteArrayList<String> operationCode = new CopyOnWriteArrayList<>();
         CopyOnWriteArrayList<String> operationPathologyCode = new CopyOnWriteArrayList<>();
         CopyOnWriteArrayList<String> antibiosisCode = new CopyOnWriteArrayList<>();
-        Long operationFeeNum = 0L;
+            List<String> adviceVerify = adviceVerify(filterVO);
+            Long operationFeeNum = 0L;
             filterVO.setFlagStr("2");
             List<MedManageParamsDTO> doctorAdviceMedManageParams = behospitalInfoFacade.getMedManageParams(filterVO);
             Map<String, List<String>> adviceNum = getAdviceNum(filterVO, doctorAdviceMedManageParams);
                 for (Map<String, String> stringStringMap : selectOperationNumMap) {
                     String behospitalCode = stringStringMap.get("behospitalCode");
                     //出院code
-                         outHospitalCode.add(behospitalCode);
+                    outHospitalCode.add(behospitalCode);
                     if (Double.parseDouble(stringStringMap.get("operationFee"))>0){
                         //手术code
                         operationCode.add(behospitalCode);
@@ -630,6 +631,11 @@ public class ConsoleFacade {
                         antibiosisCode.add(behospitalCode);
                     }
                 }
+                if(ListUtil.isNotEmpty(adviceVerify)){
+                    for (String code : adviceVerify) {
+                        outHospitalCode.add(code);
+                    }
+                }
             Long startCount = Long.valueOf(outHospitalCode.size());
             //手术人
                 List<String> operationList = adviceNum.get("operation");
@@ -664,8 +670,13 @@ public class ConsoleFacade {
                 if(ListUtil.isNotEmpty(operationPathologyCode)) {
                     operationPathologyFeeNum = Long.valueOf(operationPathologyCode.size());
                 }
+                //细菌培养人数
+                List<String> bacterialCultureList = adviceNum.get("bacterialCulture");
+                Long bacterialCultureNum=0L;
+                if(ListUtil.isNotEmpty(bacterialCultureList)) {
+                    bacterialCultureNum = Long.valueOf(bacterialCultureList.size());
+                }
                 //抗菌药物人数
-
                 List<String> antibiosisList = adviceNum.get("antibiosis");
                 if(ListUtil.isNotEmpty(antibiosisList)) {
                     for (String s : antibiosisList) {
@@ -702,6 +713,10 @@ public class ConsoleFacade {
                     if (operationPathologyFeeNum != null) {
                         medIndexResult.setPathologyResult(Double.valueOf(operationPathologyFeeNum));
                     }
+                 //细菌培养人数
+                    if (bacterialCultureNum != null) {
+                        medIndexResult.setGermResult(Double.valueOf(bacterialCultureNum));
+                    }
                 //抗菌人数
                     if (antibiosisFeeNum != null ) {
                         medIndexResult.setAntibiosisResult(Double.valueOf(antibiosisFeeNum));
@@ -790,6 +805,27 @@ public class ConsoleFacade {
                     medIndexRelevanceFacade.save(medIndexRelevance);
                 }
             }
+            if(ListUtil.isNotEmpty(bacterialCultureList)) {
+                medIndexRelevance.setRelevanceType(11);
+                for (String Code : bacterialCultureList) {
+                    medIndexRelevance.setBehospitalCode(Code);
+                    medIndexRelevanceFacade.save(medIndexRelevance);
+                }
+            }
+            if(ListUtil.isNotEmpty(antibiosisCode)) {
+                medIndexRelevance.setRelevanceType(12);
+                for (String Code : antibiosisCode) {
+                    medIndexRelevance.setBehospitalCode(Code);
+                    medIndexRelevanceFacade.save(medIndexRelevance);
+                }
+            }
+            if(ListUtil.isNotEmpty(chemotherapyMalignantTumorsList)) {
+                medIndexRelevance.setRelevanceType(13);
+                for (String Code : chemotherapyMalignantTumorsList) {
+                    medIndexRelevance.setBehospitalCode(Code);
+                    medIndexRelevanceFacade.save(medIndexRelevance);
+                }
+            }
             if(ListUtil.isNotEmpty(operationCode)) {
                 medIndexRelevance.setRelevanceType(15);
                 for (String Code : operationCode) {
@@ -909,6 +945,7 @@ public class ConsoleFacade {
         List<String> MRBehospitalCode = new CopyOnWriteArrayList<>();
         List<String> operationBehospitalCode = new CopyOnWriteArrayList<>();
         List<String> pathologyBehospitalCode = new CopyOnWriteArrayList<>();
+        List<String> bacterialCultureCode = new CopyOnWriteArrayList<>();
         List<String> antibiosisBehospitalCode = new CopyOnWriteArrayList<>();
         List<String> chemotherapyMalignantTumorsBehospitalCode = new CopyOnWriteArrayList<>();
         //无首页code
@@ -1002,6 +1039,14 @@ public class ConsoleFacade {
                                         }
                                     }
                                 }
+                                //细菌培养
+                                if (indexName.equals(QualityContent.XJPY_JCJL_FHL) || indexName.equals(QualityContent.QB)) {
+                                    if(!bacterialCultureCode.contains(behospitalCode)){
+                                        if(daItemName.contains(QualityContent.BACTERIAL_CULTURE)){
+                                            bacterialCultureCode.add(behospitalCode);
+                                        }
+                                    }
+                                }
                             }
                         }
                         //获取为长期医嘱或临时医嘱的医嘱
@@ -1035,28 +1080,21 @@ public class ConsoleFacade {
             myPool.shutdown();
 
             if(ListUtil.isEmpty(CTBehospitalCode)){
-         //       map.put("CT",Long.valueOf(0));
                 mapCode.put("CT",null);
             }else {
-        //        map.put("CT",Long.valueOf(CTBehospitalCode.size()));
                 mapCode.put("CT",CTBehospitalCode);
             }
             if(ListUtil.isEmpty(MRBehospitalCode)){
-         //       map.put("MR",Long.valueOf(0));
                 mapCode.put("MR",null);
             }else {
-       //         map.put("MR",Long.valueOf(MRBehospitalCode.size()));
                 mapCode.put("MR",MRBehospitalCode);
             }
             if(ListUtil.isEmpty(operationBehospitalCode)){
-       //         map.put("operation",Long.valueOf(0));
                 mapCode.put("operation",null);
             }else {
-       //         map.put("operation",Long.valueOf(operationBehospitalCode.size()));
                 mapCode.put("operation",operationBehospitalCode);
             }
             if(ListUtil.isEmpty(operationBehospitalCode)||ListUtil.isEmpty(operationPathologyBehospitalCode)){
-        //        map.put("operationPathology",Long.valueOf(0));
                 mapCode.put("operationPathology",null);
             }else {
                 for (String operation : operationBehospitalCode) {
@@ -1064,21 +1102,21 @@ public class ConsoleFacade {
                         operationPathologyBehospitalCode.add(operation);
                     }
                 }
-           //     map.put("operationPathology",Long.valueOf(operationPathologyBehospitalCode.size()));
                 mapCode.put("operationPathology",operationBehospitalCode);
             }
+            if(ListUtil.isEmpty(bacterialCultureCode)){
+                mapCode.put("bacterialCulture",null);
+            }else {
+                mapCode.put("bacterialCulture",bacterialCultureCode);
+            }
             if(ListUtil.isEmpty(antibiosisBehospitalCode)){
-        //        map.put("antibiosis",Long.valueOf(0));
                 mapCode.put("antibiosis",null);
             }else {
-         //       map.put("antibiosis",Long.valueOf(antibiosisBehospitalCode.size()));
                 mapCode.put("antibiosis",antibiosisBehospitalCode);
             }
             if(ListUtil.isEmpty(chemotherapyMalignantTumorsBehospitalCode)){
-          //      map.put("chemotherapyMalignantTumors",Long.valueOf(0));
                 mapCode.put("chemotherapyMalignantTumors",null);
             }else {
-       //         map.put("chemotherapyMalignantTumors",Long.valueOf(chemotherapyMalignantTumorsBehospitalCode.size()));
                 mapCode.put("chemotherapyMalignantTumors",antibiosisBehospitalCode);
             }
             return mapCode;