ソースを参照

培训/演练 编辑bug修改

jingyuanchao 1 年間 前
コミット
9235fad85d

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

@@ -331,11 +331,11 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
             doUpdatePlan(plan, request);
         }
         if (plan.getPlanStatus() == DrillPlanStatus.DELETED.getCode()) {
-            //停用状态 支持编辑名称和检查内容
+            //停用状态 支持编辑名称和机构信息
             doUpdatePlanForDeleted(plan, request);
         }
         if (plan.getPlanStatus() == DrillPlanStatus.USING.getCode()) {
-            //使用中 状态,支持编辑名称和检查内容
+            //使用中 状态,支持编辑名称;
             //存在已完成任务,本次修改内容将从下周期生效
             //不存在已完成任务,本次修改内容将立即生成
             doUpdatePlanForUsing(plan, request);
@@ -386,22 +386,24 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
         }
         validateFieldForStandard(request.getPlanCycle(), plan.getPlanCycle(), "当前状态仅允许修改任务名称");
         validateFieldForStandard(request.getExecTimes(), plan.getExecTimes(), "当前状态仅允许修改任务名称");
-        validateFieldForStandard(request.getExecOrgType(), plan.getExecOrgType(), "当前状态仅允许修改任务名称");
-      /*  List<Long> execOrgIdList = coreDrillPlanToExecOrgMapper.selectOrgIdByPlanId(plan.getId());
+        if (ObjectUtil.equal(request.getPlanStatus(), DrillPlanStatus.USING.getCode())){
+            validateFieldForStandard(request.getExecOrgType(), plan.getExecOrgType(), "当前状态仅允许修改任务名称");
+        }
+       /* List<Long> execOrgIdList = coreDrillPlanToExecOrgMapper.selectOrgIdByPlanId(plan.getId());
         validateListForStandard(execOrgIdList, request.getPlanExecOrgIdList(), "当前状态仅允许修改任务名称");*/
         validateFieldForStandard(request.getRemark(), plan.getRemark(), "当前状态仅允许修改任务名称");
         validateFileListForStandard(request.getFileList(), JSON.parseArray(plan.getFileList(), String.class), "当前状态仅允许修改任务名称");
         plan.setPlanName(request.getPlanName());
-        List<Long> list = baseMapper.selectIdByParentId(plan.getId());
-        if (ObjectUtil.isEmpty(list)){
-            return;
+        if (ObjectUtil.equal(request.getPlanStatus(), DrillPlanStatus.DELETED.getCode())){
+            plan.setExecOrgType(request.getExecOrgType());
+            List<Long> list = baseMapper.selectIdByParentId(plan.getId());
+            if (ObjectUtil.isNotEmpty(list)){
+                physicalDeleteMapper.deletedDrillPlanByIds(list);
+                coreDrillPlanToExecOrgService.deleteByPlanIds(list);
+            }
+            coreDrillPlanToExecOrgMapper.deleteByMap(MapUtil.of("plan_id", plan.getId()));
+            batchSavePlanToExecOrg(request.getPlanExecOrgIdList(), plan.getId());
         }
-        physicalDeleteMapper.deletedDrillPlanByIds(list);
-        coreDrillPlanToExecOrgService.deleteByPlanIds(list);
-
-
-        coreDrillPlanToExecOrgMapper.deleteByMap(MapUtil.of("plan_id", plan.getId()));
-        batchSavePlanToExecOrg(request.getPlanExecOrgIdList(), plan.getId());
 
         updateById(plan);
 
@@ -420,7 +422,7 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
 
         List<Long> longs = baseMapper.selectAllIdByParentId(plan.getId());
         if (!longs.isEmpty()) {
-            baseMapper.delByIds(longs);
+            physicalDeleteMapper.deletedDrillPlanByIds(longs);
             coreDrillPlanToExecOrgService.deleteByPlanIds(longs);
         }
 

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

@@ -280,71 +280,22 @@ public class CoreEduTrainingPlanServiceImpl extends ServiceImpl<CoreEduTrainingP
                 || ObjectUtil.equal(orgType, OrgTypeEnum.HANG_SHE.getCode());
     }
 
