Bläddra i källkod

处理培训/演练针对无周期存在已完成任务的情况下,编辑计划界面仅显示取消按钮

jingyuanchao 1 år sedan
förälder
incheckning
1515241125

+ 2 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/drill/mapper/CoreDrillTaskMapper.java

@@ -63,4 +63,6 @@ public interface CoreDrillTaskMapper extends BaseMapper<CoreDrillTask> {
     Integer checkHasTaskUnDoneByPlanParentId(@Param("planId") Long planId);
 
     Integer checkHasTaskByPlanParentId(@Param("planId") Long planId);
+
+    Integer selectDoneByPlanId(@Param("id") Long id);
 }

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

@@ -165,6 +165,10 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
             final Integer hasTask = coreDrillTaskMapper.checkHasTaskByPlanParentId(record.getId());
             record.setHaTask(hasTask);
         }
+        if (Objects.equals(record.getPlanCycle(), DrillPlanCycleEnum.NONE.getCode())){
+            final Integer done = coreDrillTaskMapper.selectDoneByPlanId(record.getId());
+            record.setDone(done);
+        }
     }
 
     /**
@@ -190,8 +194,14 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
         final List<Long> execRoleIdList = planToRoles.stream().map(CoreDrillPlanToRole::getRoleId).collect(Collectors.toList());
         vo.setPlanRoleId(ObjectUtil.isEmpty(execRoleIdList) ? null : execRoleIdList);*/
 
-        Integer done = coreDrillTaskMapper.checkHasTaskIsDoneByPlanIdOrParentId(plan.getId());
-        vo.setDone(done);
+        if (plan.getStandard() == 1) {
+            final Integer done = coreDrillTaskMapper.checkHasTaskIsDoneByPlanParentId(plan.getId());
+            vo.setDone(done);
+        }
+        if (Objects.equals(plan.getPlanCycle(), DrillPlanCycleEnum.NONE.getCode())){
+            final Integer done = coreDrillTaskMapper.selectDoneByPlanId(plan.getId());
+            vo.setDone(done);
+        }
         return vo;
     }
 

+ 2 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/edu/mapper/CoreEduTrainingTaskMapper.java

@@ -59,4 +59,6 @@ public interface CoreEduTrainingTaskMapper extends BaseMapper<CoreEduTrainingTas
     Integer checkHasTaskUnDoneByPlanParentId(@Param("planId") Long planId);
 
     Integer checkHasTaskByPlanParentId(@Param("planId") Long planId);
+
+    Integer selectDoneByPlanId(@Param("id") Long id);
 }

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

@@ -169,6 +169,9 @@ public class CoreEduTrainingPlanServiceImpl extends ServiceImpl<CoreEduTrainingP
             final Integer hasTask = coreEduTrainingTaskMapper.checkHasTaskByPlanParentId(record.getId());
             record.setHasTask(hasTask);
         }
+        if (ObjectUtil.equal(record.getPlanCycle(),EduTrainingPlanCycleEnum.NONE.getCode())){
+            record.setDone(coreEduTrainingTaskMapper.selectDoneByPlanId(record.getId()));
+        }
     }
 
 
@@ -191,8 +194,14 @@ public class CoreEduTrainingPlanServiceImpl extends ServiceImpl<CoreEduTrainingP
         final List<CoreEduTrainingPlanToRole> planToRoles = coreEduTrainingPlanToRoleMapper.selectByMap(MapUtil.of("plan_id", id));
         final List<Long> execRoleIdList = planToRoles.stream().map(CoreEduTrainingPlanToRole::getRoleId).collect(Collectors.toList());
         vo.setPlanRoleId(ObjectUtil.isEmpty(execRoleIdList) ? null : execRoleIdList);
-        Integer done = coreEduTrainingTaskMapper.checkHasTaskIsDoneByPlanIdOrParentId(id);
-        vo.setDone(done);
+        if (plan.getStandard() == 1) {
+            //是否存在已完成的任务
+            final Integer done = coreEduTrainingTaskMapper.checkHasTaskIsDoneByPlanParentId(plan.getId());
+            vo.setDone(done);
+        }
+        if (ObjectUtil.equal(plan.getPlanCycle(),EduTrainingPlanCycleEnum.NONE.getCode())){
+            vo.setDone(coreEduTrainingTaskMapper.selectDoneByPlanId(plan.getId()));
+        }
         return vo;
     }
 

+ 3 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/service/impl/CoreSafetyTaskServiceImpl.java

@@ -293,6 +293,9 @@ public class CoreSafetyTaskServiceImpl extends ServiceImpl<CoreSafetyTaskMapper,
                 if (ObjectUtil.isNotEmpty(task.getPlanCycle())){
                     task.setPlanCycle(DictUtils.getDictLabel(DictConstants.CHECK_CYCLE,Integer.parseInt(task.getPlanCycle())));
                 }
+                if (ObjectUtil.isEmpty(task.getTaskType())) {
+                    task.setTaskType("临时登记");
+                }
                 if (ObjectUtil.isNotEmpty(toRoleList)) {
                     List<IdNameVo> finalNames = names;
                     String roleNames = toRoleList

+ 4 - 0
soc-modules/soc-modules-core/src/main/resources/mapper/drill/CoreDrillTaskMapper.xml

@@ -465,4 +465,8 @@
     <select id="checkHasTaskByPlanParentId" resultType="java.lang.Integer">
         SELECT 1 FROM `core_drill_task` where plan_id= #{planId} LIMIT 1;
     </select>
+
+    <select id="selectDoneByPlanId" resultType="java.lang.Integer">
+        select 1 from core_drill_task where plan_id=#{id} and status in (2,3)
+    </select>
 </mapper>

+ 5 - 1
soc-modules/soc-modules-core/src/main/resources/mapper/edu/CoreEduTrainingTaskMapper.xml

@@ -323,6 +323,10 @@
     </select>
 
     <select id="checkHasTaskByPlanParentId" resultType="java.lang.Integer">
-        SELECT 1 FROM `core_edu_training_task` where plan_id=#{planId} LIMIT 1;
+        SELECT 1 FROM `core_edu_training_task` where plan_id=#{planId} LIMIT 1
+    </select>
+
+    <select id="selectDoneByPlanId" resultType="java.lang.Integer">
+        select 1 from core_edu_training_task where plan_id=#{id} and status =2
     </select>
 </mapper>