diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalSignTaskExecutor.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalSignTaskExecutor.java index 7c051a9..0f45a54 100644 --- a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalSignTaskExecutor.java +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalSignTaskExecutor.java @@ -22,6 +22,12 @@ import org.qinan.safetyeval.domain.gateway.SafetyMessageGateway; import org.qinan.safetyeval.domain.query.EvalSignTaskQuery; import org.qinan.safetyeval.domain.query.PageResult; import org.qinan.safetyeval.domain.service.EvalSignTaskDomainService; +import org.qinan.safetyeval.infrastructure.dataobject.EvalProjectMemberDO; +import org.qinan.safetyeval.infrastructure.dataobject.EvalRiskParticipantDO; +import org.qinan.safetyeval.infrastructure.dataobject.EvalSignTaskDO; +import org.qinan.safetyeval.infrastructure.mapper.EvalProjectMemberMapper; +import org.qinan.safetyeval.infrastructure.mapper.EvalRiskParticipantMapper; +import org.qinan.safetyeval.infrastructure.mapper.EvalSignTaskMapper; import org.qinan.safetyeval.infrastructure.dataobject.*; import org.qinan.safetyeval.infrastructure.mapper.*; import org.qinan.safetyeval.infrastructure.support.InstitutionOrgSupport; @@ -31,10 +37,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.time.LocalDateTime; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; @Service @@ -57,6 +60,8 @@ public class EvalSignTaskExecutor implements EvalSignTaskApi { @Autowired private EvalRiskParticipantMapper evalRiskParticipantMapper; @Autowired + private EvalProjectMapper evalProjectMapper; + @Autowired private EvalInternalReviewMapper evalInternalReviewMapper; @Autowired private EvalTechReviewMapper evalTechReviewMapper; @@ -108,8 +113,21 @@ public class EvalSignTaskExecutor implements EvalSignTaskApi { EvalSignTaskQuery domainQuery = evalSignTaskCmdConvertor.convertPageQueryToQ(query); domainQuery.setOrgId(institutionOrgSupport.resolveCurrentOrgId()); PageResult pageResult = evalSignTaskDomainService.page(domainQuery); + List co = evalSignTaskCmdConvertor.convertEListToCOList(pageResult.getRecords()); + for (EvalSignTaskCO evalSignTaskCO : co) { + EvalProjectDO evalProjectDO = evalProjectMapper.selectById(evalSignTaskCO.getProjectId()); + evalSignTaskCO.setProjectName(evalProjectDO.getProjectName()); + evalSignTaskCO.setNodeName(Objects.requireNonNull(ProjectStageEnum.fromVal(evalSignTaskCO.getNodeCode())).getMsg()); + List evalProjectMemberDOS = evalProjectMemberMapper.selectList(new LambdaQueryWrapper() + .eq(EvalProjectMemberDO::getProjectId, evalSignTaskCO.getProjectId()) + .eq(EvalProjectMemberDO::getPersonnelId, evalSignTaskCO.getSignerPersonnelId()) + .select(EvalProjectMemberDO::getRole, EvalProjectMemberDO::getPersonnelName) + .last("limit 1")); + evalSignTaskCO.setSignerPersonnelName(evalProjectMemberDOS.get(0).getPersonnelName()); + evalSignTaskCO.setSignerRoles(ProjectStageEnum.fromVals(evalProjectMemberDOS.get(0).getRole())); + } return PageResponse.of( - evalSignTaskCmdConvertor.convertEListToCOList(pageResult.getRecords()), + co , pageResult.getTotal()); } diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/co/institution/EvalSignTaskCO.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/co/institution/EvalSignTaskCO.java index acbf38a..d998c11 100644 --- a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/co/institution/EvalSignTaskCO.java +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/co/institution/EvalSignTaskCO.java @@ -11,17 +11,26 @@ public class EvalSignTaskCO { private String id; private String orgId; private String projectId; + @ApiModelProperty(value = "项目名称") + private String projectName; private String nodeCode; + @ApiModelProperty(value = "节点名称") + private String nodeName; private String bizRefId; + @ApiModelProperty("待签人员id") private String signerPersonnelId; + @ApiModelProperty("待签人员名称") + private String signerPersonnelName; private String taskTitle; - + @ApiModelProperty("待签角色") + private String signerRoles; @ApiModelProperty(value = "任务状态编码:1待签 2已签 3已作废", example = "1") private Integer taskStatusCode; @ApiModelProperty(value = "任务状态名称:待签/已签/已作废", example = "待签") private String taskStatusName; + @ApiModelProperty(value = "任务下发时间") private LocalDateTime issueTime; private String signerUrl; private String remarks;