|
@@ -73,8 +73,8 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
|
|
|
if (patentNoJSON.containsKey("family")) {
|
|
|
String familyJson = patentNoJSON.get("family").toString();
|
|
|
JSONObject jsonObject = JSONObject.parseObject(familyJson);
|
|
|
- String simpleJson = jsonObject.get("simple").toString();
|
|
|
- familyPatentNos = JSONArray.parseArray(simpleJson,String.class);
|
|
|
+ String simpleJson = jsonObject.get("simple").toString();
|
|
|
+ familyPatentNos = JSONArray.parseArray(simpleJson, String.class);
|
|
|
}
|
|
|
LambdaQueryWrapper<CompareFiles> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
//根据报告id 获取文件对比表的详情
|
|
@@ -85,11 +85,11 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
|
|
|
List<CompareFiles> compareFiles = new ArrayList<>();
|
|
|
patentVO.setNotInPatentNos(patentNoList);
|
|
|
|
|
|
- List<String> patentNos =new ArrayList<>();
|
|
|
- if(patentVO.getStartNumber()<=patentVO.getEndNumber()){
|
|
|
+ List<String> patentNos = new ArrayList<>();
|
|
|
+ if (patentVO.getStartNumber() <= patentVO.getEndNumber()) {
|
|
|
// 见outInterfaceService getComPatentNos接口
|
|
|
- patentVO.setStartNumber(patentVO.getStartNumber()-1);
|
|
|
- patentVO.setEndNumber(patentVO.getEndNumber()-patentVO.getStartNumber());
|
|
|
+ patentVO.setStartNumber(patentVO.getStartNumber() - 1);
|
|
|
+ patentVO.setEndNumber(patentVO.getEndNumber() - patentVO.getStartNumber());
|
|
|
String res = outInterfaceService.getComPatentNos(patentVO);
|
|
|
JSONObject jsonObject = JSONObject.parseObject(res);
|
|
|
patentNos = JSONArray.parseArray(jsonObject.get("data").toString(), String.class);
|
|
@@ -100,10 +100,10 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
|
|
|
patentNos.addAll(patentVO.getIsAdd());
|
|
|
//获取对比文件对比表的专利号
|
|
|
patentNos.removeAll(patentNoList);
|
|
|
- List<String> flags =new ArrayList<>();
|
|
|
+ List<String> flags = new ArrayList<>();
|
|
|
for (int i = 0; i < patentNos.size(); i++) {
|
|
|
CompareFiles compareFiles1 = new CompareFiles();
|
|
|
- if(!flags.contains(patentNos.get(i))){
|
|
|
+ if (!flags.contains(patentNos.get(i))) {
|
|
|
//根据专利号和报告id造对象
|
|
|
compareFiles1.setPatentNo(patentNos.get(i));
|
|
|
compareFiles1.setReportId(patentVO.getReportId());
|
|
@@ -159,6 +159,47 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
|
|
|
return Response.success();
|
|
|
}
|
|
|
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public String addFTOFile(PatentVO patentVO) throws IOException {
|
|
|
+ LambdaQueryWrapper<CompareFiles> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ //根据报告id 获取文件对比表的详情
|
|
|
+ queryWrapper.eq(CompareFiles::getReportId, patentVO.getReportId());
|
|
|
+ List<CompareFiles> compareFile1 = this.list(queryWrapper);
|
|
|
+ //获取对比文件对比表的专利号
|
|
|
+ List<String> patentNoList = compareFile1.stream().map(CompareFiles::getPatentNo).collect(Collectors.toList());
|
|
|
+ List<CompareFiles> compareFiles = new ArrayList<>();
|
|
|
+ patentNoList.addAll(patentVO.getIsDelete());
|
|
|
+ patentVO.setNotInPatentNos(patentNoList);
|
|
|
+
|
|
|
+ List<String> patentNos = new ArrayList<>();
|
|
|
+ if (patentVO.getStartNumber() <= patentVO.getEndNumber()) {
|
|
|
+ // 见outInterfaceService getComPatentNos接口
|
|
|
+ patentVO.setStartNumber(patentVO.getStartNumber() - 1);
|
|
|
+ patentVO.setEndNumber(patentVO.getEndNumber() - patentVO.getStartNumber());
|
|
|
+ String res = outInterfaceService.getComPatentNos(patentVO);
|
|
|
+ JSONObject jsonObject = JSONObject.parseObject(res);
|
|
|
+ patentNos = JSONArray.parseArray(jsonObject.get("data").toString(), String.class);
|
|
|
+ }
|
|
|
+ //添加新的
|
|
|
+ patentNos.addAll(patentVO.getIsAdd());
|
|
|
+ //获取对比文件对比表的专利号
|
|
|
+ patentNos.removeAll(patentNoList);
|
|
|
+ List<String> flags = new ArrayList<>();
|
|
|
+ for (int i = 0; i < patentNos.size(); i++) {
|
|
|
+ CompareFiles compareFiles1 = new CompareFiles();
|
|
|
+ if (!flags.contains(patentNos.get(i))) {
|
|
|
+ //根据专利号和报告id造对象
|
|
|
+ compareFiles1.setPatentNo(patentNos.get(i));
|
|
|
+ compareFiles1.setReportId(patentVO.getReportId());
|
|
|
+ compareFiles.add(compareFiles1);
|
|
|
+ flags.add(patentNos.get(i));
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ // 批量添加
|
|
|
+ this.saveBatch(compareFiles);
|
|
|
+ return Response.success();
|
|
|
+ }
|
|
|
/**
|
|
|
* @param patentVO
|
|
|
* @return 标的专利号和数量 map
|
|
@@ -222,13 +263,11 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
|
|
|
LambdaQueryWrapper<CompareFiles> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
queryWrapper.eq(CompareFiles::getReportId, patentVO.getReportId());
|
|
|
|
|
|
-if(patentVO.getOrderItem()!=null&&patentVO.getOrderType()!=null&&patentVO.getOrderItem().equals("SysOrder")&&patentVO.getOrderType().equals("desc"))
|
|
|
-{
|
|
|
- queryWrapper .last("ORDER BY IF(isnull(SYS_ORDER),0,1), SYS_ORDER DESC");
|
|
|
-}
|
|
|
-else if(patentVO.getOrderItem()!=null&&patentVO.getOrderItem().equals("SysOrder")){
|
|
|
- queryWrapper .last("ORDER BY IF(isnull(SYS_ORDER),1,0), SYS_ORDER ASC");
|
|
|
-}
|
|
|
+ if (patentVO.getOrderItem() != null && patentVO.getOrderType() != null && patentVO.getOrderItem().equals("SysOrder") && patentVO.getOrderType().equals("desc")) {
|
|
|
+ queryWrapper.last("ORDER BY IF(isnull(SYS_ORDER),0,1), SYS_ORDER DESC");
|
|
|
+ } else if (patentVO.getOrderItem() != null && patentVO.getOrderItem().equals("SysOrder")) {
|
|
|
+ queryWrapper.last("ORDER BY IF(isnull(SYS_ORDER),1,0), SYS_ORDER ASC");
|
|
|
+ }
|
|
|
List<CompareFiles> compareFiles = this.list(queryWrapper);
|
|
|
List<String> AllpatentNos = compareFiles.stream().map(CompareFiles::getPatentNo).collect(Collectors.toList());
|
|
|
//无查询条件
|
|
@@ -246,7 +285,7 @@ else if(patentVO.getOrderItem()!=null&&patentVO.getOrderItem().equals("SysOrder"
|
|
|
}
|
|
|
List<String> allPatentsCopy = new ArrayList<>();
|
|
|
if (patentVO.getNotAssignTypes() != null && patentVO.getNotAssignTypes().size() != 0) {
|
|
|
- for(Integer types :patentVO.getNotAssignTypes()) {
|
|
|
+ for (Integer types : patentVO.getNotAssignTypes()) {
|
|
|
LambdaQueryWrapper<Task> wrapper = new LambdaQueryWrapper<>();
|
|
|
wrapper.select(Task::getId)
|
|
|
.eq(Task::getType, types)
|
|
@@ -257,7 +296,7 @@ else if(patentVO.getOrderItem()!=null&&patentVO.getOrderItem().equals("SysOrder"
|
|
|
List<String> PatentsCopy = new ArrayList<>(AllpatentNos);
|
|
|
if (taskIds.size() != 0) {
|
|
|
LambdaQueryWrapper<AssoTaskPersonel> assoWrapper = new LambdaQueryWrapper<>();
|
|
|
- assoWrapper.in(AssoTaskPersonel::getTaskId,taskIds);
|
|
|
+ assoWrapper.in(AssoTaskPersonel::getTaskId, taskIds);
|
|
|
List<AssoTaskPersonel> assoTaskPersonels = assoTaskPersonelService.list(assoWrapper);
|
|
|
List<String> tem = assoTaskPersonels.stream().map(AssoTaskPersonel::getPatentNo).collect(Collectors.toList());
|
|
|
PatentsCopy.removeAll(tem);
|
|
@@ -269,11 +308,12 @@ else if(patentVO.getOrderItem()!=null&&patentVO.getOrderItem().equals("SysOrder"
|
|
|
patentNosTask.addAll(allPatentsCopy);
|
|
|
patentNos = new ArrayList<>(CollectionUtils.intersection(patentNosTask, patentNos));
|
|
|
}
|
|
|
- if (patentVO.getOrderItem()!=null&&patentVO.getOrderItem().equals("SysOrder")) {
|
|
|
+ if (patentVO.getOrderItem() != null && patentVO.getOrderItem().equals("SysOrder")) {
|
|
|
List<String> noCopy = new ArrayList<>();
|
|
|
for (CompareFiles item : compareFiles) {
|
|
|
- if (patentNos.contains(item.getPatentNo()))
|
|
|
- { noCopy.add(item.getPatentNo());}
|
|
|
+ if (patentNos.contains(item.getPatentNo())) {
|
|
|
+ noCopy.add(item.getPatentNo());
|
|
|
+ }
|
|
|
}
|
|
|
patentNos = noCopy;
|
|
|
}
|
|
@@ -285,10 +325,9 @@ else if(patentVO.getOrderItem()!=null&&patentVO.getOrderItem().equals("SysOrder"
|
|
|
List<JSONObject> jsonObjects = JSONArray.parseArray(jsonObject1.get("records").toString(), JSONObject.class);
|
|
|
List<JSONObject> jsonObjects2 = new ArrayList<>();
|
|
|
for (JSONObject jsonObject2 : jsonObjects) {
|
|
|
- for(CompareFiles com:compareFiles){
|
|
|
- if(jsonObject2.get("publicNo").toString().equals(com.getPatentNo()))
|
|
|
- {
|
|
|
- jsonObject2.put("SysOrder",com.getSysOrder());
|
|
|
+ for (CompareFiles com : compareFiles) {
|
|
|
+ if (jsonObject2.get("publicNo").toString().equals(com.getPatentNo())) {
|
|
|
+ jsonObject2.put("SysOrder", com.getSysOrder());
|
|
|
}
|
|
|
}
|
|
|
jsonObjects2.add(jsonObject2);
|
|
@@ -315,26 +354,26 @@ else if(patentVO.getOrderItem()!=null&&patentVO.getOrderItem().equals("SysOrder"
|
|
|
|
|
|
public String deletePatentNo(PatentVO patentVO) throws IOException {
|
|
|
List<String> patentNos = new ArrayList<>();
|
|
|
-Integer reportId = patentVO.getReportId();
|
|
|
- LambdaQueryWrapper<CompareFiles> wrapper = new LambdaQueryWrapper<>();
|
|
|
- wrapper.select(CompareFiles::getPatentNo)
|
|
|
- .eq(CompareFiles::getReportId, patentVO.getReportId()).orderByAsc(CompareFiles::getPatentNo);
|
|
|
+ Integer reportId = patentVO.getReportId();
|
|
|
+ LambdaQueryWrapper<CompareFiles> wrapper = new LambdaQueryWrapper<>();
|
|
|
+ wrapper.select(CompareFiles::getPatentNo)
|
|
|
+ .eq(CompareFiles::getReportId, patentVO.getReportId()).orderByAsc(CompareFiles::getPatentNo);
|
|
|
|
|
|
// 见outInterfaceService getComPatentNos接口
|
|
|
-if(patentVO.getStartNumber()<patentVO.getEndNumber()) {
|
|
|
- patentNos = this.list(wrapper).stream().map(CompareFiles::getPatentNo).collect(Collectors.toList());
|
|
|
- patentVO.setPatentNos(patentNos);
|
|
|
- patentVO.setStartNumber(patentVO.getStartNumber() - 1);
|
|
|
- patentVO.setEndNumber(patentVO.getEndNumber()-patentVO.getStartNumber());
|
|
|
- patentVO.setReportId(null);
|
|
|
- String res = outInterfaceService.getComPatentNos(patentVO);
|
|
|
- JSONObject jsonObject = JSONObject.parseObject(res);
|
|
|
- patentNos = JSONArray.parseArray(jsonObject.get("data").toString(), String.class);
|
|
|
- //减少的专利号
|
|
|
- if (patentVO.getIsDelete() != null) {
|
|
|
- patentNos.removeAll(patentVO.getIsDelete());
|
|
|
- }
|
|
|
-}
|
|
|
+ if (patentVO.getStartNumber() < patentVO.getEndNumber()) {
|
|
|
+ patentNos = this.list(wrapper).stream().map(CompareFiles::getPatentNo).collect(Collectors.toList());
|
|
|
+ patentVO.setPatentNos(patentNos);
|
|
|
+ patentVO.setStartNumber(patentVO.getStartNumber() - 1);
|
|
|
+ patentVO.setEndNumber(patentVO.getEndNumber() - patentVO.getStartNumber());
|
|
|
+ patentVO.setReportId(null);
|
|
|
+ String res = outInterfaceService.getComPatentNos(patentVO);
|
|
|
+ JSONObject jsonObject = JSONObject.parseObject(res);
|
|
|
+ patentNos = JSONArray.parseArray(jsonObject.get("data").toString(), String.class);
|
|
|
+ //减少的专利号
|
|
|
+ if (patentVO.getIsDelete() != null) {
|
|
|
+ patentNos.removeAll(patentVO.getIsDelete());
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
//增加的专利号
|
|
|
if (patentVO.getIsAdd() != null) {
|
|
@@ -344,11 +383,12 @@ if(patentVO.getStartNumber()<patentVO.getEndNumber()) {
|
|
|
if (patentNos.size() != 0) {
|
|
|
LambdaQueryWrapper<CompareFiles> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
lambdaQueryWrapper.in(CompareFiles::getPatentNo, patentNos);
|
|
|
- lambdaQueryWrapper.eq(CompareFiles::getReportId,reportId);
|
|
|
+ lambdaQueryWrapper.eq(CompareFiles::getReportId, reportId);
|
|
|
this.remove(lambdaQueryWrapper);
|
|
|
}
|
|
|
return Response.success();
|
|
|
}
|
|
|
+
|
|
|
/**
|
|
|
* @param id
|
|
|
* @return
|
|
@@ -526,7 +566,7 @@ if(patentVO.getStartNumber()<patentVO.getEndNumber()) {
|
|
|
return "";
|
|
|
}
|
|
|
|
|
|
- Report report =reportService.getById(patentVO.getReportId());
|
|
|
+ Report report = reportService.getById(patentVO.getReportId());
|
|
|
patentVO.setProjectId(report.getProjectId());
|
|
|
patentVO.setNotInPatentNos(patentNos);
|
|
|
res = outInterfaceService.getPatentListFromPAS(patentVO);
|