|
@@ -4,12 +4,15 @@ import cn.cslg.report.common.model.PASPatentVO;
|
|
import cn.cslg.report.common.model.dto.CompareOrderDTO;
|
|
import cn.cslg.report.common.model.dto.CompareOrderDTO;
|
|
import cn.cslg.report.common.model.dto.CustomFieldLabelDTO;
|
|
import cn.cslg.report.common.model.dto.CustomFieldLabelDTO;
|
|
|
|
|
|
|
|
+import cn.cslg.report.common.model.dto.ProofAddNewDTO;
|
|
import cn.cslg.report.common.model.vo.CompareFilesVO;
|
|
import cn.cslg.report.common.model.vo.CompareFilesVO;
|
|
import cn.cslg.report.common.model.vo.PatentIndexSettingVO;
|
|
import cn.cslg.report.common.model.vo.PatentIndexSettingVO;
|
|
|
|
|
|
import cn.cslg.report.common.model.vo.PatentVO;
|
|
import cn.cslg.report.common.model.vo.PatentVO;
|
|
|
|
+import cn.cslg.report.common.model.vo.PersonnelVO;
|
|
import cn.cslg.report.common.utils.JsonUtils;
|
|
import cn.cslg.report.common.utils.JsonUtils;
|
|
import cn.cslg.report.common.utils.Response;
|
|
import cn.cslg.report.common.utils.Response;
|
|
|
|
+import cn.cslg.report.common.utils.ThrowException;
|
|
import cn.cslg.report.entity.*;
|
|
import cn.cslg.report.entity.*;
|
|
import cn.cslg.report.entity.asso.AssoRecordsFeature;
|
|
import cn.cslg.report.entity.asso.AssoRecordsFeature;
|
|
import cn.cslg.report.entity.asso.AssoTaskPersonel;
|
|
import cn.cslg.report.entity.asso.AssoTaskPersonel;
|
|
@@ -26,9 +29,11 @@ import io.swagger.v3.oas.models.security.SecurityScheme;
|
|
import lombok.RequiredArgsConstructor;
|
|
import lombok.RequiredArgsConstructor;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.apache.commons.collections4.CollectionUtils;
|
|
import org.apache.commons.collections4.CollectionUtils;
|
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
import org.springframework.context.annotation.Lazy;
|
|
import org.springframework.context.annotation.Lazy;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
+import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
import java.io.IOException;
|
|
import java.io.IOException;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
@@ -51,7 +56,7 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
|
|
private final TaskService taskService;
|
|
private final TaskService taskService;
|
|
private final AssoTaskPersonelService assoTaskPersonelService;
|
|
private final AssoTaskPersonelService assoTaskPersonelService;
|
|
private final CompareRecordsService compareRecordsService;
|
|
private final CompareRecordsService compareRecordsService;
|
|
-
|
|
|
|
|
|
+ private final ReportFileService reportFileService;
|
|
/**
|
|
/**
|
|
* @param compareFilesVO
|
|
* @param compareFilesVO
|
|
* @return 是否添加成功
|
|
* @return 是否添加成功
|
|
@@ -627,6 +632,43 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
|
|
}
|
|
}
|
|
return compareFiles.getId();
|
|
return compareFiles.getId();
|
|
}
|
|
}
|
|
|
|
+ //上传非专利文献证据
|
|
|
|
+ public void addProofByFile(ProofAddNewDTO proofAddNewDTO, List<MultipartFile> files) {
|
|
|
|
+ log.info("开始处理【上传非专利文献证据】的业务,参数为:{}, {}", proofAddNewDTO, files);
|
|
|
|
+
|
|
|
|
+ //检查本次请求合法性(是否有上传非专利文献证据)
|
|
|
|
+ if (files == null || files.size() == 0) {
|
|
|
|
+ ThrowException.throwXiaoShiException("未上传文件");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ ArrayList<Proof> proofs = new ArrayList<>();
|
|
|
|
+ //上传非专利文献证据文件附件,附件信息入报告系统文件表后,返回附件ids
|
|
|
|
+ List<Integer> fileIds = reportFileService.uploadFiles(files);
|
|
|
|
+ //查询证据表,取出该报告已有证据最大排序序号
|
|
|
|
+ List<CompareFiles> proofList = this.list(new LambdaQueryWrapper<CompareFiles>().eq(CompareFiles::getReportId, proofAddNewDTO.getReportId()).orderByDesc(CompareFiles::getSysOrder).last("limit 1"));
|
|
|
|
+ Integer biggestSort;
|
|
|
|
+ //若该报告目前没有证据,则最大排序序号设为0;若有则最大排序序号就是当前按序号倒序的第一个证据的排序序号
|
|
|
|
+ if (proofList == null || proofList.size() == 0) {
|
|
|
|
+ biggestSort = 0;
|
|
|
|
+ } else {
|
|
|
|
+ if (proofList.get(0).getSysOrder() == null) {
|
|
|
|
+ biggestSort = 0;
|
|
|
|
+ } else {
|
|
|
|
+ biggestSort = proofList.get(0).getSysOrder();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
|
|
|
|
+ CompareFiles proof = new CompareFiles();
|
|
|
|
+ BeanUtils.copyProperties(proofAddNewDTO, proof); //DTO赋值给实体类(装载报告id、证据名称、备注)
|
|
|
|
+ proof.setFileType(2); //装载证据类型
|
|
|
|
+ proof.setFileId(fileIds.get(0)); //装载文件id
|
|
|
|
+ proof.setFileType(++biggestSort);
|
|
|
|
+ proof.insert();
|
|
|
|
+
|
|
|
|
+ log.info("上传非专利文献证据完成");
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
|
|
}
|
|
}
|