1.1.14 项目验收审批完成时项目计划质保实际开始日期取值实际验收日期。

dev
yinq 4 weeks ago
parent 5f286a0310
commit 1ea43d1c89

@ -57,10 +57,15 @@ public class ErpProjectAcceptanceServiceImpl implements IErpProjectAcceptanceSer
private static final String ACCEPTANCE_CODE_RULE = "1008"; private static final String ACCEPTANCE_CODE_RULE = "1008";
/** /**
* - project_phases acceptance_* * - project_phases
*/ */
private static final String PROJECT_PHASE_ACCEPTANCE = "8"; private static final String PROJECT_PHASE_ACCEPTANCE = "8";
/**
* - project_phases
*/
private static final String PROJECT_PHASE_WARRANTY = "9";
private final ErpProjectAcceptanceMapper baseMapper; private final ErpProjectAcceptanceMapper baseMapper;
private final ErpProjectInfoMapper projectInfoMapper; private final ErpProjectInfoMapper projectInfoMapper;
private final ErpProjectPlanStageMapper projectPlanStageMapper; private final ErpProjectPlanStageMapper projectPlanStageMapper;
@ -344,7 +349,7 @@ public class ErpProjectAcceptanceServiceImpl implements IErpProjectAcceptanceSer
acceptance.setAcceptanceStatus(OAStatusEnum.APPROVING.getStatus()); acceptance.setAcceptanceStatus(OAStatusEnum.APPROVING.getStatus());
} else if (Objects.equals(processEvent.getStatus(), BusinessStatusEnum.FINISH.getStatus())) { } else if (Objects.equals(processEvent.getStatus(), BusinessStatusEnum.FINISH.getStatus())) {
acceptance.setAcceptanceStatus(OAStatusEnum.COMPLETED.getStatus()); acceptance.setAcceptanceStatus(OAStatusEnum.COMPLETED.getStatus());
// 审批完成后:更新项目状态为已验收;将计划「验收」阶段实际完成时间写入验收日期 // 审批完成后:更新项目状态为已验收;验收阶段实际完成时间、质保阶段实际开始时间均取实际验收日期
Long projectId = acceptance.getProjectId(); Long projectId = acceptance.getProjectId();
if (projectId != null) { if (projectId != null) {
ErpProjectInfo projectInfo = projectInfoMapper.selectById(projectId); ErpProjectInfo projectInfo = projectInfoMapper.selectById(projectId);
@ -354,11 +359,16 @@ public class ErpProjectAcceptanceServiceImpl implements IErpProjectAcceptanceSer
} }
Date acceptanceDate = acceptance.getAcceptanceDate(); Date acceptanceDate = acceptance.getAcceptanceDate();
if (acceptanceDate != null) { if (acceptanceDate != null) {
ErpProjectPlanStage stageUpdate = new ErpProjectPlanStage(); ErpProjectPlanStage acceptanceStage = new ErpProjectPlanStage();
stageUpdate.setRealEndTime(acceptanceDate); acceptanceStage.setRealEndTime(acceptanceDate);
projectPlanStageMapper.update(stageUpdate, Wrappers.lambdaUpdate(ErpProjectPlanStage.class) projectPlanStageMapper.update(acceptanceStage, Wrappers.lambdaUpdate(ErpProjectPlanStage.class)
.eq(ErpProjectPlanStage::getProjectId, projectId) .eq(ErpProjectPlanStage::getProjectId, projectId)
.eq(ErpProjectPlanStage::getProjectPhases, PROJECT_PHASE_ACCEPTANCE)); .eq(ErpProjectPlanStage::getProjectPhases, PROJECT_PHASE_ACCEPTANCE));
ErpProjectPlanStage warrantyStage = new ErpProjectPlanStage();
warrantyStage.setRealStartTime(acceptanceDate);
projectPlanStageMapper.update(warrantyStage, Wrappers.lambdaUpdate(ErpProjectPlanStage.class)
.eq(ErpProjectPlanStage::getProjectId, projectId)
.eq(ErpProjectPlanStage::getProjectPhases, PROJECT_PHASE_WARRANTY));
} }
} }
log.info("项目验收确认完成: acceptanceId={}", acceptance.getAcceptanceId()); log.info("项目验收确认完成: acceptanceId={}", acceptance.getAcceptanceId());

Loading…
Cancel
Save