fix: bug
parent
f684e884c9
commit
24729c06ee
|
|
@ -48,13 +48,13 @@ public class EvalProjectMemberController {
|
||||||
@ApiOperation("保存项目经理签字人")
|
@ApiOperation("保存项目经理签字人")
|
||||||
@PostMapping("/participant/save")
|
@PostMapping("/participant/save")
|
||||||
public SingleResponse<Boolean> saveParticipant(@Validated @RequestBody List<EvalRiskParticipantSaveCmd> cmd) {
|
public SingleResponse<Boolean> saveParticipant(@Validated @RequestBody List<EvalRiskParticipantSaveCmd> cmd) {
|
||||||
return evalRiskAnalysisApi.saveParticipant(cmd);
|
return evalRiskAnalysisApi.saveParticipantMember(cmd);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiOperation("参与人列表")
|
@ApiOperation("参与人列表")
|
||||||
@GetMapping("/participant/list")
|
@GetMapping("/participant/list")
|
||||||
public SingleResponse<List<EvalRiskParticipantCO>> listParticipants(
|
public SingleResponse<List<EvalRiskParticipantCO>> listParticipants(
|
||||||
@ApiParam("项目组id") @RequestParam String projectTeamId) {
|
@ApiParam("projectId") @RequestParam String projectId) {
|
||||||
return evalRiskAnalysisApi.listParticipants(projectTeamId);
|
return evalRiskAnalysisApi.listParticipantsMember(projectId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -48,10 +48,7 @@ import org.springframework.util.CollectionUtils;
|
||||||
import org.springframework.util.StringUtils;
|
import org.springframework.util.StringUtils;
|
||||||
|
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.util.ArrayList;
|
import java.util.*;
|
||||||
import java.util.Collections;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
|
|
@ -282,7 +279,8 @@ public class EvalProjectExecutor implements EvalProjectApi {
|
||||||
.map(EvalProjectCO::getCustomerId).collect(Collectors.toList()))
|
.map(EvalProjectCO::getCustomerId).collect(Collectors.toList()))
|
||||||
.stream().collect(Collectors.toMap(EvalCustomerDO::getId, EvalCustomerDO::getCustomerName));
|
.stream().collect(Collectors.toMap(EvalCustomerDO::getId, EvalCustomerDO::getCustomerName));
|
||||||
Map<Long, String> projectRole = getProjectRole(co.stream().map(EvalProjectCO::getId).map(Long::new).collect(Collectors.toList()));
|
Map<Long, String> projectRole = getProjectRole(co.stream().map(EvalProjectCO::getId).map(Long::new).collect(Collectors.toList()));
|
||||||
co.stream().sorted((o1, o2) -> o2.getSurveyType() - o1.getSurveyType()).forEach(item -> {
|
co = co.stream().sorted(Comparator.comparingInt(EvalProjectCO::getSurveyType)).collect(Collectors.toList());
|
||||||
|
co.forEach(item -> {
|
||||||
item.setCustomerName(customerNameMap.get(Long.valueOf(item.getCustomerId())));
|
item.setCustomerName(customerNameMap.get(Long.valueOf(item.getCustomerId())));
|
||||||
item.setRole(projectRole.get(Long.valueOf(item.getId())));
|
item.setRole(projectRole.get(Long.valueOf(item.getId())));
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -132,6 +132,38 @@ public class EvalRiskAnalysisExecutor implements EvalRiskAnalysisApi {
|
||||||
return SingleResponse.success(true);
|
return SingleResponse.success(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SingleResponse<Boolean> saveParticipantMember(List<EvalRiskParticipantSaveCmd> cmdList) {
|
||||||
|
List<Long> dbIds = evalRiskParticipantMapper.selectList(new LambdaQueryWrapper<EvalRiskParticipantDO>()
|
||||||
|
.isNull(EvalRiskParticipantDO::getRiskId)
|
||||||
|
.eq(EvalRiskParticipantDO::getProjectId, cmdList.get(0).getProjectId()))
|
||||||
|
.stream().map(EvalRiskParticipantDO::getId).collect(Collectors.toList());
|
||||||
|
List<Long> cmdIds = cmdList.stream().map(EvalRiskParticipantSaveCmd::getId).filter(Objects::nonNull).map(Long::new).collect(Collectors.toList());
|
||||||
|
List<Long> delIds = new ArrayList<>();
|
||||||
|
for (Long id : dbIds) {
|
||||||
|
if (!cmdIds.contains(id)) {
|
||||||
|
delIds.add(id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!CollectionUtils.isEmpty(delIds)) {
|
||||||
|
evalRiskParticipantMapper.deleteBatchIds(delIds);
|
||||||
|
}
|
||||||
|
for (EvalRiskParticipantSaveCmd cmd : cmdList) {
|
||||||
|
EvalRiskParticipantEntity entity = evalRiskAnalysisCmdConvertor.convertParticipantCmdToE(cmd);
|
||||||
|
entity.setProjectId(cmdList.get(0).getProjectId());
|
||||||
|
if (entity.getId() == null) {
|
||||||
|
if (entity.getSortOrder() == null) {
|
||||||
|
entity.setSortOrder(0);
|
||||||
|
}
|
||||||
|
entity.setSignStatusCode(null);
|
||||||
|
evalRiskParticipantGateway.save(entity);
|
||||||
|
} else {
|
||||||
|
evalRiskParticipantGateway.modify(entity);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return SingleResponse.success(true);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SingleResponse<Void> deleteParticipant(Long id) {
|
public SingleResponse<Void> deleteParticipant(Long id) {
|
||||||
EvalRiskParticipantEntity existing = requireParticipant(id);
|
EvalRiskParticipantEntity existing = requireParticipant(id);
|
||||||
|
|
@ -149,6 +181,12 @@ public class EvalRiskAnalysisExecutor implements EvalRiskAnalysisApi {
|
||||||
evalRiskParticipantGateway.listByRiskId(risk.getId())));
|
evalRiskParticipantGateway.listByRiskId(risk.getId())));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SingleResponse<List<EvalRiskParticipantCO>> listParticipantsMember(String projectId) {
|
||||||
|
return SingleResponse.success(evalRiskAnalysisCmdConvertor.convertParticipantListToCOList(
|
||||||
|
evalRiskParticipantGateway.listByRiskIdMember(projectId)));
|
||||||
|
}
|
||||||
|
|
||||||
private EvalRiskAnalysisCO toDetailCO(EvalRiskAnalysisEntity entity) {
|
private EvalRiskAnalysisCO toDetailCO(EvalRiskAnalysisEntity entity) {
|
||||||
EvalRiskAnalysisCO co = evalRiskAnalysisCmdConvertor.convertEToCO(entity);
|
EvalRiskAnalysisCO co = evalRiskAnalysisCmdConvertor.convertEToCO(entity);
|
||||||
co.setParticipants(evalRiskAnalysisCmdConvertor.convertParticipantListToCOList(
|
co.setParticipants(evalRiskAnalysisCmdConvertor.convertParticipantListToCOList(
|
||||||
|
|
|
||||||
|
|
@ -84,9 +84,16 @@ public class EvalSignTaskExecutor implements EvalSignTaskApi {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void support(String projectId, String signerPersonnelId, String nodeCode) {
|
private void support(String projectId, String signerPersonnelId, String nodeCode) {
|
||||||
if (ProjectStageEnum.RISK_ANALYSIS.getVal().equals(nodeCode)
|
if (ProjectStageEnum.RISK_ANALYSIS.getVal().equals(nodeCode)) {
|
||||||
|| ProjectStageEnum.PROJECT_GROUP.getVal().equals(nodeCode)) {
|
|
||||||
evalRiskParticipantMapper.update(new LambdaUpdateWrapper<EvalRiskParticipantDO>()
|
evalRiskParticipantMapper.update(new LambdaUpdateWrapper<EvalRiskParticipantDO>()
|
||||||
|
.isNotNull(EvalRiskParticipantDO::getRiskId)
|
||||||
|
.eq(EvalRiskParticipantDO::getProjectId, projectId)
|
||||||
|
.eq(EvalRiskParticipantDO::getPersonnelId, signerPersonnelId)
|
||||||
|
.set(EvalRiskParticipantDO::getSignStatusCode, SignTaskStatusEnum.PENDING.getCode()));
|
||||||
|
}
|
||||||
|
if (ProjectStageEnum.PROJECT_GROUP.getVal().equals(nodeCode)) {
|
||||||
|
evalRiskParticipantMapper.update(new LambdaUpdateWrapper<EvalRiskParticipantDO>()
|
||||||
|
.isNull(EvalRiskParticipantDO::getRiskId)
|
||||||
.eq(EvalRiskParticipantDO::getProjectId, projectId)
|
.eq(EvalRiskParticipantDO::getProjectId, projectId)
|
||||||
.eq(EvalRiskParticipantDO::getPersonnelId, signerPersonnelId)
|
.eq(EvalRiskParticipantDO::getPersonnelId, signerPersonnelId)
|
||||||
.set(EvalRiskParticipantDO::getSignStatusCode, SignTaskStatusEnum.PENDING.getCode()));
|
.set(EvalRiskParticipantDO::getSignStatusCode, SignTaskStatusEnum.PENDING.getCode()));
|
||||||
|
|
@ -144,9 +151,17 @@ public class EvalSignTaskExecutor implements EvalSignTaskApi {
|
||||||
.set(EvalSignTaskDO::getTaskStatusCode, SignTaskStatusEnum.SIGNED.getCode())
|
.set(EvalSignTaskDO::getTaskStatusCode, SignTaskStatusEnum.SIGNED.getCode())
|
||||||
.set(EvalSignTaskDO::getSignerUrl, cmd.getSignerUrl()));
|
.set(EvalSignTaskDO::getSignerUrl, cmd.getSignerUrl()));
|
||||||
|
|
||||||
if (ProjectStageEnum.RISK_ANALYSIS.getVal().equals(evalSignTaskDO.getNodeCode())
|
if (ProjectStageEnum.RISK_ANALYSIS.getVal().equals(evalSignTaskDO.getNodeCode())) {
|
||||||
|| ProjectStageEnum.PROJECT_GROUP.getVal().equals(evalSignTaskDO.getNodeCode())) {
|
|
||||||
evalRiskParticipantMapper.update(new LambdaUpdateWrapper<EvalRiskParticipantDO>()
|
evalRiskParticipantMapper.update(new LambdaUpdateWrapper<EvalRiskParticipantDO>()
|
||||||
|
.isNotNull(EvalRiskParticipantDO::getRiskId)
|
||||||
|
.eq(EvalRiskParticipantDO::getPersonnelId, evalSignTaskDO.getSignerPersonnelId())
|
||||||
|
.eq(EvalRiskParticipantDO::getProjectId, evalSignTaskDO.getProjectId())
|
||||||
|
.set(EvalRiskParticipantDO::getSignFileUrl, cmd.getSignerUrl())
|
||||||
|
.set(EvalRiskParticipantDO::getSignStatusCode, SignTaskStatusEnum.SIGNED.getCode()));
|
||||||
|
}
|
||||||
|
if (ProjectStageEnum.PROJECT_GROUP.getVal().equals(evalSignTaskDO.getNodeCode())) {
|
||||||
|
evalRiskParticipantMapper.update(new LambdaUpdateWrapper<EvalRiskParticipantDO>()
|
||||||
|
.isNull(EvalRiskParticipantDO::getRiskId)
|
||||||
.eq(EvalRiskParticipantDO::getPersonnelId, evalSignTaskDO.getSignerPersonnelId())
|
.eq(EvalRiskParticipantDO::getPersonnelId, evalSignTaskDO.getSignerPersonnelId())
|
||||||
.eq(EvalRiskParticipantDO::getProjectId, evalSignTaskDO.getProjectId())
|
.eq(EvalRiskParticipantDO::getProjectId, evalSignTaskDO.getProjectId())
|
||||||
.set(EvalRiskParticipantDO::getSignFileUrl, cmd.getSignerUrl())
|
.set(EvalRiskParticipantDO::getSignFileUrl, cmd.getSignerUrl())
|
||||||
|
|
|
||||||
|
|
@ -18,8 +18,11 @@ public interface EvalRiskAnalysisApi {
|
||||||
SingleResponse<EvalRiskAnalysisEnumsCO> enums();
|
SingleResponse<EvalRiskAnalysisEnumsCO> enums();
|
||||||
|
|
||||||
SingleResponse<Boolean> saveParticipant(List<EvalRiskParticipantSaveCmd> cmd);
|
SingleResponse<Boolean> saveParticipant(List<EvalRiskParticipantSaveCmd> cmd);
|
||||||
|
SingleResponse<Boolean> saveParticipantMember(List<EvalRiskParticipantSaveCmd> cmd);
|
||||||
|
|
||||||
SingleResponse<Void> deleteParticipant(Long id);
|
SingleResponse<Void> deleteParticipant(Long id);
|
||||||
|
|
||||||
SingleResponse<List<EvalRiskParticipantCO>> listParticipants(String riskId);
|
SingleResponse<List<EvalRiskParticipantCO>> listParticipants(String riskId);
|
||||||
|
|
||||||
|
SingleResponse<List<EvalRiskParticipantCO>> listParticipantsMember(String projectId);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,15 +3,12 @@ package org.qinan.safetyeval.client.dto.institution;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import javax.validation.constraints.NotBlank;
|
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class EvalRiskParticipantSaveCmd {
|
public class EvalRiskParticipantSaveCmd {
|
||||||
|
|
||||||
@ApiModelProperty("主键ID(修改时传)")
|
@ApiModelProperty("主键ID(修改时传)")
|
||||||
private String id;
|
private String id;
|
||||||
|
|
||||||
@NotBlank(message = "风险分析or项目组经理ID不能为空")
|
|
||||||
@ApiModelProperty(value = "风险分析or项目组经理ID", required = true)
|
@ApiModelProperty(value = "风险分析or项目组经理ID", required = true)
|
||||||
private String riskId;
|
private String riskId;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -15,4 +15,6 @@ public interface EvalRiskParticipantGateway {
|
||||||
void delete(Long id);
|
void delete(Long id);
|
||||||
|
|
||||||
List<EvalRiskParticipantEntity> listByRiskId(Long riskId);
|
List<EvalRiskParticipantEntity> listByRiskId(Long riskId);
|
||||||
|
|
||||||
|
List<EvalRiskParticipantEntity> listByRiskIdMember(String projectId);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -55,4 +55,15 @@ public class EvalRiskParticipantGatewayImpl implements EvalRiskParticipantGatewa
|
||||||
.map(evalRiskParticipantDoConvertor::convertDoToE)
|
.map(evalRiskParticipantDoConvertor::convertDoToE)
|
||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<EvalRiskParticipantEntity> listByRiskIdMember(String projectId) {
|
||||||
|
LambdaQueryWrapper<EvalRiskParticipantDO> wrapper = new LambdaQueryWrapper<>();
|
||||||
|
wrapper.eq(EvalRiskParticipantDO::getProjectId, projectId);
|
||||||
|
wrapper.isNull(EvalRiskParticipantDO::getRiskId);
|
||||||
|
wrapper.orderByAsc(EvalRiskParticipantDO::getSortOrder).orderByAsc(EvalRiskParticipantDO::getId);
|
||||||
|
return evalRiskParticipantMapper.selectList(wrapper).stream()
|
||||||
|
.map(evalRiskParticipantDoConvertor::convertDoToE)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue