|
@@ -635,36 +635,46 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
|
|
|
* @throws IOException
|
|
|
* @function 根据PatentVO里的条件(分页)模糊查询标的专利号和数量
|
|
|
*/
|
|
|
- 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();
|
|
|
- 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 {
|
|
|
- if (proofList.get(0).getSysOrder() == null) {
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public Integer addSingle(Integer reportId, String patentNo, String name,Integer asCompare) throws IOException {
|
|
|
+ Integer flag =0;
|
|
|
+ //根据报告id查询报告类型
|
|
|
+ Report report =reportService.getById(reportId);
|
|
|
+ int reportType =report.getType();
|
|
|
+ if(reportType==7||(asCompare!=null&&asCompare==1)) {
|
|
|
+ //先查询,若没有才去入库
|
|
|
+ List<CompareFiles> compareFiless = this.list(new LambdaQueryWrapper<CompareFiles>().eq(CompareFiles::getReportId, reportId).eq(CompareFiles::getPatentNo, patentNo));
|
|
|
+ CompareFiles compareFiles = new CompareFiles();
|
|
|
+ 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();
|
|
|
+ else {
|
|
|
+ return 1;
|
|
|
+ }
|
|
|
+ return flag;
|
|
|
}
|
|
|
|
|
|
/**
|