Browse Source

推理:查体标记,化验公表项映射套餐项

Zhaops 6 years ago
parent
commit
c8c39545ae

+ 1 - 0
icss-service/src/main/java/com/diagbot/dto/PushDTO.java

@@ -18,6 +18,7 @@ public class PushDTO {
     private List<QuestionDTO> symptom;
     private List<QuestionDTO> symptom;
     private List<QuestionDTO> other;
     private List<QuestionDTO> other;
     private List<QuestionDTO> vital;
     private List<QuestionDTO> vital;
+    private List<QuestionDTO> importantVital;
     private List<QuestionDTO> lab;
     private List<QuestionDTO> lab;
     private List<QuestionDTO> pacs;
     private List<QuestionDTO> pacs;
     private Map<String, List<QuestionDTO>> dis;
     private Map<String, List<QuestionDTO>> dis;

+ 16 - 7
icss-service/src/main/java/com/diagbot/facade/PushFacade.java

@@ -1,11 +1,9 @@
 package com.diagbot.facade;
 package com.diagbot.facade;
 
 
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.JSONObject;
-import com.alibaba.fastjson.JSONPObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.diagbot.client.AIServiceClient;
 import com.diagbot.client.AIServiceClient;
 import com.diagbot.client.HighRiskServiceClient;
 import com.diagbot.client.HighRiskServiceClient;
-import com.diagbot.client.bean.Feature;
 import com.diagbot.client.bean.FeatureRate;
 import com.diagbot.client.bean.FeatureRate;
 import com.diagbot.client.bean.GdbResponse;
 import com.diagbot.client.bean.GdbResponse;
 import com.diagbot.client.bean.MedicalIndication;
 import com.diagbot.client.bean.MedicalIndication;
@@ -38,14 +36,11 @@ import com.diagbot.util.StringUtil;
 import com.diagbot.vo.LisKYJVO;
 import com.diagbot.vo.LisKYJVO;
 import com.diagbot.vo.LisResult;
 import com.diagbot.vo.LisResult;
 import com.diagbot.vo.LisResultVO;
 import com.diagbot.vo.LisResultVO;
-import com.diagbot.vo.MedicalIndicationVO;
 import com.diagbot.vo.PushKYJVO;
 import com.diagbot.vo.PushKYJVO;
 import com.diagbot.vo.PushVO;
 import com.diagbot.vo.PushVO;
 import com.diagbot.vo.QuestionVO;
 import com.diagbot.vo.QuestionVO;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Lists;
-import org.aspectj.weaver.patterns.TypePatternQuestions;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Bean;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 
 
 import java.util.Arrays;
 import java.util.Arrays;
@@ -158,6 +153,7 @@ public class PushFacade {
         List<FeatureRate> dis = data.getDis();
         List<FeatureRate> dis = data.getDis();
         List<FeatureRate> pacs = data.getPacs();
         List<FeatureRate> pacs = data.getPacs();
         List<FeatureRate> labs = data.getLabs();
         List<FeatureRate> labs = data.getLabs();
+        List<FeatureRate> vitals = data.getVitals();
         List<FeatureRate> other = data.getHistory();
         List<FeatureRate> other = data.getHistory();
         Map<String, JSONObject> treat = data.getTreat();
         Map<String, JSONObject> treat = data.getTreat();
         Map<String, JSONObject> scale = data.getScale();
         Map<String, JSONObject> scale = data.getScale();
@@ -165,9 +161,10 @@ public class PushFacade {
         List<MedicalIndication> medicalIndicationList = data.getMedicalIndications();
         List<MedicalIndication> medicalIndicationList = data.getMedicalIndications();
 
 
         Map<String, Object> symptomMap = list2Map(symptom);
         Map<String, Object> symptomMap = list2Map(symptom);
+        Map<String, Object> otherMap = list2Map(other);
+        Map<String, Object> importantVital = list2Map(vitals);
         Map<String, Object> labMap = list2Map(labs);
         Map<String, Object> labMap = list2Map(labs);
         Map<String, Object> pacsMap = list2Map(pacs);
         Map<String, Object> pacsMap = list2Map(pacs);
-        Map<String, Object> otherMap = list2Map(other);
 
 
         //症状 标签列表
         //症状 标签列表
         if (featureTypeSet.contains(String.valueOf(FeatureTypeEnum.Symptom.getKey()))) {
         if (featureTypeSet.contains(String.valueOf(FeatureTypeEnum.Symptom.getKey()))) {
@@ -192,10 +189,22 @@ public class PushFacade {
             List<QuestionDTO> vitalDTO = getVitalModule(deptName, pushVO);
             List<QuestionDTO> vitalDTO = getVitalModule(deptName, pushVO);
             pushDTO.setVital(vitalDTO);
             pushDTO.setVital(vitalDTO);
 
 
+            //查体标记项
+            List<QuestionDTO> importantVitalDTO = getTagListByMap(importantVital, pushVO, FeatureTypeEnum.Vital.getKey());
+            pushDTO.setImportantVital(importantVitalDTO);
         }
         }
         //化验  标签列表
         //化验  标签列表
         if (featureTypeSet.contains(String.valueOf(FeatureTypeEnum.Lis.getKey()))) {
         if (featureTypeSet.contains(String.valueOf(FeatureTypeEnum.Lis.getKey()))) {
-            List<QuestionDTO> labDTO = getTagListByMap(labMap, pushVO, FeatureTypeEnum.Lis.getKey());
+            //公表项转套餐项
+            Map<String, List<String>> lisMapping = lisMappingFacade.getLisMappingByUniqueName();
+            Map<String, Object> mealLabMap = new LinkedHashMap<>();
+            for (Map.Entry<String, Object> entry : labMap.entrySet()) {
+                if (ListUtil.isNotEmpty(lisMapping.get(entry.getKey()))) {
+                    //匹配出多个套餐项默认取第一个
+                    mealLabMap.put(lisMapping.get(entry.getKey()).get(0), null);
+                }
+            }
+            List<QuestionDTO> labDTO = getTagListByMap(mealLabMap, pushVO, FeatureTypeEnum.Lis.getKey());
             pushDTO.setLab(labDTO);
             pushDTO.setLab(labDTO);
         }
         }
         //辅检  标签列表
         //辅检  标签列表

+ 3 - 0
icss-service/src/main/java/com/diagbot/web/PushController.java

@@ -18,6 +18,7 @@ import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.bind.annotation.RestController;
+import springfox.documentation.annotations.ApiIgnore;
 
 
 import javax.validation.Valid;
 import javax.validation.Valid;
 import java.util.List;
 import java.util.List;
@@ -129,12 +130,14 @@ public class PushController {
 
 
     @PostMapping("/getScaleContent")
     @PostMapping("/getScaleContent")
     @SysLogger("getScaleContent")
     @SysLogger("getScaleContent")
+    @ApiIgnore
     public RespDTO<String> getScaleContent(@RequestBody @Valid PushVO pushVO) {
     public RespDTO<String> getScaleContent(@RequestBody @Valid PushVO pushVO) {
         return RespDTO.onSuc(pushFacade.getScaleContent(pushVO));
         return RespDTO.onSuc(pushFacade.getScaleContent(pushVO));
     }
     }
 
 
     @PostMapping("/getManagementEvaluationContent")
     @PostMapping("/getManagementEvaluationContent")
     @SysLogger("getManagementEvaluationContent")
     @SysLogger("getManagementEvaluationContent")
+    @ApiIgnore
     public RespDTO<Map<String, JSONObject>> getManagementEvaluationContent(@RequestBody @Valid PushVO pushVO) {
     public RespDTO<Map<String, JSONObject>> getManagementEvaluationContent(@RequestBody @Valid PushVO pushVO) {
         List<String> titles = Lists.newLinkedList();
         List<String> titles = Lists.newLinkedList();
         titles.add("疗效评估");
         titles.add("疗效评估");