Преглед изворни кода

更新和初步诊断有关的质控条目

kongwz пре 5 година
родитељ
комит
29ea457d3c

+ 9 - 10
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0002.java

@@ -8,6 +8,7 @@ import com.lantone.qc.pub.model.InputInfo;
 import com.lantone.qc.pub.model.OutputInfo;
 import com.lantone.qc.pub.model.doc.BeHospitalizedDoc;
 import com.lantone.qc.pub.model.entity.Clinical;
+import com.lantone.qc.pub.model.entity.Diag;
 import com.lantone.qc.pub.model.entity.PD;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -29,17 +30,15 @@ public class BEH0002 extends QCCatalogue {
     private RedisUtil redisUtil;
 
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        List<Diag> diags = inputInfo.getBeHospitalizedDoc().getInitialDiagLabel().getDiags();
+        String mainDiag = diags.get(0).getName();
         status = "0";
-        String initialDiagtext = inputInfo.getBeHospitalizedDoc().getInitialDiagLabel().getText();
-        List<String> symptoms =null;
-        if(!CatalogueUtil.isEmpty(initialDiagtext)){
-            String main_diag = initialDiagtext.split(",")[0];
-            Map<String, Map<String, Object>> diagMap =(Map<String, Map<String, Object>>) redisUtil.get(KernelConstants.CONCEPT_DIAG_PROPERTY_MAP);
-            Map<String, Object> map = (Map<String, Object>) diagMap.get(main_diag);
-            if(map != null || map.size() >0){
-                symptoms = (List<String>) map.get("symptoms");
-            }
-        }
+       List<String> symptoms=null;
+       Map<String, Map<String, Object>> diagMap =(Map<String, Map<String, Object>>) redisUtil.get(KernelConstants.CONCEPT_DIAG_PROPERTY_MAP);
+       Map<String, Object> map = (Map<String, Object>) diagMap.get(mainDiag);
+       if(map != null || map.size() >0){
+           symptoms = (List<String>) map.get("symptoms");
+       }
         List<Clinical> clinicals = inputInfo.getBeHospitalizedDoc().getPresentLabel().getClinicals();
         if(clinicals != null && clinicals.size()>0){
             for (Clinical clinical:clinicals) {

+ 31 - 1
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0012.java

@@ -1,10 +1,18 @@
 package com.lantone.qc.kernel.catalogue.behospitalized;
 
 import com.lantone.qc.kernel.catalogue.QCCatalogue;
+import com.lantone.qc.kernel.util.KernelConstants;
+import com.lantone.qc.kernel.util.RedisUtil;
 import com.lantone.qc.pub.model.InputInfo;
 import com.lantone.qc.pub.model.OutputInfo;
+import com.lantone.qc.pub.model.entity.Diag;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
 
 /**
  * @ClassName : BEH0012
@@ -15,8 +23,30 @@ import org.springframework.stereotype.Component;
  */
 @Component
 public class BEH0012 extends QCCatalogue {
+    @Autowired
+    private RedisUtil redisUtil;
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
-        status = "0";
+        List<String> diags_out = new ArrayList<>();
+        Map<String, String> hostpital_standDiag = (Map<String, String>) redisUtil.get(KernelConstants.CONCEPT_DIAG_HOSPITAL_REFLECT);
+        List<Diag> diags = inputInfo.getBeHospitalizedDoc().getInitialDiagLabel().getDiags();
+        if(diags != null && diags.size()>0){
+            for (Diag diag:diags) {
+                String hospitalDiagName = diag.getHospitalDiagName();
+                if(hostpital_standDiag.containsKey(hospitalDiagName)){
+                    String standDiag = hostpital_standDiag.get(hospitalDiagName);
+                    if(!hospitalDiagName.equals(standDiag)){
+                        diags_out.add(hospitalDiagName);
+                    }
+                }else {
+                    diags_out.add(hospitalDiagName);
+                }
+            }
+            if(diags_out.size()>0){
+                info = diags_out.toString().replace("[","").replace("]","");
+            }
+        }else {
+            status = "0";
+        }
 
 
     }