فهرست منبع

Merge remote-tracking branch 'origin/master'

MarkHuang 4 سال پیش
والد
کامیت
e174b957da

+ 18 - 2
src/main/java/com/diagbot/facade/CriticalFacade.java

@@ -4,11 +4,14 @@ import com.diagbot.dto.CriticalNeoDTO;
 import com.diagbot.dto.IndicationDTO;
 import com.diagbot.dto.WordCrfDTO;
 import com.diagbot.process.CriticalProcess;
+import com.diagbot.util.ListUtil;
 import com.diagbot.vo.CriticalNeoVO;
 import com.diagbot.vo.IndicationPushVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
+import java.util.ArrayList;
+import java.util.Iterator;
 import java.util.List;
 
 /**
@@ -34,8 +37,21 @@ public class CriticalFacade {
         CriticalNeoVO criticalNeoVOs = fillCriticalNeo(wordCrfDTO);
         List<CriticalNeoDTO> criticalNeoDTOList = neoFacade.getCritialNeo(criticalNeoVOs);
 
-        // 规则处理
-        criticalProcess.process(criticalNeoDTOList, wordCrfDTO, res);
+        // 危急值去重,否则结果出现重复数据
+        if (ListUtil.isNotEmpty(criticalNeoDTOList)) {
+            List<String> standNameList = new ArrayList<>();
+            Iterator<CriticalNeoDTO> it = criticalNeoDTOList.iterator();
+            while (it.hasNext()) {
+                CriticalNeoDTO criticalNeoDTO = it.next();
+                if (standNameList.contains(criticalNeoDTO.getStandname())) {
+                    it.remove();
+                } else {
+                    standNameList.add(criticalNeoDTO.getStandname());
+                }
+            }
+            // 规则处理
+            criticalProcess.process(criticalNeoDTOList, wordCrfDTO, res);
+        }
     }
 
 

+ 1 - 1
src/main/java/com/diagbot/rule/CommonRule.java

@@ -71,7 +71,7 @@ public class CommonRule {
      * @param billMsgList
      */
     public static void repeat24Bill(WordCrfDTO wordCrfDTO, List<BillMsg> billMsgList) {
-        // repeat24BillWithLisType(billMsgList, wordCrfDTO.getLisOrder(), TypeEnum.lis.getName()); // 化验重复开单
+        repeat24BillWithLisType(billMsgList, wordCrfDTO.getLisOrder(), TypeEnum.lis.getName()); // 化验重复开单
         repeat24BillWithPacsType(billMsgList, wordCrfDTO.getPacsOrder(), TypeEnum.pacs.getName()); // 辅检重复开单
         repeat24BillWithType(billMsgList, wordCrfDTO.getDrugOrder(), TypeEnum.drug.getName()); // 药品重复开单
         repeat24BillWithType(billMsgList, wordCrfDTO.getOperationOrder(), TypeEnum.operation.getName()); // 手术重复开单

+ 17 - 0
src/main/java/com/diagbot/vo/ItemExt.java

@@ -0,0 +1,17 @@
+package com.diagbot.vo;
+
+import com.diagbot.biz.push.entity.Item;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: gaodm
+ * @time: 2020/8/27 19:09
+ */
+@Getter
+@Setter
+public class ItemExt extends Item {
+    // 备注内容
+    private String remark;
+}

+ 8 - 0
src/main/java/com/diagbot/vo/SearchData.java

@@ -125,6 +125,10 @@ public class SearchData extends HospitalBaseVO {
      * 手术及操作
      */
     private List<Item> operation = new ArrayList<>();
+    /**
+     * 输血记录
+     */
+    private List<ItemExt> transfusion = new ArrayList<>();
     /**
      * 当前化验开单项
      */
@@ -145,6 +149,10 @@ public class SearchData extends HospitalBaseVO {
      * 当前手术开单项
      */
     private List<Item> operationOrder = new ArrayList<>();
+    /**
+     * 当前输血开单项
+     */
+    private List<ItemExt> transfusionOrder = new ArrayList<>();
     /**
      * 其他开单项
      */