Browse Source

代码优化

gaodm 5 years ago
parent
commit
b859c496d0

+ 3 - 1
icss-service/src/main/java/com/diagbot/facade/FeatureFacade.java

@@ -57,7 +57,9 @@ public class FeatureFacade {
     public List<FeatureConceptDTO> addQuestionId(List<FeatureConceptDTO> concepts, Integer type) {
         QueryWrapper<QuestionInfo> questionInfoQueryWrapper = new QueryWrapper<>();
         List<String> nameList = concepts.stream().map(concept -> concept.getName()).collect(Collectors.toList());
-        questionInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey()).in("tag_name", nameList).eq("type", type);
+        questionInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .in("tag_name", nameList)
+                .eq("type", type);
         List<QuestionInfo> questionInfoList = questionFacade.list(questionInfoQueryWrapper);
         if (ListUtil.isNotEmpty(questionInfoList)) {
             Map<String, QuestionInfo> questionInfoMap = EntityUtil.makeEntityMap(questionInfoList, "tagName");

+ 10 - 5
icss-service/src/main/java/com/diagbot/facade/InquiryDetailFacade.java

@@ -1,9 +1,11 @@
 package com.diagbot.facade;
 
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
 
+import com.diagbot.util.ListUtil;
 import org.springframework.stereotype.Component;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -50,11 +52,14 @@ public class InquiryDetailFacade extends InquiryDetailServiceImpl {
      * @return
      */
     public Map<Long, List<InquiryDetail>> getDetailsByInquryIds(List<Long> inquiryIds) {
-        QueryWrapper<InquiryDetail> queryWrapper = new QueryWrapper<InquiryDetail>();
-        queryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
-                .in("inquiry_id", inquiryIds);
-        List<InquiryDetail> inquiryDetails = this.list(queryWrapper);
-        return inquiryDetails.stream().collect(Collectors.groupingBy(InquiryDetail::getInquiryId));
+        if (ListUtil.isNotEmpty(inquiryIds)){
+            QueryWrapper<InquiryDetail> queryWrapper = new QueryWrapper<InquiryDetail>();
+            queryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                    .in("inquiry_id", inquiryIds);
+            List<InquiryDetail> inquiryDetails = this.list(queryWrapper);
+            return inquiryDetails.stream().collect(Collectors.groupingBy(InquiryDetail::getInquiryId));
+        }
+        return new HashMap<>();
     }
 
 

+ 9 - 6
icss-service/src/main/java/com/diagbot/facade/QuestionFacade.java

@@ -86,12 +86,15 @@ public class QuestionFacade extends QuestionInfoServiceImpl {
      * @return
      */
     public Map<Long, QuestionInfo> getQuestionInfos(List<Long> questionIdList) {
-        QueryWrapper<QuestionInfo> questionInfoQueryWrapper = new QueryWrapper<>();
-        questionInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
-                .in("id", questionIdList);
-        List<QuestionInfo> questionInfoList = this.list(questionInfoQueryWrapper);
-        Map<Long, QuestionInfo> map = questionInfoList.stream()
-                .collect(Collectors.toMap(QuestionInfo::getId, questionInfo -> questionInfo));
+        Map<Long, QuestionInfo> map = new HashMap<>();
+        if (ListUtil.isNotEmpty(questionIdList)) {
+            QueryWrapper<QuestionInfo> questionInfoQueryWrapper = new QueryWrapper<>();
+            questionInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                    .in("id", questionIdList);
+            List<QuestionInfo> questionInfoList = this.list(questionInfoQueryWrapper);
+            map = questionInfoList.stream()
+                    .collect(Collectors.toMap(QuestionInfo::getId, questionInfo -> questionInfo));
+        }
         return map;
     }
 

+ 16 - 9
icss-service/src/main/java/com/diagbot/facade/RetrievalFacade.java

@@ -19,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
@@ -61,14 +62,19 @@ public class RetrievalFacade {
                     questionNames.add(conceptRetrievalDTO.getParentName());
                 }
             }
-            QueryWrapper<QuestionInfo> questionInfoQueryWrapper = new QueryWrapper<>();
-            questionInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
-                    .in("tag_name", questionNames)
-                    .eq("type", retrievalVO.getType())
-                    .ne("tag_type", 8)
-                    .eq("item_type", 0);
-            List<QuestionInfo> questionInfoList = questionFacade.list(questionInfoQueryWrapper);
-            Map<String, QuestionInfo> questionInfoMap = questionInfoList.stream().collect(Collectors.toMap(QuestionInfo::getTagName, questionInfo -> questionInfo));
+
+            Map<String, QuestionInfo> questionInfoMap = new HashMap<>();
+            if (ListUtil.isNotEmpty(questionNames)){
+                QueryWrapper<QuestionInfo> questionInfoQueryWrapper = new QueryWrapper<>();
+                questionInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                        .in("tag_name", questionNames)
+                        .eq("type", retrievalVO.getType())
+                        .ne("tag_type", 8)
+                        .eq("item_type", 0);
+                List<QuestionInfo> questionInfoList = questionFacade.list(questionInfoQueryWrapper);
+                questionInfoMap = questionInfoList.stream()
+                        .collect(Collectors.toMap(QuestionInfo::getTagName, questionInfo -> questionInfo));
+            }
             RetrievalDTO retrievalDTO = new RetrievalDTO();
             //封装
             for (ConceptRetrievalDTO conceptRetrievalDTO : conceptInfos.data) {
@@ -145,7 +151,8 @@ public class RetrievalFacade {
                     .ne("tag_type", 8)
                     .in("type", typeList);
             List<QuestionInfo> questionInfoList = questionFacade.list(questionInfoQueryWrapper);
-            Map<String, QuestionInfo> questionInfoMap = questionInfoList.stream().collect(Collectors.toMap(QuestionInfo::getTagName, questionInfo -> questionInfo));
+            Map<String, QuestionInfo> questionInfoMap = questionInfoList.stream()
+                    .collect(Collectors.toMap(QuestionInfo::getTagName, questionInfo -> questionInfo));
             for (RetrievalDTO retrievalDTOInfo : retrievalDTOList.data) {
                 if (null != questionInfoMap.get(retrievalDTOInfo.getName())) {//设置questionId
                     retrievalDTOInfo.setQuestionId(questionInfoMap.get(retrievalDTOInfo.getName()).getId());