Преглед на файлове

智慧工地推送文件至电子档案数据规则接口--批量推送

cr преди 1 месец
родител
ревизия
edb0a272e7

+ 6 - 3
blade-service/blade-archive/src/main/java/org/springblade/archive/controller/ArchiveFileController.java

@@ -454,8 +454,11 @@ public class ArchiveFileController extends BladeController {
     @PostMapping("/sendFileToEArchives")
     @ApiOperationSupport(order = 18)
     @ApiOperation(value = "智慧工地推送文件至电子档案数据规则接口")
-    public R<Boolean> sendFileToEArchives(@RequestBody ArchiveDataVo vo) {
-        //数据入库
-        return  autoService.sendFileToEArchives(vo);
+    public R<Boolean> sendFileToEArchives(@RequestBody List<ArchiveDataVo> vo) {
+        for (ArchiveDataVo v : vo) {
+            //数据入库
+            autoService.sendFileToEArchives(v);
+        }
+        return  R.success("操作成功");
     }
 }

+ 28 - 26
blade-service/blade-archive/src/main/java/org/springblade/archive/service/impl/ArchivesAutoServiceImpl.java

@@ -4784,11 +4784,11 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
 			return R.fail("请根据接口文档上传参数");
 		}
 
-		String nodeId = dataInfo.getNodeId();
+		String nodeIdstr = dataInfo.getNodeId();
 		String contractId = dataInfo.getContractId();
 		String fileUrl = dataInfo.getFileUrl();
 		String fileName = dataInfo.getFileNmae();
-		if (nodeId == null || Func.isNull(nodeId)) {
+		if (nodeIdstr == null || Func.isNull(nodeIdstr)) {
 			return R.fail("请上传nodeId");
 		}
 		if (contractId == null || Func.isNull(contractId)) {
@@ -4807,31 +4807,33 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
 		if (contractInfo == null) {
 			return R.fail("请传输正确的contractId");
 		}
-		//获取文件的父节点Id
-		Long treeContractId = baseMapper.getArchiveFileByParentId(nodeId, contractId);
-		if (treeContractId == null || Func.isNull(treeContractId)) {
-			R.fail("请校验传输的nodeId和contractId,没有查到父节点Id");
-		}
-
 
-		// 将数据插入到 auto表中
-		ArchivesAuto archivesAuto = new ArchivesAuto();
-		long newPkId = SnowFlakeUtil.getId(); //主键Id
-		archivesAuto.setId(newPkId);
-		archivesAuto.setProjectId(Func.toLong(contractInfo.getPId()));
-		archivesAuto.setContractId(Func.toLong(contractId));
-		archivesAuto.setName(fileName);
-		archivesAuto.setIsDeleted(0);
-		archivesAuto.setNodeId(treeContractId);
-		this.save(archivesAuto);
-
-		// 保存文件到archive_file表中
-		long arueId = SnowFlakeUtil.getId(); //主键Id
-		ArchiveFile archiveFile = new ArchiveFile();
-		archiveFile.setId(arueId);
-		archiveFile.setArchiveId(newPkId);
-		archiveFile.setFileName(fileName);
-		archiveFileClient.saveArchiveFileByBIM(archiveFile);
+		String[] nodeIds = nodeIdstr.split(",");
+		for (String  nodeId: nodeIds) {
+			//获取文件的父节点Id
+			Long treeContractId = baseMapper.getArchiveFileByParentId(nodeId, contractId);
+			if (treeContractId == null || Func.isNull(treeContractId)) {
+				R.fail("请校验传输的nodeId和contractId,没有查到父节点Id");
+			}
+			// 将数据插入到 auto表中
+			ArchivesAuto archivesAuto = new ArchivesAuto();
+			long newPkId = SnowFlakeUtil.getId(); //主键Id
+			archivesAuto.setId(newPkId);
+			archivesAuto.setProjectId(Func.toLong(contractInfo.getPId()));
+			archivesAuto.setContractId(Func.toLong(contractId));
+			archivesAuto.setName(fileName);
+			archivesAuto.setIsDeleted(0);
+			archivesAuto.setNodeId(treeContractId);
+			this.save(archivesAuto);
+
+			// 保存文件到archive_file表中
+			long arueId = SnowFlakeUtil.getId(); //主键Id
+			ArchiveFile archiveFile = new ArchiveFile();
+			archiveFile.setId(arueId);
+			archiveFile.setArchiveId(newPkId);
+			archiveFile.setFileName(fileName);
+			archiveFileClient.saveArchiveFileByBIM(archiveFile);
+		}
 		return R.success("保存成功");
 	}