Przeglądaj źródła

台州首次病程病历质控

kongwz 5 lat temu
rodzic
commit
9c52ad7dd1

+ 16 - 7
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstcourserecord/FIRC0501.java

@@ -1,15 +1,18 @@
 package com.lantone.qc.kernel.catalogue.firstcourserecord;
 
 import com.lantone.qc.kernel.catalogue.QCCatalogue;
+import com.lantone.qc.kernel.util.CatalogueUtil;
 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.doc.FirstCourseRecordDoc;
 import org.springframework.stereotype.Component;
 
+import java.util.Map;
+
 /**
- * @ClassName : FIRC0500
- * @Description : 首程主诉与入院记录主诉不一致
+ * @ClassName : FIRC0501
+ * @Description : 检查计划未填写
  * @Author : 楼辉荣
  * @Date: 2020-03-06 17:28
  */
@@ -18,11 +21,17 @@ public class FIRC0501 extends QCCatalogue {
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
         status.set("0");
         FirstCourseRecordDoc firstCourseRecordDoc = inputInfo.getFirstCourseRecordDoc();
-        BeHospitalizedDoc beHospitalizedDoc = inputInfo.getBeHospitalizedDoc();
-        if(firstCourseRecordDoc != null && beHospitalizedDoc != null) {
-            String chief_text = beHospitalizedDoc.getChiefLabel().getText();
-            if(!firstCourseRecordDoc.getText().contains(chief_text)){
-                status.set("-1");
+        if(firstCourseRecordDoc != null){
+            Map<String, String> firstRecordMap = firstCourseRecordDoc.getStructureMap();
+            if(firstRecordMap != null){
+                String morbidity_after = firstRecordMap.get("诊疗计划-检查计划");
+                if(morbidity_after != null){
+                    if(CatalogueUtil.isEmpty(morbidity_after)){
+                        status.set("-1");
+                    }
+                }else {
+                    status.set("-1");
+                }
             }
         }
     }

+ 35 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstcourserecord/FIRC0502.java

@@ -0,0 +1,35 @@
+package com.lantone.qc.kernel.catalogue.firstcourserecord;
+
+import com.lantone.qc.kernel.catalogue.QCCatalogue;
+import com.lantone.qc.kernel.util.CatalogueUtil;
+import com.lantone.qc.pub.model.InputInfo;
+import com.lantone.qc.pub.model.OutputInfo;
+import com.lantone.qc.pub.model.doc.FirstCourseRecordDoc;
+import com.lantone.qc.pub.model.entity.Lis;
+import com.lantone.qc.pub.model.label.TreatPlanLabel;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @ClassName : FIRC0502
+ * @Description : 检查计划无化验项目名称
+ * @Author : 楼辉荣
+ * @Date: 2020-03-06 17:28
+ */
+@Component
+public class FIRC0502 extends QCCatalogue {
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        status.set("0");
+        FirstCourseRecordDoc firstCourseRecordDoc = inputInfo.getFirstCourseRecordDoc();
+        if(firstCourseRecordDoc != null){
+            TreatPlanLabel treatPlanLabel = firstCourseRecordDoc.getTreatPlanLabel();
+            List<Lis> lis = treatPlanLabel.getLis();
+            if(lis == null || lis.size() == 0){
+                status.set("-1");
+            }
+
+        }
+    }
+    }

+ 34 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstcourserecord/FIRC0503.java

@@ -0,0 +1,34 @@
+package com.lantone.qc.kernel.catalogue.firstcourserecord;
+
+import com.lantone.qc.kernel.catalogue.QCCatalogue;
+import com.lantone.qc.pub.model.InputInfo;
+import com.lantone.qc.pub.model.OutputInfo;
+import com.lantone.qc.pub.model.doc.FirstCourseRecordDoc;
+import com.lantone.qc.pub.model.entity.Lis;
+import com.lantone.qc.pub.model.entity.Pacs;
+import com.lantone.qc.pub.model.label.TreatPlanLabel;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @ClassName : FIRC0503
+ * @Description : 检查计划无辅检项目名称
+ * @Author : 楼辉荣
+ * @Date: 2020-03-06 17:28
+ */
+@Component
+public class FIRC0503 extends QCCatalogue {
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        status.set("0");
+        FirstCourseRecordDoc firstCourseRecordDoc = inputInfo.getFirstCourseRecordDoc();
+        if(firstCourseRecordDoc != null){
+            TreatPlanLabel treatPlanLabel = firstCourseRecordDoc.getTreatPlanLabel();
+            List<Pacs> pacs = treatPlanLabel.getPacs();
+            if(pacs == null || pacs.size() == 0){
+                status.set("-1");
+            }
+
+        }
+    }
+    }

