|
@@ -13,16 +13,14 @@ import cn.cslg.report.common.model.vo.PatentIndexSettingVO;
|
|
|
import cn.cslg.report.common.model.vo.PatentVO;
|
|
|
import cn.cslg.report.common.model.vo.PersonnelVO;
|
|
|
import cn.cslg.report.common.model.vo.invalidReReport.ProofVO;
|
|
|
-import cn.cslg.report.common.utils.DataUtils;
|
|
|
-import cn.cslg.report.common.utils.JsonUtils;
|
|
|
-import cn.cslg.report.common.utils.Response;
|
|
|
-import cn.cslg.report.common.utils.ThrowException;
|
|
|
+import cn.cslg.report.common.utils.*;
|
|
|
import cn.cslg.report.entity.*;
|
|
|
import cn.cslg.report.entity.asso.AssoRecordsFeature;
|
|
|
import cn.cslg.report.entity.asso.AssoTaskPersonel;
|
|
|
import cn.cslg.report.entity.invalidReReport.Proof;
|
|
|
import cn.cslg.report.mapper.CompareFilesMapper;
|
|
|
import cn.cslg.report.service.OutInterfaceService;
|
|
|
+import cn.cslg.report.service.file.FileManagerService;
|
|
|
import cn.hutool.core.lang.func.Func;
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
@@ -63,6 +61,7 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
|
|
|
private final AssoTaskPersonelService assoTaskPersonelService;
|
|
|
private final CompareRecordsService compareRecordsService;
|
|
|
private final ReportFileService reportFileService;
|
|
|
+ private final FileManagerService fileManagerService;
|
|
|
|
|
|
/**
|
|
|
* @param compareFilesVO
|
|
@@ -650,7 +649,7 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
|
|
|
* @param proofAddNewDTO
|
|
|
* @return
|
|
|
*/
|
|
|
- public String queryProof(ProofQueryDTO proofAddNewDTO) {
|
|
|
+ public String queryProof(ProofQueryDTO proofAddNewDTO) throws IOException {
|
|
|
Integer reportId = proofAddNewDTO.getReportId();
|
|
|
Integer current = proofAddNewDTO.getCurrent();
|
|
|
Integer size = proofAddNewDTO.getSize();
|
|
@@ -671,16 +670,23 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
|
|
|
return Response.success(proofVOS, DataUtils.setPageColumn(size, current, Math.toIntExact(count)));
|
|
|
}
|
|
|
|
|
|
- private List<ProofVO> loadProof(List<CompareFiles> proofs) {
|
|
|
+ private List<ProofVO> loadProof(List<CompareFiles> proofs) throws IOException {
|
|
|
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);
|
|
|
+// LambdaQueryWrapper<ReportFiles> reportFilesLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+// reportFilesLambdaQueryWrapper.in(ReportFiles::getId, fileId);
|
|
|
+// reportFiles = reportFileService.list(reportFilesLambdaQueryWrapper);
|
|
|
+ String res = fileManagerService.getSystemFileFromFMS(fileId);
|
|
|
+ List<SystemFile> systemFiles = JSONArray.parseArray(res, SystemFile.class);
|
|
|
+ systemFiles.forEach(systemFile -> {
|
|
|
+ ReportFiles reportFile = new ReportFiles();
|
|
|
+ SystemFileToReportFile.systemFileToReportFile(systemFile, reportFile);
|
|
|
+ reportFiles.add(reportFile);
|
|
|
+ });
|
|
|
}
|
|
|
List<ReportFiles> reportFile = reportFiles;
|
|
|
proofs.forEach(item -> {
|
|
@@ -706,7 +712,7 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
|
|
|
}
|
|
|
|
|
|
//上传非专利文献证据
|
|
|
- public void addProofByFile(ProofAddNewDTO proofAddNewDTO, List<MultipartFile> files) {
|
|
|
+ public void addProofByFile(ProofAddNewDTO proofAddNewDTO, List<MultipartFile> files) throws IOException {
|
|
|
//检查本次请求合法性(是否有上传非专利文献证据)
|
|
|
if (proofAddNewDTO == null || proofAddNewDTO.getFileName() == null || proofAddNewDTO.getFileName() == "") {
|
|
|
ThrowException.throwXiaoShiException("请填写文件名");
|
|
@@ -731,7 +737,10 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
|
|
|
proof.setFileType(2); //装载证据类型
|
|
|
if (files != null && files.size() > 0) {
|
|
|
//上传非专利文献证据文件附件,附件信息入报告系统文件表后,返回附件ids
|
|
|
- List<Integer> fileIds = reportFileService.uploadFiles(files);
|
|
|
+ //List<Integer> fileIds = reportFileService.uploadFiles(files);
|
|
|
+ String res = fileManagerService.uploadFile(files);
|
|
|
+ JSONObject jsonObject = JSONObject.parseObject(res);
|
|
|
+ List<Integer> fileIds = JSONArray.parseArray(jsonObject.getString("data").toString(), Integer.class);
|
|
|
proof.setFileId(fileIds.get(0)); //装载文件id
|
|
|
}
|
|
|
proof.setSysOrder(++biggestSort);
|
|
@@ -743,10 +752,15 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
|
|
|
|
|
|
|
|
|
//删除证据文献
|
|
|
- public String deleteCompareFile(List<Integer> ids) {
|
|
|
+ public String deleteCompareFile(List<Integer> ids) throws IOException {
|
|
|
if (ids == null || ids.size() == 0) {
|
|
|
return Response.error("请至少选择一个证据文献");
|
|
|
}
|
|
|
+ List<CompareFiles> proofs = this.list(new LambdaQueryWrapper<CompareFiles>().in(CompareFiles::getId, ids));
|
|
|
+ if (proofs != null && proofs.size() > 0) {
|
|
|
+ List<Integer> fileIds = proofs.stream().filter(item -> item.getFileType().equals(2)).map(CompareFiles::getFileId).collect(Collectors.toList());
|
|
|
+ fileManagerService.deleteFileFromFMS(fileIds);
|
|
|
+ }
|
|
|
this.removeByIds(ids);
|
|
|
return Response.success("删除成功");
|
|
|
}
|