Explorar o código

北仑:手术记录未记录日期的情况处理

wangsy %!s(int64=4) %!d(string=hai) anos
pai
achega
1f3c1f4485

+ 3 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/beilun/operationdiscussion/OPE0369.java

@@ -55,6 +55,9 @@ public class OPE0369 extends QCCatalogue {
                 if (operationDoc.getOperationRecordDoc() != null) {
                     Map<String, String> operationDocStructureMap = operationDoc.getOperationRecordDoc().getStructureMap();
                     operationStartDate = operationDocStructureMap.get("手术开始时间");
+                    if (operationStartDate.contains("年月日")) {
+                        continue;
+                    }
                     if (StringUtil.isNotBlank(operationStartDate)) {
                         if (!CatalogueUtil.compareTime(
                                 StringUtil.parseDateTime(admisTime),

+ 5 - 5
kernel/src/main/java/com/lantone/qc/kernel/catalogue/beilun/preoperativediscussion/PRE0328.java

@@ -45,7 +45,8 @@ public class PRE0328 extends QCCatalogue {
             if (operationRecordDoc != null) {
                 startTime = operationRecordDoc.getStructureMap().get("手术开始时间");
             }
-            if (StringUtil.isNotBlank(startTime) && StringUtil.isNotBlank(admisTime)) {
+            if (StringUtil.isNotBlank(startTime) && StringUtil.isNotBlank(admisTime) &&
+                    !startTime.contains("年月日")) {
                 if (!CatalogueUtil.compareTime(
                         StringUtil.parseDateTime(admisTime),
                         StringUtil.parseDateTime(startTime),
@@ -64,9 +65,9 @@ public class PRE0328 extends QCCatalogue {
         }
         //医嘱中包含“冠状动脉造影术”,且无术前讨论.则报规则
         for (DoctorAdviceDoc doctorAdviceDoc : doctorAdviceDocs) {
-            Map<String,String> doctorAdviceStructuerMap = doctorAdviceDoc.getStructureMap();
+            Map<String, String> doctorAdviceStructuerMap = doctorAdviceDoc.getStructureMap();
             String advicename = doctorAdviceStructuerMap.get("医嘱项目名称");
-            if(StringUtil.isNotBlank(advicename) && advicename.contains("冠状动脉造影术") &&  j==0){
+            if (StringUtil.isNotBlank(advicename) && advicename.contains("冠状动脉造影术") && j == 0) {
                 status.set("-1");
                 info.set("手术记录不一致");
             }
@@ -101,8 +102,7 @@ public class PRE0328 extends QCCatalogue {
             }
             Map<String, String> structureMap = operationRecordDoc.getStructureMap();
             String operationStartDateStr = structureMap.get("手术开始时间");
-            // String operationEndDateStr = structureMap.get("手术结束时间");
-            if (StringUtil.isNotBlank(operationStartDateStr)) {
+            if (StringUtil.isNotBlank(operationStartDateStr) && DateUtil.parseDateTime(operationStartDateStr) != null) {
                 Date operationStartDate = StringUtil.parseDateTime(operationStartDateStr);
                 operationStartDate = DateUtil.dateZeroClear(operationStartDate);
                 if (operationStartDate != null) {

+ 3 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/beilun/threelevelward/THR02900.java

@@ -62,6 +62,9 @@ public class THR02900 extends QCCatalogue {
                 opeEndTime = opeEndTime.substring(17);
             }
             String chiefSurgeon = structureMap.get("主刀医师");
+            if (opeEndTime.contains("年月日")) {
+                continue;
+            }
             Date opeEndDate = CatalogueUtil.parseStringDate(opeEndTime);
             if (opeEndDate == null) {
                 continue;