+ 37 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstcourserecord/FIRC0504.java

@@ -0,0 +1,37 @@
+package com.lantone.qc.kernel.catalogue.firstcourserecord;
+
+import com.lantone.qc.kernel.catalogue.QCCatalogue;
+import com.lantone.qc.kernel.util.CatalogueUtil;
+import com.lantone.qc.pub.model.InputInfo;
+import com.lantone.qc.pub.model.OutputInfo;
+import com.lantone.qc.pub.model.doc.FirstCourseRecordDoc;
+import org.springframework.stereotype.Component;
+
+import java.util.Map;
+
+/**
+ * @ClassName : FIRC0504
+ * @Description : 检查计划未填写
+ * @Author : 楼辉荣
+ * @Date: 2020-03-06 17:28
+ */
+@Component
+public class FIRC0504 extends QCCatalogue {
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        status.set("0");
+        FirstCourseRecordDoc firstCourseRecordDoc = inputInfo.getFirstCourseRecordDoc();
+        if(firstCourseRecordDoc != null){
+            Map<String, String> firstRecordMap = firstCourseRecordDoc.getStructureMap();
+            if(firstRecordMap != null){
+                String morbidity_after = firstRecordMap.get("诊疗计划-治疗计划");
+                if(morbidity_after != null){
+                    if(CatalogueUtil.isEmpty(morbidity_after)){
+                        status.set("-1");
+                    }
+                }else {
+                    status.set("-1");
+                }
+            }
+        }
+    }
+    }

+ 18 - 0
kernel/src/main/java/com/lantone/qc/kernel/structure/ai/process/EntityProcessTreatPlan.java

@@ -41,6 +41,24 @@ public class EntityProcessTreatPlan extends EntityProcess {
             treats.add(treat);
         }
         treatPlanLabel.setTreat(treats);
+        //化验
+        List<Lemma> lisLemmas = createEntityTree(aiOut, EntityEnum.LABORATORY.toString());
+        List<Lis> lises = new ArrayList<>();
+        for (Lemma lemma :lisLemmas) {
+            Lis lis = new Lis();
+            lis.setName(lemma.getText());
+            lises.add(lis);
+        }
+        treatPlanLabel.setLis(lises);
+        //检查
+        List<Lemma> pacsLemmas = createEntityTree(aiOut, EntityEnum.AUXILIARY_EXAMINATION.toString());
+        List<Pacs> paces = new ArrayList<>();
+        for (Lemma lemma :pacsLemmas) {
+            Pacs pacs = new Pacs();
+            pacs.setName(lemma.getText());
+            paces.add(pacs);
+        }
+        treatPlanLabel.setLis(lises);
         return treatPlanLabel;
     }
 }

+ 3 - 3
public/src/main/java/com/lantone/qc/pub/model/label/TreatPlanLabel.java

@@ -1,8 +1,6 @@
 package com.lantone.qc.pub.model.label;
 
-import com.lantone.qc.pub.model.entity.Medicine;
-import com.lantone.qc.pub.model.entity.NursingLevel;
-import com.lantone.qc.pub.model.entity.Treat;
+import com.lantone.qc.pub.model.entity.*;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -21,4 +19,6 @@ public class TreatPlanLabel extends GeneralLabel {
     private NursingLevel nursingLevel;//护理级别
     private Medicine medicine;//药品
     private List<Treat> treat = new ArrayList<>();//治疗或治疗目的
+    private List<Lis> lis = new ArrayList<>();
+    private List<Pacs> pacs = new ArrayList<>();
 }