Browse Source

义乌规则修改逻辑

zhangzw 4 years ago
parent
commit
f070d03d18

+ 6 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/yiwu/behospitalized/BEH02902.java

@@ -28,6 +28,7 @@ public class BEH02902 extends QCCatalogue {
 
         String pacsText = inputInfo.getBeHospitalizedDoc().getStructureMap().get("辅助检查");
         String pacsText1 = inputInfo.getBeHospitalizedDoc().getStructureMap().get("特殊检查");
+        String treat = inputInfo.getBeHospitalizedDoc().getStructureMap().get("诊疗情况");
         if (StringUtil.isBlank(pacsText)) {
             status.set("0");
             return;
@@ -49,6 +50,11 @@ public class BEH02902 extends QCCatalogue {
             return;
         }
 
+        if (StringUtil.isNotBlank(treat) && treat.contains("完善相关辅助检查")){
+            status.set("0");
+            return;
+        }
+
         PacsLabel pacsLabel = inputInfo.getBeHospitalizedDoc().getPacsLabel();
         if (pacsLabel == null || StringUtil.isBlank(pacsLabel.getText())) {
             status.set("0");

+ 5 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/yiwu/behospitalized/BEH02903.java

@@ -27,6 +27,7 @@ public class BEH02903 extends QCCatalogue {
 
         String pacsText = inputInfo.getBeHospitalizedDoc().getStructureMap().get("辅助检查");
         String pacsText1 = inputInfo.getBeHospitalizedDoc().getStructureMap().get("特殊检查");
+        String treat = inputInfo.getBeHospitalizedDoc().getStructureMap().get("诊疗情况");
         if (StringUtil.isBlank(pacsText)) {
             status.set("0");
             return;
@@ -40,6 +41,10 @@ public class BEH02903 extends QCCatalogue {
             status.set("0");
             return;
         }
+        if (StringUtil.isNotBlank(treat) && treat.contains("完善相关辅助检查")){
+            status.set("0");
+            return;
+        }
 
         PacsLabel pacsLabel = inputInfo.getBeHospitalizedDoc().getPacsLabel();
         if (pacsLabel == null) {

+ 8 - 10
kernel/src/main/java/com/lantone/qc/kernel/catalogue/yiwu/firstcourserecord/FIRC0092.java

@@ -30,10 +30,10 @@ public class FIRC0092 extends QCCatalogue {
             return;
         }
         String text = treatPlanLabel.getText();
-        boolean findText = false;
-        if (StringUtil.isNotBlank(text) && text.contains("护理")) {
-            findText = true;
-        }
+//        boolean findText = false;
+//        if (StringUtil.isNotBlank(text) && text.contains("护理")) {
+//            findText = true;
+//        }
 
         Map<String, String> structureMap = firstCourseRecordDoc.getStructureMap();
         String structureV = structureMap.get("诊疗计划");
@@ -41,12 +41,10 @@ public class FIRC0092 extends QCCatalogue {
             status.set("0");
             return;
         }
-        if (StringUtil.isNotBlank(structureV) && structureV.contains("护理")) {
-            findText = true;
-        }
-        if ((treatPlanLabel.getNursingLevel() != null || findText) && !treatPlanLabel.getNursingLevel().getName().contains("护理常规") &&
-                (treatPlanLabel.getMedicine() != null || treatPlanLabel.getTreat().size() > 0
-                        || treatPlanLabel.getPacs().size() > 0)) {
+//        if (StringUtil.isNotBlank(structureV) && structureV.contains("护理")) {
+//            findText = true;
+//        }
+        if (treatPlanLabel.getMedicine() != null || treatPlanLabel.getTreat().size() > 0 || treatPlanLabel.getPacs().size() > 0) {
             status.set("0");
             return;
         }

+ 3 - 8
kernel/src/main/java/com/lantone/qc/kernel/catalogue/yiwu/firstpagerecord/FIRP0190.java

@@ -33,9 +33,10 @@ public class FIRP0190 extends QCCatalogue {
         if (CatalogueUtil.isEmpty(rhFactor)) {
             return;
         }
+        rhFactor = "RH" + rhFactor;
         int matchSum = 0, noRhSum = 0;
         for (ClinicalBloodDoc clinicalBloodDoc : clinicalBloodDocList) {
-            String bloodType = clinicalBloodDoc.getStructureMap().get("输注种类、血型、数量");
+            String bloodType = clinicalBloodDoc.getStructureMap().get("病情记录");
             if (StringUtil.isBlank(bloodType)) {
                 // 台州无“输注种类、血型、数量”,匹配“Rh血型”
                 bloodType = clinicalBloodDoc.getStructureMap().get("Rh血型");
@@ -46,15 +47,9 @@ public class FIRP0190 extends QCCatalogue {
             if (!bloodType.contains("阴") && !bloodType.contains("阳")) {
                 noRhSum++;
             }
-            if (bloodType.contains("白蛋白") || bloodType.contains("凝血酶原复合物")) {
-                continue;
-            }
             bloodType = bloodType.toUpperCase();
-            String rh = Content.rhFactor.toUpperCase();
-            if (bloodType.contains(rh) ||
-                    bloodType.contains(CatalogueUtil.removeSpecialChar(rhFactor))) {
+            if (bloodType.contains(rhFactor)) {
                 matchSum++;
-                return ;
             }
         }
         /* 如果所有输血记录都没有rh记录(阴、阳),则不报错 */

+ 3 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/yiwu/firstpagerecord/FIRP0222.java

@@ -36,6 +36,9 @@ public class FIRP0222 extends QCCatalogue {
         Map<String, String> medStructureMap = medicalRecordInfoDoc.getStructureMap();
         String admitDept = firpStructureMap.get(Content.admitDept);
         String behDeptId = medStructureMap.get("behDeptName");
+        if ("产科".equals(admitDept) && ("产一".equals(behDeptId) || "产二".equals(behDeptId))) {
+            return;
+        }
         if (StringUtil.isNotBlank(admitDept) && StringUtil.isNotBlank(behDeptId) && !admitDept.equals(behDeptId)) {
             status.set("-1");
         }

+ 10 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/yiwu/threelevelward/THR0141.java

@@ -26,6 +26,16 @@ public class THR0141 extends QCCatalogue {
         if (inputInfo.getThreeLevelWardDocs().size() == 0) {
             return;
         }
+        String leaveDateStr = null;
+        if (inputInfo.getLeaveHospitalDoc() != null) {
+            leaveDateStr = inputInfo.getLeaveHospitalDoc().getStructureMap().get("出院时间");
+        }
+        if (StringUtil.isBlank(leaveDateStr) && inputInfo.getFirstPageRecordDoc() != null) {
+            leaveDateStr = inputInfo.getFirstPageRecordDoc().getStructureMap().get("出院时间");
+        }
+        if (StringUtil.isBlank(leaveDateStr)) {
+            return;
+        }
         List<ThreeLevelWardDoc> allDoctorWradDocs = inputInfo.getThreeLevelWardDocs().get(0).getAllDoctorWradDocs();
         if (ListUtil.isEmpty(allDoctorWradDocs)) {
             return;