|
|
@@ -137,7 +137,7 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
|
|
|
BeanUtils.copyProperties(plan, vo);
|
|
|
vo.setStartDate(plan.getPlanStartDate());
|
|
|
vo.setEndDate(plan.getPlanEndDate());
|
|
|
- vo.setBuildTaskNow(ObjectUtil.equal(1,plan.getBuildTaskNow()));
|
|
|
+ vo.setBuildTaskNow(ObjectUtil.equal(1, plan.getBuildTaskNow()));
|
|
|
vo.setFileList(ObjectUtil.isNotEmpty(plan.getFileList()) ? JSON.parseArray(plan.getFileList(), String.class) : null);
|
|
|
final List<CoreDrillPlanToExecOrg> execOrgList = coreDrillPlanToExecOrgMapper.selectByMap(MapUtil.of("plan_id", id));
|
|
|
final List<Long> execOrgIdList = execOrgList.stream().map(CoreDrillPlanToExecOrg::getOrgId).collect(Collectors.toList());
|
|
|
@@ -227,7 +227,7 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
|
|
|
throw new RuntimeException("当前用户所在机构类型无法确认!");
|
|
|
}
|
|
|
//如果是省联社或者办事处则返回1,其他机构类型返回0
|
|
|
- return ObjectUtil.equal(orgType, OrgTypeEnum.SHEGN_LIAN_SHE.getCode()) || ObjectUtil.equal(orgType, OrgTypeEnum.BAN_SHI_CHU.getCode());
|
|
|
+ return ObjectUtil.equal(orgType, OrgTypeEnum.SHEGN_LIAN_SHE.getCode()) || ObjectUtil.equal(orgType, OrgTypeEnum.BAN_SHI_CHU.getCode());
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -240,7 +240,7 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public int updateCoreDrillPlan(CoreDrillPlanUpdateDto request) {
|
|
|
final CoreDrillPlan plan = getById(request.getId());
|
|
|
- AssertUtil.isEmpty(plan, "计划不存在!");
|
|
|
+ AssertUtil.isNotEmpty(plan, "计划不存在!");
|
|
|
//此处判断能否修改,如果可以 需要删除任务,且还需要判断是否需要生成任务
|
|
|
Boolean can = checkCanUpdate(request, plan);
|
|
|
if (!can) {
|
|
|
@@ -277,8 +277,8 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
|
|
|
deletePlanAndTaskByParentPlanId(planId);
|
|
|
List<CoreDrillPlan> planList = buildPlanData(plan, drillPlanToRoleList);
|
|
|
|
|
|
- if (plan.getPlanStatus()==DrillPlanStatus.DELETED.getCode()){
|
|
|
- log.info("计划已被修改为"+DrillPlanStatus.DELETED.getDesc()+",不再生成任务!");
|
|
|
+ if (plan.getPlanStatus() == DrillPlanStatus.DELETED.getCode()) {
|
|
|
+ log.info("计划已被修改为" + DrillPlanStatus.DELETED.getDesc() + ",不再生成任务!");
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
@@ -288,14 +288,14 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
|
|
|
CompletableFuture.runAsync(() -> {
|
|
|
//说明有任务并且都没执行过,需要重新生成任务
|
|
|
coreDrillTaskService.createTaskForNow(dataVo, plan.getPlanStartDate(), plan.getPlanEndDate());
|
|
|
- },threadPoolTaskExecutor);
|
|
|
+ }, threadPoolTaskExecutor);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
private void deletePlanAndTaskByParentPlanId(Long planId) {
|
|
|
//删除原有数据, 然后重新生成计划,任务
|
|
|
List<Long> planIdList = coreDrillPlanMapper.selectAllIdByParentId(planId);
|
|
|
- if (ObjectUtil.isEmpty(planIdList)){
|
|
|
+ if (ObjectUtil.isEmpty(planIdList)) {
|
|
|
return;
|
|
|
}
|
|
|
if (ObjectUtil.isNotEmpty(planIdList)) {
|
|
|
@@ -326,8 +326,8 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- if (plan.getPlanStatus()==DrillPlanStatus.DELETED.getCode()){
|
|
|
- log.info("计划已被修改为"+DrillPlanStatus.DELETED.getDesc()+",不再生成任务!");
|
|
|
+ if (plan.getPlanStatus() == DrillPlanStatus.DELETED.getCode()) {
|
|
|
+ log.info("计划已被修改为" + DrillPlanStatus.DELETED.getDesc() + ",不再生成任务!");
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
@@ -338,9 +338,10 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
|
|
|
CompletableFuture.runAsync(() -> {
|
|
|
//说明有任务并且都没执行过,需要重新生成任务
|
|
|
coreDrillTaskService.createTaskForNow(dataVo, plan.getPlanStartDate(), plan.getPlanEndDate());
|
|
|
- },threadPoolTaskExecutor);
|
|
|
+ }, threadPoolTaskExecutor);
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
private Boolean checkCanUpdate(CoreDrillPlanUpdateDto request, CoreDrillPlan plan) {
|
|
|
if (ObjectUtil.isAllEmpty(request.getExecOrgType(), request.getPlanExecOrgIdList())) {
|
|
|
throw new RuntimeException("培训机构类型和执行机构不能同时为空!");
|
|
|
@@ -370,13 +371,13 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
|
|
|
}
|
|
|
|
|
|
private void validatePlanForStandard(CoreDrillPlanUpdateDto request, CoreDrillPlan plan) {
|
|
|
- if (request.getExecTimes() < plan.getExecTimes()){
|
|
|
+ if (request.getExecTimes() < plan.getExecTimes()) {
|
|
|
throw new RuntimeException("培训次数不应低于基准次数!");
|
|
|
}
|
|
|
validateFieldForStandard(request.getPlanStatus(), plan.getPlanStatus(), "下发计划仅允许修改培训次数!");
|
|
|
validateFieldForStandard(request.getPlanCycle(), plan.getPlanCycle(), "下发计划仅允许修改培训次数!");
|
|
|
validateFieldForStandard(request.getExecOrgType(), plan.getExecOrgType(), "下发计划仅允许修改培训次数!");
|
|
|
- validateFieldForStandard(request.getPlanName(),plan.getPlanName(), "下发计划仅允许修改培训次数!");
|
|
|
+ validateFieldForStandard(request.getPlanName(), plan.getPlanName(), "下发计划仅允许修改培训次数!");
|
|
|
|
|
|
validateRoleAndOrgForStandard(request, plan);
|
|
|
}
|
|
|
@@ -649,7 +650,8 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
|
|
|
// 下发 按钮显示逻辑:仅省联社安全保卫管理人员进入且由省联社管理安全保卫人员创建的计划才显示
|
|
|
//todo 判断当前人的角色信息
|
|
|
List<CoreDrillPlan> list = buildPlanData(plan, new ArrayList<>());
|
|
|
-
|
|
|
+ //下发后修改为使用中
|
|
|
+ plan.setPlanStatus(DrillPlanStatus.USING.getCode());
|
|
|
plan.setIssue(1);
|
|
|
this.updateById(plan);
|
|
|
//事务提交后执行
|
|
|
@@ -663,7 +665,7 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
|
|
|
final CoreDrillPlanDataVo detailPlanData = getCoreDrillPlanDataVo(drillPlan.getId());
|
|
|
coreDrillTaskService.createTaskForNow(detailPlanData, plan.getPlanStartDate(), plan.getPlanEndDate());
|
|
|
}
|
|
|
- },threadPoolTaskExecutor);
|
|
|
+ }, threadPoolTaskExecutor);
|
|
|
}
|
|
|
}
|
|
|
});
|