项目执行

liweidong
张乾翔 2 days ago
parent 33d5ee1583
commit a759e85e14
  1. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/process/pojo/entity/FmProjectMilestoneEntity.java
  2. 14
      blade-service/blade-desk/src/main/java/org/springblade/desk/process/service/impl/FmProjectMilestoneServiceImpl.java

@ -83,6 +83,8 @@ public class FmProjectMilestoneEntity extends BaseEntity {
*/
@Schema(description = "里程碑负责人")
private String milestoneMan;
@Schema(description = "里程碑负责人ID ")
private String milestoneManId;
/**
* 里程碑输出物
*/

@ -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

Loading…
Cancel
Save