فهرست منبع

主要手术及操作名称与病程记录不一致

kongwz 5 سال پیش
والد
کامیت
0f660361e0

+ 5 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstpagerecord/FIRP0192.java

@@ -50,6 +50,11 @@ public class FIRP0192 extends QCCatalogue {
                     operationName = operationDoc.getOperationDiscussionDoc().getStructureMap().get("手术名称");
                 }
                 if (StringUtil.isNotBlank(operationName)) {
+                    operationName = operationName.replaceAll("[\\p{Punct}\\pP]", "").replaceAll("\\s*","");
+                    oName = oName.replaceAll("[\\p{Punct}\\pP]", "").replaceAll("\\s*","");
+                    if(operationName.contains(oName)){
+                        return;
+                    }
                     String[] operationNames = operationName.split("\\+");
                     JSONArray jsonArray = modelAI.loadChiefPresentSimilarAI(oName, Arrays.asList(operationNames), false
                             , "operation", chiefPresentSimilarityServiceClient);

+ 18 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR03021.java

@@ -17,6 +17,7 @@ import java.util.Map;
 /**
  * @ClassName : THR03021
  * @Description : 入院48小时内无Fellow以上的医生查房记录
+ * 添加条件,如果记录医师为A,则不报
  * @Author : 胡敬
  * @Date: 2020-03-19 15:50
  */
@@ -49,6 +50,7 @@ public class THR03021 extends QCCatalogue {
                 String wardDateStr = firstAttending.getStructureMap().get("查房日期");
                 if (!CatalogueUtil.compareTime(StringUtil.parseDateTime(admisTime), StringUtil.parseDateTime(wardDateStr), 48 * 60L)) {
                     status.set("0");
+                    return;
                 }
             }
             if (directorDoctorWardDocs.size() > 0) {
@@ -56,8 +58,24 @@ public class THR03021 extends QCCatalogue {
                 String wardDateStr = firstDirector.getStructureMap().get("查房日期");
                 if (!CatalogueUtil.compareTime(StringUtil.parseDateTime(admisTime), StringUtil.parseDateTime(wardDateStr), 48 * 60L)) {
                     status.set("0");
+                    return;
                 }
             }
+
+            List<ThreeLevelWardDoc> allDoctorWradDocs = threeLevelWardDoc.getAllDoctorWradDocs();
+            if(allDoctorWradDocs.size() >0){
+                for (ThreeLevelWardDoc tll:allDoctorWradDocs
+                     ) {
+                    String job = tll.getStructureMap().get("记录医师个人职称");
+                    String decoDa = tll.getStructureMap().get("查房日期");
+                    if (!CatalogueUtil.compareTime(StringUtil.parseDateTime(admisTime), StringUtil.parseDateTime(decoDa), 48 * 60L)
+                    && job.equals("A")) {
+                        status.set("0");
+                        return;
+                    }
+                }
+            }
+
         } else {
             //没有出院小结,这条直接不报错
             status.set("0");