Kaynağa Gözat

培训/演练: bug修改,撤回时删除计划的文件

jingyuanchao 1 yıl önce
ebeveyn
işleme
b323febd6b

+ 3 - 2
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/drill/service/impl/CoreDrillPlanServiceImpl.java

@@ -779,10 +779,11 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
             // 删除所有任务数据
             coreDrillTaskService.delByStartTimeAndEndTimeAndPlanIdList(list, null, null);
             //删除所有子计划
-            coreDrillPlanMapper.delByIds(list);
+            //coreDrillPlanMapper.delByIds(list);
+            list.add(planId);
             //计划状态回到草稿状态
             update(new LambdaUpdateWrapper<CoreDrillPlan>()
-                    .eq(CoreDrillPlan::getId, planId)
+                    .in(CoreDrillPlan::getId, list)
                     .set(CoreDrillPlan::getIssue, 0)
                     .set(CoreDrillPlan::getWithdrawTime, new Date())
                     .set(CoreDrillPlan::getPlanStatus, DrillPlanStatus.DRAFT.getCode()));

+ 4 - 3
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/edu/service/impl/CoreEduTrainingPlanServiceImpl.java

@@ -872,15 +872,16 @@ public class CoreEduTrainingPlanServiceImpl extends ServiceImpl<CoreEduTrainingP
                         .in(CoreEduTrainingTask::getPlanId, list)
                         .eq(CoreEduTrainingTask::getStatus, EduTrainingDoStatus.DONE.getCode()))
                 .intValue();
-        //计划下没有已完成:删除所有任务数据和子计划,计划状态回到草稿状态。
+        //计划下没有已完成:计划下没有已完成:删除所有任务数据,计划状态回到草稿状态。
         if (ObjectUtil.notEqual(isExecute, 1)/* || EduTrainingPlanCycleEnum.NONE.getCode().equals(plan.getPlanCycle())*/) {
             // 删除所有任务数据
             coreEduTrainingTaskService.delByStartTimeAndEndTimeAndPlanIdList(list, null, null);
             //删除所有子计划
-            coreEduTrainingPlanMapper.delByIds(list);
+            //coreEduTrainingPlanMapper.delByIds(list);
+            list.add(planId);
             //计划状态回到草稿状态
             update(new LambdaUpdateWrapper<CoreEduTrainingPlan>()
-                    .eq(CoreEduTrainingPlan::getId, planId)
+                    .in(CoreEduTrainingPlan::getId, list)
                     .set(CoreEduTrainingPlan::getIssue, 0)
                     .set(CoreEduTrainingPlan::getWithdrawTime, new Date())
                     .set(CoreEduTrainingPlan::getPlanStatus, EduTrainingPlanStatus.DRAFT.getCode()));