|
|
|
|
@ -248,7 +248,7 @@ public class FmProjectMilestoneServiceImpl extends BaseServiceImpl<FmProjectMile |
|
|
|
|
@Override |
|
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
|
public boolean projectExecute(FmProjectMilestoneEntity fmProjectMilestone) { |
|
|
|
|
check(fmProjectMilestone); |
|
|
|
|
FmProjectMilestoneEntity entity = check(fmProjectMilestone); |
|
|
|
|
|
|
|
|
|
// 如果执行类型不是终止,需要选择下一节点审批人
|
|
|
|
|
if (!FmProjectMilestoneEntity.EXECUTE_RESULT_ZZ.equals(fmProjectMilestone.getExecuteType())) { |
|
|
|
|
@ -264,7 +264,6 @@ public class FmProjectMilestoneServiceImpl extends BaseServiceImpl<FmProjectMile |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
FmProjectMilestoneEntity entity = getById(fmProjectMilestone.getId()); |
|
|
|
|
entity.setNextApproverId(fmProjectMilestone.getNextApproverId()); |
|
|
|
|
entity.setNextApproverName(fmProjectMilestone.getNextApproverName()); |
|
|
|
|
entity.setPaIndex(fmProjectMilestone.getPaIndex()); |
|
|
|
|
@ -332,7 +331,7 @@ public class FmProjectMilestoneServiceImpl extends BaseServiceImpl<FmProjectMile |
|
|
|
|
log.error("发送里程碑计划审批提醒异常,里程碑计划: {}", fmProjectMilestone.getMilestonePlan(), e); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
private void check(FmProjectMilestoneEntity fmProjectMilestone) { |
|
|
|
|
private FmProjectMilestoneEntity check(FmProjectMilestoneEntity fmProjectMilestone) { |
|
|
|
|
|
|
|
|
|
if (BeanUtil.isEmpty(fmProjectMilestone) || Objects.isNull(fmProjectMilestone.getId())) { |
|
|
|
|
throw new RuntimeException("参数异常"); |
|
|
|
|
@ -360,14 +359,19 @@ public class FmProjectMilestoneServiceImpl extends BaseServiceImpl<FmProjectMile |
|
|
|
|
if (BeanUtil.isEmpty(fmProjectApplication) || Objects.isNull(fmProjectApplication.getId())) { |
|
|
|
|
throw new RuntimeException("参数异常"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
FmProjectApplicationEntity applicationEntity = fmProjectApplicationService.getById(fmProjectApplication.getId()); |
|
|
|
|
if (BeanUtil.isEmpty(applicationEntity)) { |
|
|
|
|
throw new RuntimeException("参数异常"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
FmProjectMilestoneEntity byId = getById(fmProjectMilestone.getId()); |
|
|
|
|
Long userId = AuthUtil.getUserId(); |
|
|
|
|
if (!userId.toString().equals(applicationEntity.getProjectHeadId())) { |
|
|
|
|
throw new RuntimeException("非项目负责人没有执行权限"); |
|
|
|
|
if (!userId.toString().equals(fmProjectMilestone.getMilestoneMan())) { |
|
|
|
|
throw new RuntimeException("非里程碑负责人没有执行权限"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return byId; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|