Kaynağa Gözat

转科逻辑调整

chengyao 3 yıl önce
ebeveyn
işleme
63a3dfe31f

+ 11 - 6
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR03137.java

@@ -42,7 +42,7 @@ public class THR03137 extends QCCatalogue {
         if(null != firstCourseRecordDoc && StringUtils.isNotBlank(firstCourseRecordDoc.getStructureMap().get("临床科室")) &&  null != leaveHospitalDoc && StringUtils.isNotBlank(leaveHospitalDoc.getStructureMap().get("临床科室"))){
             String deptFir = firstCourseRecordDoc.getStructureMap().get("临床科室");
             String deptSec= leaveHospitalDoc.getStructureMap().get("临床科室");
-            if(deptFir.equals(deptSec)){
+            if(!deptFir.equals(deptSec)){
                 flag = true;
             }
         }
@@ -50,7 +50,11 @@ public class THR03137 extends QCCatalogue {
         FirstPageRecordDoc firstPageRecordDoc = inputInfo.getFirstPageRecordDoc();
         if(null != firstPageRecordDoc && StringUtils.isNotBlank(firstPageRecordDoc.getStructureMap().get("入院科别")) &&
                 StringUtils.isNotBlank(firstPageRecordDoc.getStructureMap().get("出院科别"))){
-                 flag = true;
+            String deptFir = firstPageRecordDoc.getStructureMap().get("入院科别");
+            String deptSec= firstPageRecordDoc.getStructureMap().get("出院科别");
+            if(!deptFir.equals(deptSec)){
+                flag = true;
+            }
         }
         for (DoctorAdviceDoc doctorAdviceDoc : doctorAdviceDocs) {
             //取长期临时医嘱,不为作废医嘱
@@ -72,6 +76,7 @@ public class THR03137 extends QCCatalogue {
                                 //1.3【临时医嘱/长期医嘱】包含【转科医嘱】4字
                                 if(medicalOrderName.contains("转科医嘱")){
                                     flag = true;
+                                    break;
                                 }
                             }
                         }
@@ -80,7 +85,7 @@ public class THR03137 extends QCCatalogue {
             }
         }
         //1.4为转科人员判断是否有【转入记录/转科记录】
-        if(!flag){
+        if(flag){
             status.set("-1");
             TransferRecordDoc transferRecordDocs = inputInfo.getTransferRecordDocs();
             if(transferRecordDocs==null){
@@ -96,15 +101,15 @@ public class THR03137 extends QCCatalogue {
         }
 
         //2.1不存在【转入记录】或【转出记录】与【转入记录】数量不一致则报
-        status.set("-1");
+        status.set("0");
         TransferRecordDoc transferRecordDocs = inputInfo.getTransferRecordDocs();
         if(transferRecordDocs==null){
             return;
         }
         List<TransferIntoDoc> transferIntoDocs = transferRecordDocs.getTransferIntoDocs();
         List<TransferOutDoc> transferOutDocs = transferRecordDocs.getTransferOutDocs();
-        if(ListUtil.isNotEmpty(transferIntoDocs) && transferIntoDocs.size()== transferOutDocs.size()){
-            status.set("0");
+        if(ListUtil.isEmpty(transferIntoDocs) || (transferIntoDocs.size()>0 && transferIntoDocs.size() != transferOutDocs.size())){
+            status.set("-1");
             return;
         }
 

+ 10 - 6
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR03138.java

@@ -42,7 +42,7 @@ public class THR03138 extends QCCatalogue {
         if(null != firstCourseRecordDoc && StringUtils.isNotBlank(firstCourseRecordDoc.getStructureMap().get("临床科室")) &&  null != leaveHospitalDoc && StringUtils.isNotBlank(leaveHospitalDoc.getStructureMap().get("临床科室"))){
             String deptFir = firstCourseRecordDoc.getStructureMap().get("临床科室");
             String deptSec= leaveHospitalDoc.getStructureMap().get("临床科室");
-            if(deptFir.equals(deptSec)){
+            if(!deptFir.equals(deptSec)){
                 flag = true;
             }
         }
@@ -50,7 +50,11 @@ public class THR03138 extends QCCatalogue {
         FirstPageRecordDoc firstPageRecordDoc = inputInfo.getFirstPageRecordDoc();
         if(null != firstPageRecordDoc && StringUtils.isNotBlank(firstPageRecordDoc.getStructureMap().get("入院科别")) &&
                 StringUtils.isNotBlank(firstPageRecordDoc.getStructureMap().get("出院科别"))){
-            flag = true;
+            String deptFir = firstPageRecordDoc.getStructureMap().get("入院科别");
+            String deptSec= firstPageRecordDoc.getStructureMap().get("出院科别");
+            if(!deptFir.equals(deptSec)){
+                flag = true;
+            }
         }
         doc:
         for (DoctorAdviceDoc doctorAdviceDoc : doctorAdviceDocs) {
@@ -73,6 +77,7 @@ public class THR03138 extends QCCatalogue {
                                 //1.3【临时医嘱/长期医嘱】包含【转科医嘱】4字
                                 if(medicalOrderName.contains("转科医嘱")){
                                     flag = true;
+                                    break;
                                 }
                             }
                         }
@@ -96,18 +101,17 @@ public class THR03138 extends QCCatalogue {
         }
 
         //2.1不存在【转出记录】或【转出记录】与【转入记录】数量不一致则报
-        status.set("-1");
+        status.set("0");
         TransferRecordDoc transferRecordDocs = inputInfo.getTransferRecordDocs();
         if(transferRecordDocs==null){
             return;
         }
         List<TransferIntoDoc> transferIntoDocs = transferRecordDocs.getTransferIntoDocs();
         List<TransferOutDoc> transferOutDocs = transferRecordDocs.getTransferOutDocs();
-        if(ListUtil.isNotEmpty(transferOutDocs) && transferIntoDocs.size()== transferOutDocs.size()){
-            status.set("0");
+        if(ListUtil.isEmpty(transferOutDocs) || (transferOutDocs.size()>0 && transferIntoDocs.size()!= transferOutDocs.size())){
+            status.set("-1");
             return;
         }
-
     }