Quellcode durchsuchen

1、已下诊断

zhaops vor 3 Jahren
Ursprung
Commit
2483d652e9
1 geänderte Dateien mit 27 neuen und 1 gelöschten Zeilen
  1. 27 1
      src/main/java/com/diagbot/facade/PushFacade.java

+ 27 - 1
src/main/java/com/diagbot/facade/PushFacade.java

@@ -1,5 +1,6 @@
 package com.diagbot.facade;
 
+import com.diagbot.biz.push.entity.Item;
 import com.diagbot.client.CdssCoreClient;
 import com.diagbot.dto.BillMsg;
 import com.diagbot.dto.ConceptDetailDTO;
@@ -29,8 +30,10 @@ import org.springframework.stereotype.Component;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.HashMap;
+import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 import java.util.stream.Collectors;
 
 /**
@@ -55,6 +58,10 @@ public class PushFacade {
      * @param pushVO
      */
     public PushDTO push(PushVO pushVO) {
+        List<String> featureTypes = StringUtil.isNotBlank(pushVO.getFeatureType())
+                ? Arrays.asList(pushVO.getFeatureType().split(","))
+                : Lists.newArrayList();
+
         if (pushVO.getDiseaseName() != null
                 && StringUtil.isBlank(pushVO.getDiseaseName().getName())
                 && StringUtil.isBlank(pushVO.getDiseaseName().getUniqueName())) {
@@ -71,6 +78,23 @@ public class PushFacade {
         //------------------测试数据开始------------------
         //  PushDTO data = testDataPush();
         //------------------测试数据结束------------------
+
+        //已下诊断
+        data.setClickAffDis(Lists.newArrayList());
+        if (ListUtil.isNotEmpty(pushVO.getDiag())) {
+            Set<String> nameSet = new HashSet<>();
+            for (Item item : pushVO.getDiag()) {
+                if (nameSet.contains(item.getName())) {
+                    continue;
+                }
+                PushBaseDTO diagDto = new PushBaseDTO();
+                diagDto.setName(item.getUniqueName());
+                diagDto.setHisNameList(Arrays.asList(new String[] { item.getName() }));
+                nameSet.add(item.getName());
+                data.getClickAffDis().add(diagDto);
+            }
+        }
+
         //出参映射
         data = assembleFacade.assemblePushDTO(data, pushVO.getHospitalId());
         //是否有静态信息
@@ -80,7 +104,9 @@ public class PushFacade {
         }
         //一般治疗
         if (data != null) {
-            data.setTreat(retGeneraTreat(data, pushVO.getHospitalId()));
+            if (ListUtil.isNotEmpty(featureTypes) && featureTypes.contains("10")) {
+                data.setTreat(retGeneraTreat(data, pushVO.getHospitalId()));
+            }
         }
         return data;
     }