Browse Source

修改:

错误提交
feature/evaluate
wangxianzhang 4 years ago
parent
commit
b0fad9854f
  1. 3
      epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/BlockChainProcessProjectFormDTO.java
  2. 2
      epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/BlockChainProjectProcessFormDTO.java
  3. 16
      epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/mq/producer/BlockChainProducer.java
  4. 101
      epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/BlockChainProjectServiceImpl.java
  5. 2
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/BlockChainUploadService.java
  6. 31
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/BlockChainUploadServiceImpl.java
  7. 4
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectProcessServiceImpl.java
  8. 14
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java
  9. 4
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java

3
epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/BlockChainProcessProjectFormDTO.java

@ -15,4 +15,7 @@ public class BlockChainProcessProjectFormDTO {
private BlockChainProjectProcessFormDTO process;
private List<BlockChainProjectProcessAssignedStaffFormDTO> assignedStaffs;
// 处理人信息更新
private BlockChainProjectProcessAssignedStaffFormDTO handledStaff;
}

2
epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/BlockChainProjectProcessFormDTO.java

@ -71,7 +71,7 @@ public class BlockChainProjectProcessFormDTO {
private Integer isSend;
@NotNull(message = "耗费天数必填")
private Integer costWorkDays;
private String costWorkDays;
@NotBlank(message = "创建者ID必填")
private String createdBy;

16
epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/mq/producer/BlockChainProducer.java

@ -27,16 +27,26 @@ import javax.annotation.PreDestroy;
@Slf4j
public class BlockChainProducer {
// topic
/**
* topic
*/
public static final String TOPIC_PROJECT = "project";
public static final String TOPIC_AUTH = "auth";
// tag
/**
* tag
*/
public static final String TAG_SEND_PROJECT = "send_project";
// 发送处理进展
public static final String TAG_SEND_PROCESS = "send_process";
// 发送流转过程中被指派的人员
public static final String TAG_SEND_ASSIGNED_STAFFS = "send_assigned_staffs";
// 发送处理完成的人员
public static final String TAG_SEND_HANDLED_STAFF = "send_handled_staff";
// 组
/**
*
*/
public static final String GROUP_EPMET_CLOUD_PROJECT_SENDER = "epmet_cloud_project_sender";
private DefaultMQProducer producer;

101
epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/BlockChainProjectServiceImpl.java

@ -50,7 +50,7 @@ public class BlockChainProjectServiceImpl implements BlockChainProjectService, R
BlockChainProjectProcessFormDTO process = input.getProcess();
List<BlockChainProjectProcessAssignedStaffFormDTO> assignedStaffs = input.getAssignedStaffs();
fill(project, process, assignedStaffs);
fill(project, process, assignedStaffs, null);
String projectString = JSON.toJSONString(project);
String processString = JSON.toJSONString(process);
@ -66,7 +66,8 @@ public class BlockChainProjectServiceImpl implements BlockChainProjectService, R
* @param project
* @param process
*/
private void fill(BlockChainProjectFormDTO project, BlockChainProjectProcessFormDTO process, List<BlockChainProjectProcessAssignedStaffFormDTO> assignedStaffs) {
private void fill(BlockChainProjectFormDTO project, BlockChainProjectProcessFormDTO process,
List<BlockChainProjectProcessAssignedStaffFormDTO> assignedStaffs, BlockChainProjectProcessAssignedStaffFormDTO handledStaff) {
// 一.填充project信息
@ -128,42 +129,54 @@ public class BlockChainProjectServiceImpl implements BlockChainProjectService, R
// 三.填充指派用户信息
if (assignedStaffs != null) {
for (BlockChainProjectProcessAssignedStaffFormDTO assignedStaff : assignedStaffs) {
// 组织信息
if (StringUtils.isNotBlank(assignedStaff.getOrgId())) {
CustomerAgencyDTO assignedStaffAgencyInfo = getResultDataOrThrowsException(govOrgOpenFeignClient.getAgencyById(assignedStaff.getOrgId()),
ServiceConstant.GOV_ORG_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "【项目信息上链】查询指派人员组织信息失败");
assignedStaff.setOrgName(assignedStaffAgencyInfo.getOrganizationName());
}
// 网格信息
if (StringUtils.isNotBlank(assignedStaff.getGridId())) {
CustomerGridFormDTO assignedStaffGridFormDTO = new CustomerGridFormDTO();
assignedStaffGridFormDTO.setGridId(assignedStaff.getGridId());
CustomerGridDTO assignedStaffProcessGridInfo = getResultDataOrThrowsException(govOrgOpenFeignClient.getCustomerGridByGridId(assignedStaffGridFormDTO),
ServiceConstant.GOV_ORG_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "【项目信息上链】查询指派人员网格信息失败");
Optional.of(assignedStaffProcessGridInfo).ifPresent((gridOfStaff) -> assignedStaff.setGridName(gridOfStaff.getGridName()));
}
// 指派用户
CustomerStaffDTO assignedStaffDTO = new CustomerStaffDTO();
assignedStaffDTO.setUserId(assignedStaff.getStaffId());
CustomerStaffDTO assignedStaffInfo = getResultDataOrThrowsException(userOpenFeignClient.getCustomerStaffInfoByUserId(assignedStaffDTO),
ServiceConstant.EPMET_USER_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "【项目信息上链】查询指派用户信息失败");
assignedStaff.setStaffName(assignedStaffInfo.getRealName());
// 创建者
CustomerStaffDTO createStaffDTO = new CustomerStaffDTO();
createStaffDTO.setUserId(assignedStaff.getCreatedBy());
CustomerStaffDTO createStaffInfo = getResultDataOrThrowsException(userOpenFeignClient.getCustomerStaffInfoByUserId(createStaffDTO),
ServiceConstant.EPMET_USER_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "【项目信息上链】查询指派用户信息失败");
Optional.of(createStaffInfo).ifPresent((createStaff) -> assignedStaff.setCreaterName(createStaffInfo.getRealName()));
fillAssignedStaffInfo(assignedStaff);
}
}
// 4.填充当前处理人信息
if (handledStaff != null) {
fillAssignedStaffInfo(handledStaff);
}
}
/**
* 填充被指派人的信息
* @param assignedStaff
*/
private void fillAssignedStaffInfo(BlockChainProjectProcessAssignedStaffFormDTO assignedStaff) {
// 组织信息
if (StringUtils.isNotBlank(assignedStaff.getOrgId())) {
CustomerAgencyDTO assignedStaffAgencyInfo = getResultDataOrThrowsException(govOrgOpenFeignClient.getAgencyById(assignedStaff.getOrgId()),
ServiceConstant.GOV_ORG_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "【项目信息上链】查询指派人员组织信息失败");
assignedStaff.setOrgName(assignedStaffAgencyInfo.getOrganizationName());
}
// 网格信息
if (StringUtils.isNotBlank(assignedStaff.getGridId())) {
CustomerGridFormDTO assignedStaffGridFormDTO = new CustomerGridFormDTO();
assignedStaffGridFormDTO.setGridId(assignedStaff.getGridId());
CustomerGridDTO assignedStaffProcessGridInfo = getResultDataOrThrowsException(govOrgOpenFeignClient.getCustomerGridByGridId(assignedStaffGridFormDTO),
ServiceConstant.GOV_ORG_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "【项目信息上链】查询指派人员网格信息失败");
Optional.of(assignedStaffProcessGridInfo).ifPresent((gridOfStaff) -> assignedStaff.setGridName(gridOfStaff.getGridName()));
}
// 指派用户
CustomerStaffDTO assignedStaffDTO = new CustomerStaffDTO();
assignedStaffDTO.setUserId(assignedStaff.getStaffId());
CustomerStaffDTO assignedStaffInfo = getResultDataOrThrowsException(userOpenFeignClient.getCustomerStaffInfoByUserId(assignedStaffDTO),
ServiceConstant.EPMET_USER_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "【项目信息上链】查询指派用户信息失败");
assignedStaff.setStaffName(assignedStaffInfo.getRealName());
// 创建者
CustomerStaffDTO createStaffDTO = new CustomerStaffDTO();
createStaffDTO.setUserId(assignedStaff.getCreatedBy());
CustomerStaffDTO createStaffInfo = getResultDataOrThrowsException(userOpenFeignClient.getCustomerStaffInfoByUserId(createStaffDTO),
ServiceConstant.EPMET_USER_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "【项目信息上链】查询指派用户信息失败");
Optional.of(createStaffInfo).ifPresent((createStaff) -> assignedStaff.setCreaterName(createStaffInfo.getRealName()));
}
@Override
@ -171,13 +184,21 @@ public class BlockChainProjectServiceImpl implements BlockChainProjectService, R
BlockChainProjectProcessFormDTO process = input.getProcess();
List<BlockChainProjectProcessAssignedStaffFormDTO> assignedStaffs = input.getAssignedStaffs();
BlockChainProjectProcessAssignedStaffFormDTO handledStaff = input.getHandledStaff();
fill(null, process, assignedStaffs);
fill(null, process, assignedStaffs, handledStaff);
String processString = JSON.toJSONString(process);
String assignedStaffsString = JSON.toJSONString(assignedStaffs);
blockChainProducer.sendMsg(BlockChainProducer.TOPIC_PROJECT, BlockChainProducer.TAG_SEND_PROCESS, processString);
blockChainProducer.sendMsg(BlockChainProducer.TOPIC_PROJECT, BlockChainProducer.TAG_SEND_ASSIGNED_STAFFS, assignedStaffsString);
if (assignedStaffs != null && assignedStaffs.size() > 0) {
String assignedStaffsString = JSON.toJSONString(assignedStaffs);
blockChainProducer.sendMsg(BlockChainProducer.TOPIC_PROJECT, BlockChainProducer.TAG_SEND_ASSIGNED_STAFFS, assignedStaffsString);
}
if (handledStaff != null) {
String handledStaffString = JSON.toJSONString(handledStaff);
blockChainProducer.sendMsg(BlockChainProducer.TOPIC_PROJECT, BlockChainProducer.TAG_SEND_HANDLED_STAFF, handledStaffString);
}
}
}

2
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/BlockChainUploadService.java

@ -16,5 +16,5 @@ public interface BlockChainUploadService {
* @param processEntity 处理进展entity
* @param assignedStaffEntities 指派给的工作人员entity
*/
void send2BlockChain(ProjectEntity projectEntity, ProjectProcessEntity processEntity, List<ProjectStaffEntity> assignedStaffEntities);
void send2BlockChain(ProjectEntity projectEntity, ProjectProcessEntity processEntity, List<ProjectStaffEntity> assignedStaffEntities, String projectStaffId);
}

31
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/BlockChainUploadServiceImpl.java

@ -34,11 +34,11 @@ public class BlockChainUploadServiceImpl implements BlockChainUploadService {
* @param processEntity 处理进展entity
* @param assignedStaffEntities 指派给的工作人员entity
*/
public void send2BlockChain(ProjectEntity projectEntity, ProjectProcessEntity processEntity, List<ProjectStaffEntity> assignedStaffEntities) {
public void send2BlockChain(ProjectEntity projectEntity, ProjectProcessEntity processEntity, List<ProjectStaffEntity> assignedStaffEntities, String projectStaffId) {
// 1.项目主信息
BlockChainProjectFormDTO project = null;
if (projectEntity != null) {
project = new BlockChainProjectFormDTO();
project.setAgencyId(projectEntity.getAgencyId());
@ -62,8 +62,7 @@ public class BlockChainUploadServiceImpl implements BlockChainUploadService {
process.setProcessId(processEntity.getId());
process.setCreatedBy(processEntity.getCreatedBy());
process.setCreatedTime(processEntity.getCreatedTime());
String costWorkdays = processEntity.getCostWorkdays();
process.setCostWorkDays(StringUtils.isBlank(costWorkdays) ? null : Integer.valueOf(costWorkdays));
process.setCostWorkDays(processEntity.getCostWorkdays());
process.setAgencyId(processEntity.getAgencyId());
process.setCustomerId(processEntity.getCustomerId());
process.setDepartmentId(processEntity.getDepartmentId());
@ -107,13 +106,37 @@ public class BlockChainUploadServiceImpl implements BlockChainUploadService {
assignedStaff.setProjectId(e.getProjectId());
return assignedStaff;
}).collect(Collectors.toList());
// 4.当前处理人
BlockChainProjectProcessAssignedStaffFormDTO handledStaff = null;
if (StringUtils.isNotBlank(projectStaffId)) {
ProjectStaffEntity handledStaffEntity = projectStaffDao.selectById(projectStaffId);
handledStaff = new BlockChainProjectProcessAssignedStaffFormDTO();
handledStaff.setStaffId(handledStaffEntity.getStaffId());
handledStaff.setCreatedBy(handledStaffEntity.getCreatedBy());
handledStaff.setCustomerId(handledStaffEntity.getCustomerId());
handledStaff.setCreatedTime(handledStaffEntity.getCreatedTime());
handledStaff.setProcessId(handledStaffEntity.getProcessId());
handledStaff.setDepartmentId(handledStaffEntity.getDepartmentId());
handledStaff.setDepartmentName(handledStaffEntity.getDepartmentName());
handledStaff.setGridId(handledStaffEntity.getGridId());
handledStaff.setId(handledStaffEntity.getId());
handledStaff.setIsHandle(handledStaffEntity.getIsHandle());
handledStaff.setOrgId(handledStaffEntity.getOrgId());
handledStaff.setOrgIdPath(handledStaffEntity.getOrgIdPath());
handledStaff.setProjectId(handledStaffEntity.getProjectId());
}
if (project == null) {
// 处理
BlockChainProcessProjectFormDTO processForm = new BlockChainProcessProjectFormDTO();
processForm.setProcess(process);
processForm.setAssignedStaffs(assignedStaffs);
processForm.setHandledStaff(handledStaff);
thirdOpenFeignClient.blockChainProcessProject(processForm);
} else {
// 立项
BlockChainCreateProjectFormDTO createForm = new BlockChainCreateProjectFormDTO();
createForm.setProject(project);
createForm.setProcess(process);

4
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<ProjectProcessDao
// 数据上链
try {
blockChainUploadService.send2BlockChain(null, processEntity, entityList);
blockChainUploadService.send2BlockChain(null, processEntity, entityList, formDTO.getProjectStaffId());
} catch (Exception e) {
String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e);
log.error("【项目流转】上链失败,错误信息:{}", errorMsg);
@ -803,7 +803,7 @@ public class ProjectProcessServiceImpl extends BaseServiceImpl<ProjectProcessDao
// 数据上链
try {
blockChainUploadService.send2BlockChain(null, processEntity, entityList);
blockChainUploadService.send2BlockChain(null, processEntity, entityList, formDTO.getProjectStaffId());
} catch (Exception e) {
String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e);
log.error("【项目流转】上链失败,错误信息:{}", errorMsg);

14
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java

@ -583,7 +583,7 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
// 数据上链
try {
blockChainUploadService.send2BlockChain(null, projectProcessEntity, null);
blockChainUploadService.send2BlockChain(null, projectProcessEntity, null, fromDTO.getProjectStaffId());
} catch (Exception e) {
String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e);
log.error("【项目流转】上链失败,错误信息:{}", errorMsg);
@ -802,7 +802,7 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
// 数据上链
try {
blockChainUploadService.send2BlockChain(null, projectProcessEntity, null);
blockChainUploadService.send2BlockChain(null, projectProcessEntity, null, fromDTO.getProjectStaffId());
} catch (Exception e) {
String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e);
log.error("【项目流转】上链失败,错误信息:{}", errorMsg);
@ -978,7 +978,7 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
// 数据上链
try {
blockChainUploadService.send2BlockChain(null, projectProcessEntity, null);
blockChainUploadService.send2BlockChain(null, projectProcessEntity, Arrays.asList(projectStaff), fromDTO.getProjectStaffId());
} catch (Exception e) {
String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e);
log.error("【项目流转】上链失败,错误信息:{}", errorMsg);
@ -1295,7 +1295,7 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
// 数据上链
try {
blockChainUploadService.send2BlockChain(projectEntity, processEntity, entityList);
blockChainUploadService.send2BlockChain(projectEntity, processEntity, entityList, null);
} catch (Exception e) {
String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e);
log.error("【项目流转】上链失败,错误信息:{}", errorMsg);
@ -1391,7 +1391,7 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
// 数据上链
try {
blockChainUploadService.send2BlockChain(null, projectProcessEntity, new ArrayList<>());
blockChainUploadService.send2BlockChain(null, projectProcessEntity, new ArrayList<>(), null);
} catch (Exception e) {
String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e);
log.error("【项目流转】上链失败,错误信息:{}", errorMsg);
@ -2183,7 +2183,7 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
// 数据上链
try {
blockChainUploadService.send2BlockChain(null, projectProcessEntity, null);
blockChainUploadService.send2BlockChain(null, projectProcessEntity, Arrays.asList(projectStaff), fromDTO.getProjectStaffId());
} catch (Exception e) {
String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e);
log.error("【项目流转】上链失败,错误信息:{}", errorMsg);
@ -2288,7 +2288,7 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
// 数据上链
try {
blockChainUploadService.send2BlockChain(null, projectProcessEntity, new ArrayList<>());
blockChainUploadService.send2BlockChain(null, projectProcessEntity, new ArrayList<>(), null);
} catch (Exception e) {
String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e);
log.error("【项目流转】上链失败,错误信息:{}", errorMsg);

4
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java

@ -534,7 +534,7 @@ public class ProjectTraceServiceImpl<ProjectTagService> implements ProjectTraceS
// 数据上链
try {
blockChainUploadService.send2BlockChain(projectEntity, processEntity, entityList);
blockChainUploadService.send2BlockChain(projectEntity, processEntity, entityList, null);
} catch (Exception e) {
String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e);
log.error("【项目流转】上链失败,错误信息:{}", errorMsg);
@ -858,7 +858,7 @@ public class ProjectTraceServiceImpl<ProjectTagService> implements ProjectTraceS
// 数据上链
try {
blockChainUploadService.send2BlockChain(projectEntity, processEntity, entityList);
blockChainUploadService.send2BlockChain(projectEntity, processEntity, entityList, null);
} catch (Exception e) {
String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e);
log.error("【项目流转】上链失败,错误信息:{}", errorMsg);

Loading…
Cancel
Save