From 28aaf2ffa1dbb860a292ba330a7e9362e60e7832 Mon Sep 17 00:00:00 2001 From: kongzy <kongzy> Date: 星期五, 12 七月 2024 16:41:03 +0800 Subject: [PATCH] update --- assess-system/src/main/java/com/gkhy/assess/system/service/impl/AssEstimatePlanServiceImpl.java | 19 ++++++++++++++++--- 1 files changed, 16 insertions(+), 3 deletions(-) diff --git a/assess-system/src/main/java/com/gkhy/assess/system/service/impl/AssEstimatePlanServiceImpl.java b/assess-system/src/main/java/com/gkhy/assess/system/service/impl/AssEstimatePlanServiceImpl.java index ee94840..b192665 100644 --- a/assess-system/src/main/java/com/gkhy/assess/system/service/impl/AssEstimatePlanServiceImpl.java +++ b/assess-system/src/main/java/com/gkhy/assess/system/service/impl/AssEstimatePlanServiceImpl.java @@ -44,9 +44,10 @@ Long projectId=estimatePlan.getProjectId(); projectService.checkUserAllowed(projectId); checkEstimatePlanCount(projectId); - planPersonService.checkPersonUnique(new AssPlanPerson().setPersonId(estimatePlan.getAuserId()).setProjectId(projectId)); //校验项目状态 projectService.checkReportProgress(projectId, ReportProgressEnum.ESTIMATE_TASK); + //校验是否设置了组长 + checkMajorPlanPersonCount(projectId); estimatePlan.setCreateBy(ShiroUtils.getSysUser().getUsername()); int row=baseMapper.insert(estimatePlan); if(row>0) { @@ -70,10 +71,22 @@ } } + /** + * 校验项目组成员是否设置了组长 + * @param projectId + */ + public void checkMajorPlanPersonCount(Long projectId){ + int count=planPersonService.getMajorPlanPersonCountByProject(projectId); + if(count<1){ + throw new ApiException("项目组成员中必须有一个人设置为组长"); + } + } + @Override @Transactional(rollbackFor = RuntimeException.class) public int editEstimatePlan(AssEstimatePlan estimatePlan) { projectService.checkUserAllowed(estimatePlan.getProjectId()); + checkMajorPlanPersonCount(estimatePlan.getProjectId()); AssEstimatePlan oldPlan=getById(estimatePlan.getId()); estimatePlan.setUpdateBy(ShiroUtils.getSysUser().getUsername()); int row=baseMapper.updateById(estimatePlan); @@ -83,9 +96,9 @@ } if(row>0) { if (estimatePlan.getAuserId() != null && !estimatePlan.getAuserId().equals(oldPlan.getAuserId())) { - planPersonService.checkPersonUnique(new AssPlanPerson().setPersonId(estimatePlan.getAuserId()).setProjectId(oldPlan.getProjectId())); + // planPersonService.checkPersonUnique(new AssPlanPerson().setPersonId(estimatePlan.getAuserId()).setProjectId(oldPlan.getProjectId())); //todo 删除旧的项目成员 - planPersonService.deletePlanPersonByPersonId(oldPlan.getAuserId()); + planPersonService.deletePlanPersonByPersonId(oldPlan.getAuserId(),estimatePlan.getProjectId(),PlayRoleEnum.ANGENCY_LEADER.getCode()); //todo 新增新的项目成员 planPersonService.addPlanPerson(new AssPlanPerson().setPersonId(estimatePlan.getAuserId()) .setPlayRole(PlayRoleEnum.ANGENCY_LEADER.getCode()) -- Gitblit v1.9.2