From 5c5c467986530d14eab87c0c6d4d6a924909a6a1 Mon Sep 17 00:00:00 2001 From: wangxianzhang Date: Fri, 26 Nov 2021 17:51:21 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=9A=20=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE=E6=95=B0=E6=8D=AE=E4=B8=8A=E9=93=BE=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/BlockChainUploadService.java | 3 +- .../impl/BlockChainUploadServiceImpl.java | 48 +++++++++++++++---- .../impl/ProjectProcessServiceImpl.java | 4 +- .../service/impl/ProjectServiceImpl.java | 14 +++--- .../service/impl/ProjectTraceServiceImpl.java | 4 +- 5 files changed, 52 insertions(+), 21 deletions(-) diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/BlockChainUploadService.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/BlockChainUploadService.java index a9bf0848e2..9f53558d2d 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/BlockChainUploadService.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/BlockChainUploadService.java @@ -1,5 +1,6 @@ package com.epmet.service; +import com.epmet.entity.ProjectEntity; import com.epmet.entity.ProjectProcessEntity; import com.epmet.entity.ProjectStaffEntity; @@ -15,5 +16,5 @@ public interface BlockChainUploadService { * @param processEntity 处理进展entity * @param assignedStaffEntities 指派给的工作人员entity */ - void send2BlockChain(ProjectProcessEntity processEntity, List assignedStaffEntities); + void send2BlockChain(ProjectEntity projectEntity, ProjectProcessEntity processEntity, List assignedStaffEntities); } diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/BlockChainUploadServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/BlockChainUploadServiceImpl.java index 2a7f45fccb..88f8603b59 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/BlockChainUploadServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/BlockChainUploadServiceImpl.java @@ -2,9 +2,8 @@ package com.epmet.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.epmet.dao.ProjectStaffDao; -import com.epmet.dto.form.BlockChainProcessProjectFormDTO; -import com.epmet.dto.form.BlockChainProjectProcessAssignedStaffFormDTO; -import com.epmet.dto.form.BlockChainProjectProcessFormDTO; +import com.epmet.dto.form.*; +import com.epmet.entity.ProjectEntity; import com.epmet.entity.ProjectProcessEntity; import com.epmet.entity.ProjectStaffEntity; import com.epmet.feign.EpmetThirdOpenFeignClient; @@ -35,8 +34,30 @@ public class BlockChainUploadServiceImpl implements BlockChainUploadService { * @param processEntity 处理进展entity * @param assignedStaffEntities 指派给的工作人员entity */ - public void send2BlockChain(ProjectProcessEntity processEntity, List assignedStaffEntities) { + public void send2BlockChain(ProjectEntity projectEntity, ProjectProcessEntity processEntity, List assignedStaffEntities) { + // 1.项目主信息 + BlockChainProjectFormDTO project = null; + + if (projectEntity != null) { + project = new BlockChainProjectFormDTO(); + project.setAgencyId(projectEntity.getAgencyId()); + project.setProjectId(projectEntity.getId()); + project.setCustomerId(projectEntity.getCustomerId()); + project.setCreatedBy(projectEntity.getCreatedBy()); + project.setCreatedTime(projectEntity.getCreatedTime()); + project.setCloseStatus(projectEntity.getClosedStatus()); + project.setLocateAddress(projectEntity.getLocateAddress()); + project.setLocateDimension(projectEntity.getLocateDimension()); + project.setLocateLongitude(projectEntity.getLocateLongitude()); + project.setOrgIdPath(projectEntity.getOrgIdPath()); + project.setOrigin(projectEntity.getOrigin()); + project.setOriginId(projectEntity.getOriginId()); + project.setStatus(projectEntity.getStatus()); + project.setTitle(projectEntity.getTitle()); + } + + // 2.项目处理进展 BlockChainProjectProcessFormDTO process = new BlockChainProjectProcessFormDTO(); process.setProcessId(processEntity.getId()); process.setCreatedBy(processEntity.getCreatedBy()); @@ -68,6 +89,7 @@ public class BlockChainUploadServiceImpl implements BlockChainUploadService { assignedStaffEntities = new ArrayList<>(); } + // 3.指派人员列表 List assignedStaffs = assignedStaffEntities.stream().map(e -> { BlockChainProjectProcessAssignedStaffFormDTO assignedStaff = new BlockChainProjectProcessAssignedStaffFormDTO(); assignedStaff.setStaffId(e.getStaffId()); @@ -85,10 +107,18 @@ public class BlockChainUploadServiceImpl implements BlockChainUploadService { assignedStaff.setProjectId(e.getProjectId()); return assignedStaff; }).collect(Collectors.toList()); - - BlockChainProcessProjectFormDTO form = new BlockChainProcessProjectFormDTO(); - form.setProcess(process); - form.setAssignedStaffs(assignedStaffs); - thirdOpenFeignClient.blockChainProcessProject(form); + + if (project == null) { + BlockChainProcessProjectFormDTO processForm = new BlockChainProcessProjectFormDTO(); + processForm.setProcess(process); + processForm.setAssignedStaffs(assignedStaffs); + thirdOpenFeignClient.blockChainProcessProject(processForm); + } else { + BlockChainCreateProjectFormDTO createForm = new BlockChainCreateProjectFormDTO(); + createForm.setProject(project); + createForm.setProcess(process); + createForm.setAssignedStaffs(assignedStaffs); + thirdOpenFeignClient.blockChainCreateProject(createForm); + } } } diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectProcessServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectProcessServiceImpl.java index 489bb0737f..510de14c1a 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectProcessServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectProcessServiceImpl.java @@ -413,7 +413,7 @@ public class ProjectProcessServiceImpl extends BaseServiceImpl()); + blockChainUploadService.send2BlockChain(null, projectProcessEntity, new ArrayList<>()); } catch (Exception e) { String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e); log.error("【项目流转】上链失败,错误信息:{}", errorMsg); @@ -2183,7 +2183,7 @@ public class ProjectServiceImpl extends BaseServiceImpl()); + blockChainUploadService.send2BlockChain(null, projectProcessEntity, new ArrayList<>()); } catch (Exception e) { String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e); log.error("【项目流转】上链失败,错误信息:{}", errorMsg); diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java index 8bf61721f0..c3b8aa856c 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java @@ -534,7 +534,7 @@ public class ProjectTraceServiceImpl implements ProjectTraceS // 数据上链 try { - blockChainUploadService.send2BlockChain(processEntity, entityList); + blockChainUploadService.send2BlockChain(projectEntity, processEntity, entityList); } catch (Exception e) { String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e); log.error("【项目流转】上链失败,错误信息:{}", errorMsg); @@ -858,7 +858,7 @@ public class ProjectTraceServiceImpl implements ProjectTraceS // 数据上链 try { - blockChainUploadService.send2BlockChain(processEntity, entityList); + blockChainUploadService.send2BlockChain(projectEntity, processEntity, entityList); } catch (Exception e) { String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e); log.error("【项目流转】上链失败,错误信息:{}", errorMsg);