|
@@ -1,15 +1,11 @@
|
|
|
package cn.cslg.report.service.business;
|
|
|
|
|
|
-import cn.cslg.report.common.core.base.Constants;
|
|
|
import cn.cslg.report.common.model.vo.CompareFilesVO;
|
|
|
import cn.cslg.report.common.model.vo.PatentVO;
|
|
|
-import cn.cslg.report.common.model.vo.SystemDictVO;
|
|
|
-import cn.cslg.report.common.utils.LogExceptionUtil;
|
|
|
+
|
|
|
import cn.cslg.report.common.utils.Response;
|
|
|
import cn.cslg.report.entity.CompareFiles;
|
|
|
-import cn.cslg.report.entity.SysDictItem;
|
|
|
import cn.cslg.report.mapper.CompareFilesMapper;
|
|
|
-import cn.cslg.report.mapper.SystemDictItemMapper;
|
|
|
import cn.cslg.report.service.OutInterfaceService;
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
@@ -19,6 +15,7 @@ import lombok.RequiredArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.context.annotation.Lazy;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.io.IOException;
|
|
|
import java.util.ArrayList;
|
|
@@ -32,25 +29,66 @@ import java.util.stream.Collectors;
|
|
|
@RequiredArgsConstructor(onConstructor_ = {@Lazy})
|
|
|
public class CompareFilesService extends ServiceImpl<CompareFilesMapper, CompareFiles> {
|
|
|
private final OutInterfaceService outInterfaceService;
|
|
|
- public String addCompareFile(CompareFilesVO compareFilesVO){
|
|
|
- List<CompareFiles> compareFiles =new ArrayList<>();
|
|
|
- compareFilesVO.getPatentNos().forEach(item->{
|
|
|
- CompareFiles compareFiles1 =new CompareFiles();
|
|
|
- compareFiles1.setPatentNo(item);
|
|
|
- compareFiles1.setReportId(compareFilesVO.getReportId());
|
|
|
- compareFiles.add(compareFiles1);
|
|
|
- });
|
|
|
- this.saveBatch(compareFiles);
|
|
|
+// public String addCompareFile(CompareFilesVO compareFilesVO){
|
|
|
+// List<CompareFiles> compareFiles =new ArrayList<>();
|
|
|
+// compareFilesVO.getPatentNos().forEach(item->{
|
|
|
+// CompareFiles compareFiles1 =new CompareFiles();
|
|
|
+// compareFiles1.setPatentNo(item);
|
|
|
+// compareFiles1.setReportId(compareFilesVO.getReportId());
|
|
|
+// compareFiles.add(compareFiles1);
|
|
|
+// });
|
|
|
+// this.saveBatch(compareFiles);
|
|
|
+// return Response.success();
|
|
|
+// }
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public String addCompareFile(CompareFilesVO compareFilesVO) throws IOException {
|
|
|
+ LambdaQueryWrapper<CompareFiles> queryWrapper =new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper.eq(CompareFiles::getReportId,compareFilesVO.getReportId());
|
|
|
+ List<CompareFiles> compareFile1 =this.list(queryWrapper);
|
|
|
+ List<String> patentNoList =compareFile1.stream().map(CompareFiles::getPatentNo).collect(Collectors.toList());
|
|
|
+ List<CompareFiles> compareFiles =new ArrayList<>();
|
|
|
+ PatentVO patentVO =new PatentVO();
|
|
|
+ patentVO.setStartNumber(compareFilesVO.getStartNumber()-1);
|
|
|
+ patentVO.setEndNumber(compareFilesVO.getEndNumber());
|
|
|
+ patentVO.setReportId(compareFilesVO.getReportId());
|
|
|
+ patentVO.setPatentNos(patentNoList);
|
|
|
+ String res = outInterfaceService.getComPatentNos(patentVO);
|
|
|
+ JSONObject jsonObject =JSONObject.parseObject(res);
|
|
|
+ List<String> patentNos =JSONArray.parseArray(jsonObject.get("data").toString(),String.class);
|
|
|
+ patentNos.removeAll(compareFilesVO.getIsDelete());
|
|
|
+ patentNos.addAll(compareFilesVO.getIsAdd());
|
|
|
+ patentNos.removeAll(patentNoList);
|
|
|
+ patentNos.forEach(item->{
|
|
|
+ CompareFiles compareFiles1 =new CompareFiles();
|
|
|
+ compareFiles1.setPatentNo(item);
|
|
|
+ compareFiles1.setReportId(compareFilesVO.getReportId());
|
|
|
+ compareFiles.add(compareFiles1);
|
|
|
+ });
|
|
|
+ this.saveBatch(compareFiles);
|
|
|
return Response.success();
|
|
|
}
|
|
|
|
|
|
public String getCompareFile(PatentVO patentVO) throws IOException {
|
|
|
+
|
|
|
LambdaQueryWrapper<CompareFiles> queryWrapper =new LambdaQueryWrapper<>();
|
|
|
queryWrapper.eq(CompareFiles::getReportId,patentVO.getReportId());
|
|
|
List<CompareFiles> compareFiles =this.list(queryWrapper);
|
|
|
List<String> patentNos =compareFiles.stream().map(CompareFiles::getPatentNo).collect(Collectors.toList());
|
|
|
patentVO.setPatentNos(patentNos);
|
|
|
- return outInterfaceService.getPatentFromPAS(patentVO);
|
|
|
+ String res =outInterfaceService.getPatentFromPAS(patentVO,0);
|
|
|
+ JSONObject jsonObject = JSONObject.parseObject(res);
|
|
|
+ JSONObject resData = JSONObject.parseObject(jsonObject.getString("data"));
|
|
|
+ List<JSONObject> list= JSONArray.parseArray(resData.getString("records"),JSONObject.class);
|
|
|
+ List<String> temNos =new ArrayList<>();
|
|
|
+ for(int i=0;i<list.size(); i++){
|
|
|
+ if(patentNos.contains(list.get(i).get("patentNo").toString())){
|
|
|
+ temNos.add(list.get(i).get("patentNo").toString());}
|
|
|
+
|
|
|
+ }
|
|
|
+ Map<String,Object> map =new HashMap<>();
|
|
|
+ map.put("datas",resData);
|
|
|
+ map.put("select",temNos);
|
|
|
+ return Response.success(map) ;
|
|
|
}
|
|
|
|
|
|
public String getCompareNos(Integer reportId) throws IOException {
|