瀏覽代碼

Icss获取模板bug修复

wangyu 6 年之前
父節點
當前提交
ce906a008d

+ 1 - 1
aipt-service/src/main/java/com/diagbot/web/ConceptController.java

@@ -83,7 +83,7 @@ public class ConceptController {
                     "sexType: 性别<br>")
     @PostMapping("/getConceptCondMap")
     @SysLogger("getConceptCondMap")
-    public RespDTO<Map<String, Long>> getConceptCondMap(@RequestBody ConceptFindVO conceptFindVO) {
+    public RespDTO<Map<Long, String>> getConceptCondMap(@RequestBody ConceptFindVO conceptFindVO) {
         return RespDTO.onSuc(conceptFacade.getConceptCondMap(conceptFindVO));
     }
 

+ 1 - 1
icss-service/src/main/java/com/diagbot/client/AiptServiceClient.java

@@ -141,7 +141,7 @@ public interface AiptServiceClient {
      * @return 术语id和术语 Map
      */
     @PostMapping("/concept/getConceptCondMap")
-    RespDTO<Map<String, Long>> getConceptCondMap(@RequestBody ConceptFindVO conceptFindVO);
+    RespDTO<Map<Long, String>> getConceptCondMap(@RequestBody ConceptFindVO conceptFindVO);
 
     /**
      * 获取治疗方案

+ 38 - 12
icss-service/src/main/java/com/diagbot/facade/ModuleFacade.java

@@ -15,6 +15,7 @@ import com.diagbot.util.BeanUtil;
 import com.diagbot.util.EntityUtil;
 import com.diagbot.util.ListUtil;
 import com.diagbot.util.RespDTOUtil;
+import com.diagbot.vo.ConceptFindVO;
 import com.diagbot.vo.ConceptSearchVO;
 import com.diagbot.vo.ModuleVO;
 import com.diagbot.vo.QuestionVO;
@@ -49,29 +50,39 @@ public class ModuleFacade extends ModuleInfoServiceImpl {
      * @return 模型结构
      */
     public List<ModuleInfoDTO> getAll(ModuleVO moduleVO) {
+        ConceptFindVO conceptFindVO = new ConceptFindVO();
         ConceptSearchVO conceptSearchVO = new ConceptSearchVO();
         List<ModuleInfoDTO> data = new ArrayList<>();
         //取到所有模板信息
         List<ModuleInfo> list = new ArrayList<>();
         List<Long> ids = new ArrayList<>();
         List<Long> pacsConceptIds = new ArrayList<>();//辅检名称列表
+        List<Long> pacModuleIds = new ArrayList<>();//模板中辅检id
         Boolean isDefault = false;
         if (moduleVO.getMouduleType().intValue() == 1) {
             //根据科室筛选如果没有,返回通用模板
             list = getModuleInfoByDisType(moduleVO.getMouduleType(), moduleVO.getRelationId());
             if (ListUtil.isNotEmpty(list)) {
-                ids = list.stream()
-                        .map(moduleInfo -> moduleInfo.getId())
-                        .collect(Collectors.toList());
+                for (ModuleInfo moduleInfo : list) {
+                    if (Integer.parseInt(moduleInfo.getType()) == QuestionTypeEnum.Pacs.getKey()){
+                        pacModuleIds.add(moduleInfo.getId());
+                    }else {
+                        ids.add(moduleInfo.getId());
+                    }
+                }
             } else {
                 isDefault = true;
             }
         } else if (moduleVO.getMouduleType().intValue() == 2) {
             //根据慢病筛选
             list = getModuleInfoByDisType(moduleVO.getMouduleType(), moduleVO.getRelationId());
-                ids = list.stream()
-                        .map(moduleDeptMapping -> moduleDeptMapping.getId())
-                        .collect(Collectors.toList());
+            for (ModuleInfo moduleInfo : list) {
+                if (Integer.parseInt(moduleInfo.getType()) == QuestionTypeEnum.Pacs.getKey()){
+                    pacModuleIds.add(moduleInfo.getId());
+                }else {
+                    ids.add(moduleInfo.getId());
+                }
+            }
         } else {
             isDefault = true;
         }
@@ -80,9 +91,13 @@ public class ModuleFacade extends ModuleInfoServiceImpl {
         if (isDefault) {
             //默认
             list = getModuleInfoByDisType(0, 0L);
-            ids = list.stream()
-                    .map(moduleInfo -> moduleInfo.getId())
-                    .collect(Collectors.toList());
+            for (ModuleInfo moduleInfo : list) {
+                if (Integer.parseInt(moduleInfo.getType()) == QuestionTypeEnum.Pacs.getKey()){
+                    pacModuleIds.add(moduleInfo.getId());
+                }else {
+                    ids.add(moduleInfo.getId());
+                }
+            }
         }
         data = BeanUtil.listCopyTo(list, ModuleInfoDTO.class);
         Map<Long, ModuleInfo> moduleInfoMap
@@ -95,6 +110,15 @@ public class ModuleFacade extends ModuleInfoServiceImpl {
             paramMap.put("sexType", moduleVO.getSexType());
             paramMap.put("age", moduleVO.getAge());
             List<ModuleDetail> moduleDetailList = moduleDetailFacade.getDetailByModuleFac(paramMap);
+            if(ListUtil.isNotEmpty(pacModuleIds)){
+                QueryWrapper<ModuleDetail> moduleDetailQueryWrapper = new QueryWrapper<>();
+                moduleDetailQueryWrapper.eq("is_deleted",IsDeleteEnum.N.getKey())
+                        .in("module_id",pacModuleIds);
+               List<ModuleDetail> moduleDetails = moduleDetailFacade.list(moduleDetailQueryWrapper);
+                for (ModuleDetail moduleDetail : moduleDetails) {
+                    moduleDetailList.add(moduleDetail);
+                }
+            }
             if (ListUtil.isNotEmpty(moduleDetailList)) {
                 moduleDetailMap = EntityUtil.makeEntityListMap(moduleDetailList, "moduleId");
             }
@@ -127,9 +151,11 @@ public class ModuleFacade extends ModuleInfoServiceImpl {
         RespDTO<Map<Long,String>> pacsRespDTO = null;
         //辅检
         if(ListUtil.isNotEmpty(pacsConceptIds)){
-            conceptSearchVO =  new ConceptSearchVO();
-            conceptSearchVO.setConceptIds(pacsConceptIds);
-            pacsRespDTO = aiptServiceClient.getConceptMap(conceptSearchVO);
+            conceptFindVO = new ConceptFindVO();
+            conceptFindVO.setConceptIds(pacsConceptIds);
+            conceptFindVO.setAge(moduleVO.getAge());
+            conceptFindVO.setSexType(moduleVO.getSexType());
+            pacsRespDTO = aiptServiceClient.getConceptCondMap(conceptFindVO);
             RespDTOUtil.respNGDeal(pacsRespDTO,"获取辅检标签失败");
         }
         if(ListUtil.isNotEmpty(pacsConceptIds)){//如果存在辅检相关信息添加数据返回