|
@@ -1,5 +1,26 @@
|
|
package com.diagbot.facade;
|
|
package com.diagbot.facade;
|
|
|
|
|
|
|
|
+import java.io.InputStream;
|
|
|
|
+import java.text.DecimalFormat;
|
|
|
|
+import java.util.ArrayList;
|
|
|
|
+import java.util.Date;
|
|
|
|
+import java.util.List;
|
|
|
|
+import java.util.Map;
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
+
|
|
|
|
+import org.apache.commons.lang.time.DateFormatUtils;
|
|
|
|
+import org.apache.poi.hssf.usermodel.HSSFDateUtil;
|
|
|
|
+import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
|
|
|
+import org.apache.poi.ss.usermodel.Cell;
|
|
|
|
+import org.apache.poi.ss.usermodel.Row;
|
|
|
|
+import org.apache.poi.ss.usermodel.Sheet;
|
|
|
|
+import org.apache.poi.ss.usermodel.Workbook;
|
|
|
|
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
+import org.springframework.beans.factory.annotation.Qualifier;
|
|
|
|
+import org.springframework.stereotype.Component;
|
|
|
|
+import org.springframework.web.multipart.MultipartFile;
|
|
|
|
+
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.diagbot.client.UserServiceClient;
|
|
import com.diagbot.client.UserServiceClient;
|
|
@@ -13,6 +34,8 @@ import com.diagbot.entity.RetrievalMapping;
|
|
import com.diagbot.enums.IsDeleteEnum;
|
|
import com.diagbot.enums.IsDeleteEnum;
|
|
import com.diagbot.exception.CommonErrorCode;
|
|
import com.diagbot.exception.CommonErrorCode;
|
|
import com.diagbot.exception.CommonException;
|
|
import com.diagbot.exception.CommonException;
|
|
|
|
+import com.diagbot.service.RetrievalMappingService;
|
|
|
|
+import com.diagbot.service.RetrievalService;
|
|
import com.diagbot.service.impl.RetrievalServiceImpl;
|
|
import com.diagbot.service.impl.RetrievalServiceImpl;
|
|
import com.diagbot.util.DateUtil;
|
|
import com.diagbot.util.DateUtil;
|
|
import com.diagbot.util.ListUtil;
|
|
import com.diagbot.util.ListUtil;
|
|
@@ -23,25 +46,6 @@ import com.diagbot.vo.AddTagRetrievalVO;
|
|
import com.diagbot.vo.DelRetrievalsByQuesIdVO;
|
|
import com.diagbot.vo.DelRetrievalsByQuesIdVO;
|
|
import com.diagbot.vo.GetRetrievalsByTagVO;
|
|
import com.diagbot.vo.GetRetrievalsByTagVO;
|
|
import com.diagbot.vo.RetrievalListVO;
|
|
import com.diagbot.vo.RetrievalListVO;
|
|
-import org.apache.commons.lang.time.DateFormatUtils;
|
|
|
|
-import org.apache.poi.hssf.usermodel.HSSFDateUtil;
|
|
|
|
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
|
|
|
-import org.apache.poi.ss.usermodel.Cell;
|
|
|
|
-import org.apache.poi.ss.usermodel.Row;
|
|
|
|
-import org.apache.poi.ss.usermodel.Sheet;
|
|
|
|
-import org.apache.poi.ss.usermodel.Workbook;
|
|
|
|
-import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
-import org.springframework.stereotype.Component;
|
|
|
|
-import org.springframework.web.multipart.MultipartFile;
|
|
|
|
-
|
|
|
|
-import java.io.InputStream;
|
|
|
|
-import java.text.DecimalFormat;
|
|
|
|
-import java.util.ArrayList;
|
|
|
|
-import java.util.Date;
|
|
|
|
-import java.util.List;
|
|
|
|
-import java.util.Map;
|
|
|
|
-import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
* @author rgb
|
|
* @author rgb
|
|
@@ -57,6 +61,13 @@ public class RetrievalFacade extends RetrievalServiceImpl {
|
|
private QuestionFacade questionFacade;
|
|
private QuestionFacade questionFacade;
|
|
@Autowired
|
|
@Autowired
|
|
private UserServiceClient userServiceClient;
|
|
private UserServiceClient userServiceClient;
|
|
|
|
+ @Autowired
|
|
|
|
+ @Qualifier("retrievalServiceImpl")
|
|
|
|
+ private RetrievalService retrievalService;
|
|
|
|
+ @Autowired
|
|
|
|
+ @Qualifier("retrievalMappingServiceImpl")
|
|
|
|
+ private RetrievalMappingService retrievalMappingService;
|
|
|
|
+
|
|
|
|
|
|
/**
|
|
/**
|
|
* 根据标签获取同义词
|
|
* 根据标签获取同义词
|
|
@@ -139,7 +150,9 @@ public class RetrievalFacade extends RetrievalServiceImpl {
|
|
retrievals.add(retrieval);
|
|
retrievals.add(retrieval);
|
|
}
|
|
}
|
|
});
|
|
});
|
|
- this.saveOrUpdateBatch(saveOrUpdateRetrievals);
|
|
|
|
|
|
+ if(saveOrUpdateRetrievals.size()>0){
|
|
|
|
+ retrievalService.saveOrUpdateBatch(saveOrUpdateRetrievals);
|
|
|
|
+ }
|
|
retrievals.addAll(saveOrUpdateRetrievals);
|
|
retrievals.addAll(saveOrUpdateRetrievals);
|
|
List<Long> retrievalIds = retrievals.stream().map(i -> i.getId()).collect(Collectors.toList());
|
|
List<Long> retrievalIds = retrievals.stream().map(i -> i.getId()).collect(Collectors.toList());
|
|
|
|
|
|
@@ -149,7 +162,7 @@ public class RetrievalFacade extends RetrievalServiceImpl {
|
|
Map<Long, RetrievalMapping> retrievalMappingMap = retrievalMappings.stream().collect(Collectors.toMap(RetrievalMapping::getRetrievalId, i -> i));
|
|
Map<Long, RetrievalMapping> retrievalMappingMap = retrievalMappings.stream().collect(Collectors.toMap(RetrievalMapping::getRetrievalId, i -> i));
|
|
|
|
|
|
List<RetrievalMapping> addOrUpdateRetrievalMappings = new ArrayList<>();
|
|
List<RetrievalMapping> addOrUpdateRetrievalMappings = new ArrayList<>();
|
|
- retrievalMappings.stream().filter(i -> retrievalIds.contains(i.getRetrievalId())).forEach(i -> {
|
|
|
|
|
|
+ retrievalMappings.stream().filter(i ->i.getIsDeleted().equals(IsDeleteEnum.N.getKey())&&!retrievalIds.contains(i.getRetrievalId())).forEach(i -> {
|
|
i.setIsDeleted(IsDeleteEnum.Y.getKey());
|
|
i.setIsDeleted(IsDeleteEnum.Y.getKey());
|
|
i.setGmtModified(now);
|
|
i.setGmtModified(now);
|
|
i.setModifier(userId);
|
|
i.setModifier(userId);
|
|
@@ -181,11 +194,12 @@ public class RetrievalFacade extends RetrievalServiceImpl {
|
|
}
|
|
}
|
|
});
|
|
});
|
|
|
|
|
|
- retrievalMappingFacade.saveOrUpdateBatch(addOrUpdateRetrievalMappings);
|
|
|
|
-
|
|
|
|
|
|
+ if(ListUtil.isNotEmpty(addOrUpdateRetrievalMappings)){
|
|
|
|
+ retrievalMappingService.saveOrUpdateBatch(addOrUpdateRetrievalMappings);
|
|
|
|
+ }
|
|
return true;
|
|
return true;
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 获取标签同义词列表
|
|
* 获取标签同义词列表
|
|
*
|
|
*
|
|
@@ -196,7 +210,7 @@ public class RetrievalFacade extends RetrievalServiceImpl {
|
|
IPage<RetrievalListDTO> ipage = this.getRetrievalList(retrievalListVO);
|
|
IPage<RetrievalListDTO> ipage = this.getRetrievalList(retrievalListVO);
|
|
|
|
|
|
List<RetrievalListDTO> retrievalListDTOList = ipage.getRecords();
|
|
List<RetrievalListDTO> retrievalListDTOList = ipage.getRecords();
|
|
- if (retrievalListDTOList.size() == 0) {
|
|
|
|
|
|
+ if (ListUtil.isEmpty(retrievalListDTOList)) {
|
|
return ipage;
|
|
return ipage;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -212,11 +226,11 @@ public class RetrievalFacade extends RetrievalServiceImpl {
|
|
|
|
|
|
retrievalListDTOList.forEach(retrievalListDTO -> {
|
|
retrievalListDTOList.forEach(retrievalListDTO -> {
|
|
List<RetrievalMapping> retrievalMappingList = retrievalMappingListMap.get(retrievalListDTO.getQuestionId());
|
|
List<RetrievalMapping> retrievalMappingList = retrievalMappingListMap.get(retrievalListDTO.getQuestionId());
|
|
- retrievalMappingList = retrievalMappingList.stream().filter(i -> retrievalMap.get(i.getRetrievalId()) == null).sorted((t1, t2) -> t2.getGmtModified().compareTo(t1.getGmtModified())).collect(Collectors.toList());
|
|
|
|
|
|
+ retrievalMappingList = retrievalMappingList.stream().filter(i -> retrievalMap.get(i.getRetrievalId())!=null).sorted((t1, t2) -> t2.getGmtModified().compareTo(t1.getGmtModified())).collect(Collectors.toList());
|
|
retrievalListDTO.setOperatorName(retrievalMappingList.get(0).getModifier());
|
|
retrievalListDTO.setOperatorName(retrievalMappingList.get(0).getModifier());
|
|
- retrievalListDTO.setRetrievalSelfName(retrievalMappingList.stream().filter(i -> i.getShowType() == 1 && i.getIsDeleted().equals("N")).map(i -> retrievalMap.get(i.getRetrievalId()).getName()).collect(Collectors.joining()));
|
|
|
|
- retrievalListDTO.setRetrievalNames(retrievalMappingList.stream().filter(i -> i.getShowType() == 2 && i.getIsDeleted().equals("N")).map(i -> retrievalMap.get(i.getRetrievalId()).getName()).collect(Collectors.joining()));
|
|
|
|
- retrievalListDTO.setRetrievalSonNames(retrievalMappingList.stream().filter(i -> i.getShowType() == 3 && i.getIsDeleted().equals("N")).map(i -> retrievalMap.get(i.getRetrievalId()).getName()).collect(Collectors.joining()));
|
|
|
|
|
|
+ retrievalListDTO.setRetrievalSelfName(retrievalMappingList.stream().filter(i -> i.getShowType() == 1 && i.getIsDeleted().equals("N")).map(i -> retrievalMap.get(i.getRetrievalId()).getName()).collect(Collectors.joining("、")));
|
|
|
|
+ retrievalListDTO.setRetrievalNames(retrievalMappingList.stream().filter(i -> i.getShowType() == 2 && i.getIsDeleted().equals("N")).map(i -> retrievalMap.get(i.getRetrievalId()).getName()).collect(Collectors.joining("、")));
|
|
|
|
+ retrievalListDTO.setRetrievalSonNames(retrievalMappingList.stream().filter(i -> i.getShowType() == 3 && i.getIsDeleted().equals("N")).map(i -> retrievalMap.get(i.getRetrievalId()).getName()).collect(Collectors.joining("、")));
|
|
});
|
|
});
|
|
|
|
|
|
List<String> ids = retrievalListDTOList.stream().map(i -> i.getOperatorName()).collect(Collectors.toList());
|
|
List<String> ids = retrievalListDTOList.stream().map(i -> i.getOperatorName()).collect(Collectors.toList());
|