chengyao пре 4 година
родитељ
комит
aac733fb0f
1 измењених фајлова са 12 додато и 19 уклоњено
  1. 12 19
      src/main/java/com/diagbot/facade/BehospitalInfoFacade.java

+ 12 - 19
src/main/java/com/diagbot/facade/BehospitalInfoFacade.java

@@ -1573,24 +1573,17 @@ public class BehospitalInfoFacade extends BehospitalInfoServiceImpl {
             algorithmDTO = (AlgorithmDTO) resMap.get("algorithmDTO");
         }
 
-
-        // 返回缺陷提示信息
-        List<MsgDTO> msgDTOList = new ArrayList<>();
-        if (ListUtil.isNotEmpty(codeList)) {
-            AnalyzeCodeVO analyzeCodeVO = new AnalyzeCodeVO();
-            analyzeCodeVO.setCodeList(codeList);
-            analyzeCodeVO.setHospitalId(hospitalId);
-            //analyzeCodeVO.setModeId(analyzeRunVO.getModeId());
-
-            // 获取缺陷条目信息
-            msgDTOList = getMsgByEntryCode(analyzeCodeVO);
-            // 设置info信息
-            if (codeToInfoMap != null && !codeToInfoMap.isEmpty()) {
-                for (MsgDTO msgDTO : msgDTOList) {
-                    String info = codeToInfoMap.get(msgDTO.getCode());
-                    if (StringUtil.isNotBlank(info)) {
-                        msgDTO.setInfo(info);
-                    }
+        List<MsgDTO> msgDTOList = getMsg(analyzeVO);
+        if (ListUtil.isNotEmpty(msgDTOList)) {
+            // 从qc_question_info的cases_entry_ids获取
+            Map<String, Object> paramMap = new HashMap<>();
+            paramMap.put("hospitalId",  analyzeRunVO.getHospitalId());
+            paramMap.put("casesEntryIds", msgDTOList.stream().map(r -> r.getCasesEntryId()).collect(Collectors.toList()));
+            Map<Long, List<QuestionEntryDTO>> quesEntryMap = qcQuestionFacade.getByCaseEntryIdsFac(paramMap);
+            for (MsgDTO msgDTO : msgDTOList) {
+                if (quesEntryMap.get(msgDTO.getCasesEntryId()) != null) {
+                    msgDTO.setPageKeyList(quesEntryMap.get(msgDTO.getCasesEntryId())
+                            .stream().map(r -> r.getId()).collect(Collectors.toList()));
                 }
             }
         }
@@ -1610,7 +1603,7 @@ public class BehospitalInfoFacade extends BehospitalInfoServiceImpl {
             reNum = "1";
         }
         AnalyzeRunDTO analyzeRunDTO =  new AnalyzeRunDTO();
-        if(StringUtils.isNotEmpty(algorithmDTO.getLevel()) && algorithmDTO.getScore()!=null){
+        if(StringUtils.isNotEmpty(algorithmDTO.getLevel()) && algorithmDTO.getScore()!=null && msgDTOList != null){
             if("1".equals(reNum)) {
                 bigDecimal = resPr.subtract(algorithmDTO.getScore());
             }else if("0".equals(reNum)){