|
@@ -635,30 +635,34 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
|
|
|
* @throws IOException
|
|
|
* @function 根据PatentVO里的条件(分页)模糊查询标的专利号和数量
|
|
|
*/
|
|
|
- public Integer addSingle(Integer reportId, String patentNo,String name) throws IOException {
|
|
|
+ public Integer addSingle(Integer reportId, String patentNo, String name) throws IOException {
|
|
|
+ //先查询,若没有才去入库
|
|
|
+ List<CompareFiles> compareFiless = this.list(new LambdaQueryWrapper<CompareFiles>().eq(CompareFiles::getReportId, reportId).eq(CompareFiles::getPatentNo, patentNo));
|
|
|
CompareFiles compareFiles = new CompareFiles();
|
|
|
- try {
|
|
|
- compareFiles.setPatentNo(patentNo);
|
|
|
- List<CompareFiles> proofList = this.list(new LambdaQueryWrapper<CompareFiles>().eq(CompareFiles::getReportId, reportId).orderByDesc(CompareFiles::getSysOrder).last("limit 1"));
|
|
|
- Integer biggestSort;
|
|
|
- //若该报告目前没有证据,则最大排序序号设为0;若有则最大排序序号就是当前按序号倒序的第一个证据的排序序号
|
|
|
- if (proofList == null || proofList.size() == 0) {
|
|
|
- biggestSort = 0;
|
|
|
- } else {
|
|
|
- if (proofList.get(0).getSysOrder() == null) {
|
|
|
+ if (compareFiless == null || compareFiless.size() == 0) {
|
|
|
+ try {
|
|
|
+ compareFiles.setPatentNo(patentNo);
|
|
|
+ List<CompareFiles> proofList = this.list(new LambdaQueryWrapper<CompareFiles>().eq(CompareFiles::getReportId, reportId).orderByDesc(CompareFiles::getSysOrder).last("limit 1"));
|
|
|
+ Integer biggestSort;
|
|
|
+ //若该报告目前没有证据,则最大排序序号设为0;若有则最大排序序号就是当前按序号倒序的第一个证据的排序序号
|
|
|
+ if (proofList == null || proofList.size() == 0) {
|
|
|
biggestSort = 0;
|
|
|
} else {
|
|
|
- biggestSort = proofList.get(0).getSysOrder();
|
|
|
- }
|
|
|
+ if (proofList.get(0).getSysOrder() == null) {
|
|
|
+ biggestSort = 0;
|
|
|
+ } else {
|
|
|
+ biggestSort = proofList.get(0).getSysOrder();
|
|
|
+ }
|
|
|
|
|
|
+ }
|
|
|
+ compareFiles.setSysOrder(++biggestSort);
|
|
|
+ compareFiles.setFileType(1);
|
|
|
+ compareFiles.setReportId(reportId);
|
|
|
+ compareFiles.setFileName(patentNo + "(" + name + ")");
|
|
|
+ compareFiles.insert();
|
|
|
+ } catch (Exception e) {
|
|
|
+ return -1;
|
|
|
}
|
|
|
- compareFiles.setSysOrder(++biggestSort);
|
|
|
- compareFiles.setFileType(1);
|
|
|
- compareFiles.setReportId(reportId);
|
|
|
- compareFiles.setFileName(patentNo+"("+name+")");
|
|
|
- compareFiles.insert();
|
|
|
- } catch (Exception e) {
|
|
|
- return -1;
|
|
|
}
|
|
|
return compareFiles.getId();
|
|
|
}
|
|
@@ -693,22 +697,22 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
|
|
|
private List<ProofVO> loadProof(List<CompareFiles> proofs) {
|
|
|
List<ProofVO> proofVOS = new ArrayList<>();
|
|
|
//筛选出文件id
|
|
|
- List<Integer> fileId = proofs.stream().filter(item->item.getFileType().equals(2)).map(CompareFiles::getFileId).collect(Collectors.toList());
|
|
|
- //根据文件id获得所有的文件
|
|
|
- List<ReportFiles> reportFiles =new ArrayList<>();
|
|
|
- if(fileId.size()!=0){
|
|
|
- LambdaQueryWrapper<ReportFiles> reportFilesLambdaQueryWrapper =new LambdaQueryWrapper<>();
|
|
|
- reportFilesLambdaQueryWrapper.in(ReportFiles::getId,fileId);
|
|
|
- reportFiles = reportFileService.list(reportFilesLambdaQueryWrapper);
|
|
|
- }
|
|
|
- List<ReportFiles> reportFile =reportFiles;
|
|
|
+ List<Integer> fileId = proofs.stream().filter(item -> item.getFileType().equals(2)).map(CompareFiles::getFileId).collect(Collectors.toList());
|
|
|
+ //根据文件id获得所有的文件
|
|
|
+ List<ReportFiles> reportFiles = new ArrayList<>();
|
|
|
+ if (fileId.size() != 0) {
|
|
|
+ LambdaQueryWrapper<ReportFiles> reportFilesLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ reportFilesLambdaQueryWrapper.in(ReportFiles::getId, fileId);
|
|
|
+ reportFiles = reportFileService.list(reportFilesLambdaQueryWrapper);
|
|
|
+ }
|
|
|
+ List<ReportFiles> reportFile = reportFiles;
|
|
|
proofs.forEach(item -> {
|
|
|
ProofVO proofVO = new ProofVO();
|
|
|
if (item.getFileType().equals(1)) {
|
|
|
proofVO.setProofType("专利文献");
|
|
|
proofVO.setProofConditions(item.getPatentNo());
|
|
|
} else if (item.getFileType().equals(2)) {
|
|
|
- ReportFiles reportFiles1 = reportFile.stream().filter(tem->tem.getId().equals(item.getFileId())).findFirst().orElse(null);
|
|
|
+ ReportFiles reportFiles1 = reportFile.stream().filter(tem -> tem.getId().equals(item.getFileId())).findFirst().orElse(null);
|
|
|
proofVO.setProofConditions(reportFiles1.getUrl());
|
|
|
proofVO.setProofType("非专利文献");
|
|
|
}
|