瀏覽代碼

档案检查四要素显示

lvy@qq.com 1 月之前
父節點
當前提交
9b775759a5

+ 1 - 1
blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/vo/ArchivesAutoVO.java

@@ -234,7 +234,7 @@ public class ArchivesAutoVO extends ArchivesAuto {
 
 		private  String archiveId;
 
-		private Long id;
+		private String id;
 		private Long fileSize;
 		private Integer isElement;
 	}

+ 9 - 2
blade-service/blade-archive/src/main/java/org/springblade/archive/controller/ArchiveFileController.java

@@ -416,8 +416,15 @@ public class ArchiveFileController extends BladeController {
     @GetMapping("/getMetadataFile")
     @ApiOperationSupport(order = 16)
     @ApiOperation(value = "文件收集-上传文件责任者")
-    public R getMetadataFile(Long fileId) {
-        return R.data(metadataClassificationClient.getMetadataFile(fileId));
+    public R getMetadataFile(String fileId) {
+        long id;
+        try  {
+            fileId = fileId.split("_")[0];
+            id = Long.parseLong(fileId);
+        } catch (Exception e) {
+            return R.data(null);
+        }
+        return R.data(metadataClassificationClient.getMetadataFile(id));
     }
 
     /**

+ 9 - 2
blade-service/blade-archive/src/main/java/org/springblade/archive/controller/ArchiveInspectionInfoController.java

@@ -97,9 +97,16 @@ public class ArchiveInspectionInfoController {
     @GetMapping("/opinion")
     @ApiOperationSupport(order = 6)
     @ApiOperation(value = "获取抽检意见", notes = "传入fileId")
-    public R<ArchiveInspectionDTO> getOpinion(@RequestParam Long fileId) {
+    public R<ArchiveInspectionDTO> getOpinion(@RequestParam String fileId) {
         Long userId = AuthUtil.getUserId();
-        ArchiveInspectionDTO archiveInspectionDTO = archiveInspectionService.getbyFileId(fileId, userId);
+        long id;
+        try  {
+            fileId = fileId.split("_")[0];
+            id = Long.parseLong(fileId);
+        } catch (Exception e) {
+            return R.data(null);
+        }
+        ArchiveInspectionDTO archiveInspectionDTO = archiveInspectionService.getbyFileId(id, userId);
         return R.data(archiveInspectionDTO);
     }
 

+ 84 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/service/impl/ArchivesAutoServiceImpl.java

@@ -376,6 +376,90 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
 		} else {
 			vo.setPageNumber(0);
 		}
+		String outUrl = vo.getOutUrl();
+		if (StringUtils.isNotBlank(outUrl)) {
+			// 根据 factorType 字符串生成档案号码字符串链表
+			ArchiveProjectConfig config = archiveProjectConfigService.getByProjectIdOrNew(vo.getProjectId());
+			String[] frontUrls = outUrl.split(",");
+			ArchivesAutoVO.ApprovalFile front = new ArchivesAutoVO.ApprovalFile();
+			ArchivesAutoVO.ApprovalFile cataLog = new ArchivesAutoVO.ApprovalFile();
+			ArchivesAutoVO.ApprovalFile spare = new ArchivesAutoVO.ApprovalFile();
+			ArchivesAutoVO.ApprovalFile back = new ArchivesAutoVO.ApprovalFile();
+			for (String frontUrl : frontUrls) {
+				// 封面(原r_Archives_front)增加中文"封面"匹配
+				if ((frontUrl.contains(ArchiveAutoPdfServiceImpl.ARCHIVE_NUMBER[0])
+						|| frontUrl.contains("封面"))
+						&& config.getFactorType().contains("1")) {
+					front.setFileName("封面");
+					if(frontUrl.contains("@@@")){
+						front.setFileUrl(frontUrl.substring(0,frontUrl.indexOf("@@@")));
+					}else {
+						front.setFileUrl(frontUrl);
+					}
+				}
+				// 卷内目录(原r_Archives_catalog)增加中文匹配
+				else if ((frontUrl.contains(ArchiveAutoPdfServiceImpl.ARCHIVE_NUMBER[1])
+						|| frontUrl.contains("卷内目录"))
+						&& config.getFactorType().contains("2")) {
+					cataLog.setFileName("卷内目录");
+					if(frontUrl.contains("@@@")){
+						cataLog.setFileUrl(frontUrl.substring(0,frontUrl.indexOf("@@@")));
+					}else {
+						cataLog.setFileUrl(frontUrl);
+					}
+				}
+				// 备考表(原r_Archives_spare)增加中文匹配
+				else if ((frontUrl.contains(ArchiveAutoPdfServiceImpl.ARCHIVE_NUMBER[2])
+						|| frontUrl.contains("备考表"))
+						&& config.getFactorType().contains("3")) {
+					spare.setFileName("备考表");
+					if(frontUrl.contains("@@@")){
+						spare.setFileUrl(frontUrl.substring(0,frontUrl.indexOf("@@@")));
+					}else {
+						spare.setFileUrl(frontUrl);
+					}
+				}
+				// 背脊(原r_Archives_back)增加中文匹配
+				else if ((frontUrl.contains(ArchiveAutoPdfServiceImpl.ARCHIVE_NUMBER[3])
+						|| frontUrl.contains("背脊"))
+						&& config.getFactorType().contains("4")) {
+					back.setFileName("背脊");
+					if(frontUrl.contains("@@@")){
+						back.setFileUrl(frontUrl.substring(0,frontUrl.indexOf("@@@")));
+					}else {
+						back.setFileUrl(frontUrl);
+					}
+				}
+			}
+			List<ArchivesAutoVO.ApprovalFile> files = vo.getApprovalFileList();
+			if (files != null && !files.isEmpty()) {
+				ArchivesAutoVO.ApprovalFile temp = files.get(0);
+				if (front.getFileUrl() != null) {
+					front.setId(temp.getId() + "_1");
+					front.setPdfFileUrl(front.getFileUrl());
+					files.add(0,front);
+				}
+				if (cataLog.getFileUrl() != null) {
+					cataLog.setId(temp.getId()  + "_2");
+					cataLog.setPdfFileUrl(cataLog.getFileUrl());
+					if (front.getFileUrl() != null) {
+						files.add(1,cataLog);
+					} else {
+						files.add(0,cataLog);
+					}
+				}
+				if (spare.getFileUrl() != null) {
+					spare.setId(temp.getId()  + "_3");
+					spare.setPdfFileUrl(spare.getFileUrl());
+					files.add(spare);
+				}
+				if (back.getFileUrl() != null) {
+					back.setId(temp.getId()  + "_4");
+					back.setPdfFileUrl(back.getFileUrl());
+					files.add(back);
+				}
+			}
+		}
 		return vo;
 	}