-    private Boolean anotherCheckOrgType(Integer orgType) {
-        if (ObjectUtil.isEmpty(orgType)) {
-            throw new RuntimeException("当前用户所在机构类型无法确认!");
-        }
-        //如果是省联社或者办事处及行社
-        return ObjectUtil.equal(orgType, OrgTypeEnum.SHEGN_LIAN_SHE.getCode())
-                || ObjectUtil.equal(orgType, OrgTypeEnum.BAN_SHI_CHU.getCode())
-                || ObjectUtil.equal(orgType, OrgTypeEnum.HANG_SHE.getCode())
-                || ObjectUtil.equal(orgType, OrgTypeEnum.YINGYE_WANGDIAN.getCode());
-    }
-
-    /**
-     * 修改教育培训计划
-     *
-     * @param request 教育培训计划
-     * @return 结果
-     */
-   /* @Override
-    @Transactional(rollbackFor = Exception.class)
-    public int updateCoreEduTrainingPlan(CoreEduTrainingPlanEditDto request) {
-        final CoreEduTrainingPlan plan = getById(request.getId());
-        DateRange range;
-        if (ObjectUtil.equal(plan.getPlanCycle(), EduTrainingPlanCycleEnum.NONE.getCode())) {
-            range = new DateRange(DateUtil.beginOfDay(plan.getStartDate()), DateUtil.endOfDay(plan.getEndDate()));
-        } else {
-            range = DateUtils.getStartAndEnd(new Date(), plan.getPlanCycle());
-        }
-        if (plan.getPlanStatus() == EduTrainingPlanStatus.DRAFT.getCode()) {
-            //草稿状态 可以修改计划
-            doUpdatePlan(plan, request);
-        }
-        if (plan.getStandard() == 1) {
-            //标准计划 且是省联社创建的
-            updateStandardPlan(plan, request, range);
-        } else {
-            //普通计划,还可能是行社创建的标准计划
-            updateCommonPlan(plan, request, range);
-        }
-
-        return 1;
-    }*/
     @Override
     @Transactional(rollbackFor = Exception.class)
     public int updateCoreEduTrainingPlan(CoreEduTrainingPlanEditDto request) {
         final CoreEduTrainingPlan plan = getById(request.getId());
-       /* DateRange range;
-        if (ObjectUtil.equal(plan.getPlanCycle(), EduTrainingPlanCycleEnum.NONE.getCode())) {
-            range = new DateRange(DateUtil.beginOfDay(plan.getStartDate()), DateUtil.endOfDay(plan.getEndDate()));
-        } else {
-            range = DateUtils.getStartAndEnd(new Date(), plan.getPlanCycle());
-        }*/
-
         plan.setUpdateTime(DateUtils.getNowDate());
         //现在能被编辑的计划一定是标准计划
-        //updateStandardPlan(plan, request, range);
         if (plan.getPlanStatus() == EduTrainingPlanStatus.DRAFT.getCode()) {
             //草稿状态 支持编辑所有字段,
             doUpdatePlan(plan, request);
         }
         if (plan.getPlanStatus() == EduTrainingPlanStatus.DELETED.getCode()) {
-            //停用状态 支持编辑名称和检查内容
+            //停用状态 支持编辑名称和机构信息;
             doUpdatePlanForDeleted(plan, request);
         }
         if (plan.getPlanStatus() == EduTrainingPlanStatus.USING.getCode()) {
-            //使用中 状态,支持编辑名称和检查内容
+            //使用中 状态,支持编辑名称;
             //存在已完成任务,本次修改内容将从下周期生效
             //不存在已完成任务,本次修改内容将立即生成
             doUpdatePlanForUsing(plan, request);
@@ -396,25 +347,27 @@ public class CoreEduTrainingPlanServiceImpl extends ServiceImpl<CoreEduTrainingP
         if (ObjectUtil.isEmpty(request.getRemark())) {
             request.setRemark(null);
         }
-        validateFieldForStandard(request.getPlanCycle(), plan.getPlanCycle(), "当前状态仅允许修改任务名称");
+        validateFieldForStandard(request.getPlanCycle(), plan.getPlanCycle(), "当前状态仅允许修改任务名称与机构信息");
         validateFieldForStandard(request.getExecTimes(), plan.getExecTimes(), "当前状态仅允许修改任务名称");
-        validateFieldForStandard(request.getExecOrgType(), plan.getExecOrgType(), "当前状态仅允许修改任务名称");
+        if (ObjectUtil.equal(plan.getPlanStatus(), DrillPlanStatus.USING.getCode())){
+            validateFieldForStandard(request.getExecOrgType(), plan.getExecOrgType(), "当前状态仅允许修改任务名称");
+        }
         /*List<Long> execOrgIdList = coreEduTrainingPlanToExecOrgMapper.selectOrgIdByPlanId(plan.getId());
-        //validateListForStandard(execOrgIdList, request.getPlanExecOrgIdList(), "当前状态仅允许修改任务名称");*/
+        validateListForStandard(execOrgIdList, request.getPlanExecOrgIdList(), "当前状态仅允许修改任务名称");*/
         validateFieldForStandard(request.getRemark(), plan.getRemark(), "当前状态仅允许修改任务名称");
         validateFileListForStandard(request.getFileList(), JSON.parseArray(plan.getFileList(), String.class), "当前状态仅允许修改任务名称");
         plan.setPlanName(request.getPlanName());
-        List<Long> list = baseMapper.selectIdByParentId(plan.getId());
-        if (ObjectUtil.isEmpty(list)){
-            return;
+        plan.setExecOrgType(request.getExecOrgType());
+        if (plan.getPlanStatus() == EduTrainingPlanStatus.DELETED.getCode()) {
+            plan.setExecOrgType(request.getExecOrgType());
+            List<Long> idList = baseMapper.selectIdByParentId(plan.getId());
+            if (ObjectUtil.isNotEmpty(idList)) {
+                physicalDeleteMapper.deletedEduPlanByIds(idList);
+                coreEduTrainingPlanToExecOrgService.deleteByPlanIds(idList);
+            }
+            coreEduTrainingPlanToExecOrgMapper.deleteByMap(MapUtil.of("plan_id", plan.getId()));
+            batchSavePlanToExecOrg(request.getPlanExecOrgIdList(), plan.getId());
         }
-        physicalDeleteMapper.deletedEduPlanByIds(list);
-        coreEduTrainingPlanToExecOrgService.deleteByPlanIds(list);
-
-
-        coreEduTrainingPlanToExecOrgMapper.deleteByMap(MapUtil.of("plan_id", plan.getId()));
-        batchSavePlanToExecOrg(request.getPlanExecOrgIdList(), plan.getId());
-
         updateById(plan);
     }
 
@@ -433,7 +386,7 @@ public class CoreEduTrainingPlanServiceImpl extends ServiceImpl<CoreEduTrainingP
 
         List<Long> longs = baseMapper.selectAllIdByParentId(plan.getId());
         if (!longs.isEmpty()) {
-            baseMapper.delByIds(longs);
+            physicalDeleteMapper.deletedEduPlanByIds(longs);
             coreEduTrainingPlanToExecOrgService.deleteByPlanIds(longs);
         }