|  | @@ -621,19 +621,16 @@ public class CoreEduTrainingPlanServiceImpl extends ServiceImpl<CoreEduTrainingP
 | 
	
		
			
				|  |  |              List<Long> collect = planList.stream().map(CoreEduTrainingPlan::getId).collect(Collectors.toList());
 | 
	
		
			
				|  |  |              coreEduTrainingPlanMapper.updatePlanStatusByIdList(collect, EduTrainingPlanStatus.USING.getCode());
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -        //非无周期的撤回后重新下发下个周期生效,无周期的立即生效
 | 
	
		
			
				|  |  | -        int buildTaskNow = 0;
 | 
	
		
			
				|  |  | -        if (plan.getPlanCycle().equals(EduTrainingPlanCycleEnum.NONE.getCode()) ||
 | 
	
		
			
				|  |  | -                EduTrainingPlanStatus.DRAFT.getCode().equals(plan.getPlanStatus())) {
 | 
	
		
			
				|  |  | -            buildTaskNow = 1;
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  |          //下发后修改为使用中
 | 
	
		
			
				|  |  |          plan.setPlanStatus(EduTrainingPlanStatus.USING.getCode());
 | 
	
		
			
				|  |  |          plan.setIssue(1);
 | 
	
		
			
				|  |  |          this.updateById(plan);
 | 
	
		
			
				|  |  | +        if (ObjectUtil.isNotEmpty(planList)){
 | 
	
		
			
				|  |  | +            //说明是计划是二次下发,下个周期生效,此处临时set为0,不保存入库,
 | 
	
		
			
				|  |  | +            plan.setBuildTaskNow(0);
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  |          //事务提交后执行
 | 
	
		
			
				|  |  |          List<CoreEduTrainingPlan> finalPlanList = planList;
 | 
	
		
			
				|  |  | -        Integer finalBuildTaskNow = buildTaskNow;
 | 
	
		
			
				|  |  |          TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronizationAdapter() {
 | 
	
		
			
				|  |  |              @Override
 | 
	
		
			
				|  |  |              public void afterCommit() {
 | 
	
	
		
			
				|  | @@ -641,7 +638,7 @@ public class CoreEduTrainingPlanServiceImpl extends ServiceImpl<CoreEduTrainingP
 | 
	
		
			
				|  |  |                      CompletableFuture.runAsync(() -> {
 | 
	
		
			
				|  |  |                          //如果不是省联社或者办事处,状态启用,并且是无周期或者立即生效
 | 
	
		
			
				|  |  |                          if ((ObjectUtil.equal(EduTrainingPlanStatus.USING.getCode(), plan.getPlanStatus())
 | 
	
		
			
				|  |  | -                                && (ObjectUtil.equal(EduTrainingPlanCycleEnum.NONE.getCode(), plan.getPlanCycle()) || ObjectUtil.equal(1, finalBuildTaskNow)))) {
 | 
	
		
			
				|  |  | +                                && (ObjectUtil.equal(EduTrainingPlanCycleEnum.NONE.getCode(), plan.getPlanCycle()) || ObjectUtil.equal(1, plan.getBuildTaskNow())))) {
 | 
	
		
			
				|  |  |                              CoreEduTrainingPlanDataVo detailPlanData = getCoreEduTrainingPlanDataVo(trainingPlan.getId());
 | 
	
		
			
				|  |  |                              coreEduTrainingTaskService.createTaskForNow(detailPlanData, plan.getStartDate(), plan.getEndDate());
 | 
	
		
			
				|  |  |                          }
 |