luotaiqian 2026-08-05 20:46:48 +08:00
parent 50ee791408
commit 0dd4fcece8
3 changed files with 33 additions and 21 deletions

View File

@ -151,13 +151,13 @@ public class EvalProcessControlExecutor implements EvalProcessControlApi {
entity.setControllerPersonnelId(cmd.getSignTaskPersonCmd().getSignerPersonnelId()); entity.setControllerPersonnelId(cmd.getSignTaskPersonCmd().getSignerPersonnelId());
entity.setControllerName(cmd.getSignTaskPersonCmd().getSignerName()); entity.setControllerName(cmd.getSignTaskPersonCmd().getSignerName());
entity.setReviewerSignatureTaskStatus(SignatureTaskStatusEnum.DISPATCHED.getCode());
if (evalProcessControlDO != null) { if (evalProcessControlDO != null) {
entity.setId(evalProcessControlDO.getId()); entity.setId(evalProcessControlDO.getId());
entity = evalProcessControlGateway.modify(entity); entity = evalProcessControlGateway.modify(entity);
} else { } else {
// id为空新增数据 // id为空新增数据
entity.setOrgId(project.getOrgId()); entity.setOrgId(project.getOrgId());
entity.setReviewerSignatureTaskStatus(SignatureTaskStatusEnum.DISPATCHED.getCode());
entity = evalProcessControlGateway.save(entity); entity = evalProcessControlGateway.save(entity);
} }
@ -258,35 +258,19 @@ public class EvalProcessControlExecutor implements EvalProcessControlApi {
@Override @Override
public SingleResponse<EvalProcessControlDetailCO> getDetailByProject(Long projectId) { public SingleResponse<EvalProcessControlDetailCO> getDetailByProject(Long projectId) {
EvalProcessControlDetailCO detailCO = new EvalProcessControlDetailCO();
// 1. 查询项目成员中的过程控制负责人和机构负责人信息role包含PROCESS_CONTROL_LEAD或EVALUATION_AGENCY_HEAD // 1. 查询项目成员中的过程控制负责人和机构负责人信息role包含PROCESS_CONTROL_LEAD或EVALUATION_AGENCY_HEAD
List<EvalProjectMemberEntity> members = evalProjectMemberMapper.selectList( fillProcessControlMembers(detailCO, projectId);
new LambdaQueryWrapper<EvalProjectMemberDO>()
.eq(EvalProjectMemberDO::getProjectId, projectId)
.eq(EvalProjectMemberDO::getDeleteEnum, BooleanQAEnum.FALSE.getValue())
.and(w -> w.like(EvalProjectMemberDO::getRole, ProjectRoleEnum.PROCESS_CONTROL_LEAD.getVal())
.or().like(EvalProjectMemberDO::getRole, ProjectRoleEnum.EVALUATION_AGENCY_HEAD.getVal())))
.stream()
.map(evalProjectMemberDoConvertor::convertDoToE)
.collect(Collectors.toList());
// 按角色分别过滤
List<EvalProjectMemberEntity> controllers = members.stream()
.filter(m -> m.getRole() != null && m.getRole().contains(ProjectRoleEnum.PROCESS_CONTROL_LEAD.getVal()))
.collect(Collectors.toList());
List<EvalProjectMemberEntity> orgHeads = members.stream()
.filter(m -> m.getRole() != null && m.getRole().contains(ProjectRoleEnum.EVALUATION_AGENCY_HEAD.getVal()))
.collect(Collectors.toList());
// 2. 查询过程控制记录,未查询到则过程控制记录字段为空 // 2. 查询过程控制记录,未查询到则过程控制记录字段为空
EvalProcessControlEntity entity = evalProcessControlGateway.getByProjectId(projectId, null); EvalProcessControlEntity entity = evalProcessControlGateway.getByProjectId(projectId, null);
EvalProcessControlDetailCO detailCO = new EvalProcessControlDetailCO();
detailCO.setControllers(evalProcessControlConvertor.toMemberCOs(controllers));
detailCO.setOrgHeads(evalProcessControlConvertor.toMemberCOs(orgHeads));
// 查询项目归档信息 // 查询项目归档信息
EvalProjectEntity project = evalProjectNodeSupport.requireProject(projectId); EvalProjectEntity project = evalProjectNodeSupport.requireProject(projectId);
detailCO.setArchiveTransferorName(project.getArchiveTransferorName()); detailCO.setArchiveTransferorName(project.getArchiveTransferorName());
detailCO.setArchiveArchivistName(project.getArchiveArchivistName()); detailCO.setArchiveArchivistName(project.getArchiveArchivistName());
detailCO.setArchiveDate(project.getArchiveDate()); detailCO.setArchiveDate(project.getArchiveDate());
detailCO.setArchiveFlag(project.getArchiveFlag());
if (entity != null) { if (entity != null) {
detailCO.setProcessControl(evalProcessControlConvertor.toProcessCO(entity)); detailCO.setProcessControl(evalProcessControlConvertor.toProcessCO(entity));
@ -313,6 +297,30 @@ public class EvalProcessControlExecutor implements EvalProcessControlApi {
return SingleResponse.success(detailCO); return SingleResponse.success(detailCO);
} }
/**
* detailCO
*/
private void fillProcessControlMembers(EvalProcessControlDetailCO detailCO, Long projectId) {
List<EvalProjectMemberEntity> members = evalProjectMemberMapper.selectList(
new LambdaQueryWrapper<EvalProjectMemberDO>()
.eq(EvalProjectMemberDO::getProjectId, projectId)
.eq(EvalProjectMemberDO::getDeleteEnum, BooleanQAEnum.FALSE.getValue())
.and(w -> w.like(EvalProjectMemberDO::getRole, ProjectRoleEnum.PROCESS_CONTROL_LEAD.getVal())
.or().like(EvalProjectMemberDO::getRole, ProjectRoleEnum.EVALUATION_AGENCY_HEAD.getVal())))
.stream()
.map(evalProjectMemberDoConvertor::convertDoToE)
.collect(Collectors.toList());
// 按角色分别过滤
List<EvalProjectMemberEntity> controllers = members.stream()
.filter(m -> m.getRole() != null && m.getRole().contains(ProjectRoleEnum.PROCESS_CONTROL_LEAD.getVal()))
.collect(Collectors.toList());
List<EvalProjectMemberEntity> orgHeads = members.stream()
.filter(m -> m.getRole() != null && m.getRole().contains(ProjectRoleEnum.EVALUATION_AGENCY_HEAD.getVal()))
.collect(Collectors.toList());
detailCO.setControllers(evalProcessControlConvertor.toMemberCOs(controllers));
detailCO.setOrgHeads(evalProcessControlConvertor.toMemberCOs(orgHeads));
}
@Override @Override
public SingleResponse<EvalProcessControlCO> generateProcessControlForm(EvalgenerateProcessControlFormCmd cmd) { public SingleResponse<EvalProcessControlCO> generateProcessControlForm(EvalgenerateProcessControlFormCmd cmd) {
Long projectId = Long.parseLong(cmd.getProjectId()); Long projectId = Long.parseLong(cmd.getProjectId());

View File

@ -190,7 +190,8 @@ public class EvalSignTaskExecutor implements EvalSignTaskApi {
.set(EvalProcessControlDO::getReviewerSignatureUrl, cmd.getSignerUrl()) .set(EvalProcessControlDO::getReviewerSignatureUrl, cmd.getSignerUrl())
.set(EvalProcessControlDO::getReviewerSignatureTaskStatus, SignatureTaskStatusEnum.COMPLETED.getCode())); .set(EvalProcessControlDO::getReviewerSignatureTaskStatus, SignatureTaskStatusEnum.COMPLETED.getCode()));
} }
if (!evalProcessControlDO.getOrgHeadSignatureTaskStatus().equals(code)) { if (evalProcessControlDO.getReviewerSignatureTaskStatus().equals(code)
&& !evalProcessControlDO.getOrgHeadSignatureTaskStatus().equals(code)) {
evalProcessControlMapper.update(new LambdaUpdateWrapper<EvalProcessControlDO>() evalProcessControlMapper.update(new LambdaUpdateWrapper<EvalProcessControlDO>()
.eq(EvalProcessControlDO::getId, evalSignTaskDO.getBizRefId()) .eq(EvalProcessControlDO::getId, evalSignTaskDO.getBizRefId())
.eq(EvalProcessControlDO::getProjectId, evalSignTaskDO.getProjectId()) .eq(EvalProcessControlDO::getProjectId, evalSignTaskDO.getProjectId())

View File

@ -41,4 +41,7 @@ public class EvalProcessControlDetailCO {
@ApiModelProperty("项目归档时间") @ApiModelProperty("项目归档时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime archiveDate; private LocalDateTime archiveDate;
@ApiModelProperty("项目归档状态 1归档 0未归档")
private Integer archiveFlag;
} }