Browse Source

Merge branch 'V0.0.2' of http://10.87.10.227:4000/jzyd_yyds/soc into V0.0.2

jiawuxian 2 năm trước cách đây
mục cha
commit
ecd407ada7

+ 4 - 1
soc-api/soc-api-system/src/main/java/com/xunmei/system/api/RemoteWorkTimeService.java

@@ -28,6 +28,9 @@ public interface RemoteWorkTimeService {
 
 
     @PostMapping("/work/time/findFutureWorkTime")
-    List<SysWorkTime> findFutureWorkTime(@RequestBody List<Long> orgId, @RequestParam(value = "time") String time, @RequestHeader(SecurityConstants.INNER) String source);
+    List<SysWorkTime> findFutureWorkTime(@RequestBody List<Long> orgId,
+                                         @RequestParam(value = "startTime") String startTime,
+                                         @RequestParam(value = "ednTime") String ednTime,
+                                         @RequestHeader(SecurityConstants.INNER) String source);
 
 }

+ 1 - 1
soc-api/soc-api-system/src/main/java/com/xunmei/system/api/factory/RemoteWorkTimesFallbackFactory.java

@@ -42,7 +42,7 @@ public class RemoteWorkTimesFallbackFactory implements FallbackFactory<RemoteWor
             }
 
             @Override
-            public List<SysWorkTime> findFutureWorkTime(List<Long> orgId, String time, String source) {
+            public List<SysWorkTime> findFutureWorkTime(List<Long> orgId, String startTime,String endTime, String source) {
                 return null;
             }
         };

+ 21 - 10
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/edu/service/impl/CoreEduTrainingTaskServiceImpl.java

@@ -751,29 +751,32 @@ public class CoreEduTrainingTaskServiceImpl extends ServiceImpl<CoreEduTrainingT
     @Override
     public void taskChangeForTimeWorkChange(WorkTimeChangeEvent event) {
         String date = LocalDate.now().format(DateTimeFormatter.ofPattern(Constants.DAILY_FORMAT));
-        List<SysWorkTime> futureWorkTime = workTimeService.findFutureWorkTime(event.getOrgIds(), date, SecurityConstants.INNER);
+        Date now = new Date();
         for (EduTrainingPlanCycleEnum value : EduTrainingPlanCycleEnum.values()) {
             switch (value) {
                 case DAILY:
-                    List<SysWorkTime> timeList = futureWorkTime.stream()
-                            .filter(time -> ObjectUtil.equal(time.getYmdDate(), date))
-                            .collect(Collectors.toList());
-                    dealTimeWorkChangeForDaily(event, date, timeList);
+                    List<SysWorkTime> dailyFutureWorkTime = getStartAndEndTime(now, EduTrainingPlanCycleEnum.DAILY.getCode(), event);
+                    dealTimeWorkChangeForDaily(event, date, dailyFutureWorkTime);
                     break;
                 case WEEKLY:
-                    dealTimeWorkChangeForWeekly(event, date, futureWorkTime);
+                    List<SysWorkTime> weeklyFutureWorkTime = getStartAndEndTime(now, EduTrainingPlanCycleEnum.WEEKLY.getCode(), event);
+                    dealTimeWorkChangeForWeekly(event, date, weeklyFutureWorkTime);
                     break;
                 case MONTHLY:
-                    dealTimeWorkChangeForMonthly(event, date, futureWorkTime);
+                    List<SysWorkTime> monthlyFutureWorkTime = getStartAndEndTime(now, EduTrainingPlanCycleEnum.MONTHLY.getCode(), event);
+                    dealTimeWorkChangeForMonthly(event, date, monthlyFutureWorkTime);
                     break;
                 case QUARTERLY:
-                    dealTimeWorkChangeForQuarterly(event, date, futureWorkTime);
+                    List<SysWorkTime> quarterlyFutureWorkTime = getStartAndEndTime(now, EduTrainingPlanCycleEnum.QUARTERLY.getCode(), event);
+                    dealTimeWorkChangeForQuarterly(event, date, quarterlyFutureWorkTime);
                     break;
                 case HALF_YEARLY:
-                    dealTimeWorkChangeForHalfYearly(event, date, futureWorkTime);
+                    List<SysWorkTime> halfYearlyFutureWorkTime = getStartAndEndTime(now, EduTrainingPlanCycleEnum.HALF_YEARLY.getCode(), event);
+                    dealTimeWorkChangeForHalfYearly(event, date, halfYearlyFutureWorkTime);
                     break;
                 case YEARLY:
-                    dealTimeWorkChangeForYearly(event, date, futureWorkTime);
+                    List<SysWorkTime> yearlyFutureWorkTime = getStartAndEndTime(now, EduTrainingPlanCycleEnum.YEARLY.getCode(), event);
+                    dealTimeWorkChangeForYearly(event, date, yearlyFutureWorkTime);
                     break;
                 default:
                     break;
@@ -1036,6 +1039,14 @@ public class CoreEduTrainingTaskServiceImpl extends ServiceImpl<CoreEduTrainingT
         //此list中Plan对象仅id与planCycle字段有值,
         buildTaskByPlan(planList, today);
     }
+
+
+    private List<SysWorkTime> getStartAndEndTime(Date now, Integer cycle, WorkTimeChangeEvent event) {
+        DateRange range = DateUtils.getStartAndEnd(now, cycle);
+        String startTime = DateUtil.format(range.getStartTime(), Constants.DAILY_FORMAT);
+        String endTime = DateUtil.format(range.getEndTime(), Constants.DAILY_FORMAT);
+        return workTimeService.findFutureWorkTime(event.getOrgIds(), startTime, endTime, SecurityConstants.INNER);
+    }
 }
 
 

+ 9 - 3
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/controller/ApiPlanController.java

@@ -167,10 +167,16 @@ public class ApiPlanController {
 
     @ApiOperation(value = "撤回")
     @GetMapping(value = "/cheHui/{id}")
-    @RequiresPermissions("core:plan:findById")
+//    @RequiresPermissions("core:plan:findById")
     public AjaxResult cheHui(@PathVariable Long id) {
-
-        return AjaxResult.success(appPlanService.cheHui(id));
+        appPlanService.cheHui(id);
+        return AjaxResult.success();
+    }
+    @ApiOperation(value = "撤回后下发")
+    @GetMapping(value = "/distributeCheHui/{id}")
+//    @RequiresPermissions("core:plan:findById")
+    public AjaxResult distributeCheHui(@PathVariable Long id) {
+        return AjaxResult.success(appPlanService.distributeCheHui(id));
     }
 
     @ApiOperation(value = "获取详情")

+ 3 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/AppPlanService.java

@@ -83,5 +83,7 @@ public interface AppPlanService extends IService<AppPlan> {
 
     void distributeToOrg(DistributeDto dto);
 
-    int cheHui(Long id);
+    void cheHui(Long id);
+
+    int distributeCheHui(Long id);
 }

+ 37 - 33
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/impl/AppPlanServiceImpl.java

@@ -184,41 +184,46 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
     }
 
     @Override
-    public int cheHui(Long id) {
+    public void cheHui(Long id) {
         AppPlan plan = baseMapper.selectById(id);
-
         //修改所有子计划
         List<AppPlan> appPlans = baseMapper.selectList(new LambdaQueryWrapper<AppPlan>().eq(AppPlan::getParentId, id));
         for (AppPlan ap :
                 appPlans) {
 //修改计划状态为停用
-            //如果是已经撤回的计划
-            if("2".equals(plan.getDistribute())){
-                //修改计划状态到进行中,下发状态到1
-                plan.setDistribute("1");
-                plan.setPlanStatus(1);
-            }else {
-                ap.setPlanStatus(2);
-            }
+            ap.setPlanStatus(2);
             baseMapper.updateById(ap);
         }
-        //如果是已经撤回的计划
-        if("2".equals(plan.getDistribute())){
-            //修改计划状态到进行中,下发状态到1
-            plan.setDistribute("3");
-            plan.setPlanStatus(1);
-            baseMapper.updateById(plan);
-            return 2;
-        }else{
-            plan.setDistribute("2");
-            plan.setPlanStatus(0);
-            baseMapper.updateById(plan);
-            return 1;
-        }
+        //设置下发状态为未下发
+        plan.setDistribute("0");
+        plan.setPlanStatus(0);
+        baseMapper.updateById(plan);
 
 
     }
 
+    @Override
+    public int distributeCheHui(Long id) {
+        AppPlan plan = baseMapper.selectById(id);
+        //修改所有子计划
+        List<AppPlan> appPlans = baseMapper.selectList(new LambdaQueryWrapper<AppPlan>().eq(AppPlan::getParentId, id));
+        //如果不存在子计划直接返回
+        if(appPlans==null||appPlans.size()==0){
+            return 0;
+        }
+        for (AppPlan ap :
+                appPlans) {
+//修改计划状态为停用
+            ap.setPlanStatus(1);
+            baseMapper.updateById(ap);
+        }
+        //设置下发状态为下发
+        plan.setDistribute("1");
+        plan.setPlanStatus(1);
+        baseMapper.updateById(plan);
+        return 1;
+    }
+
     /**
      * 获取检查要点分页
      *
@@ -267,7 +272,7 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
             plan.setPlanOfOrgName(app.getPlanCreateOrgName());
             //验证名称是否重复
             QueryWrapper<AppPlan> qw = new QueryWrapper<>();
-            qw.lambda().eq(AppPlan::getPlanName, app.getPlanName()).eq(AppPlan::getDeleted,0);
+            qw.lambda().eq(AppPlan::getPlanName, app.getPlanName()).eq(AppPlan::getDeleted, 0);
 
             Long size = baseMapper.selectCount(qw);
 
@@ -275,7 +280,7 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
                 throw new RuntimeException("计划名称重复,请确认!");
             }
 
-
+            plan.setDistribute("0");
             baseMapper.insert(plan);
             Long id = plan.getId();
 
@@ -305,7 +310,6 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
             }
 
 
-
 //            Integer orgId = app.getExecOrgType();
 //            if (orgId != null) {
 //                AppPlanToCheckOrg checkOrg = new AppPlanToCheckOrg();
@@ -331,10 +335,10 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
             }
 
             //获取计划对应的已完成任务数量
-            Long num = resumptionMapper.selectCount(new QueryWrapper<Resumption>().eq("plan_id", app.getId()).eq("status",3));
+            Long num = resumptionMapper.selectCount(new QueryWrapper<Resumption>().eq("plan_id", app.getId()).eq("status", 3));
             if (num > 0) {
                 //如果状态为已禁用
-                if(app.getPlanStatus()==0){
+                if (app.getPlanStatus() == 0) {
                     throw new RuntimeException("计划已生成任务,不能禁用!");
                 }
 
@@ -344,7 +348,7 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
             List<AppPlan> appPlans = baseMapper.selectList(new LambdaQueryWrapper<AppPlan>().eq(AppPlan::getParentId, plan.getId()));
             for (AppPlan ap :
                     appPlans) {
-                Long nums = resumptionMapper.selectCount(new QueryWrapper<Resumption>().eq("plan_id", ap.getId()).eq("status",3));
+                Long nums = resumptionMapper.selectCount(new QueryWrapper<Resumption>().eq("plan_id", ap.getId()).eq("status", 3));
                 if (nums > 0) {
                     if (app.getPlanStatus() == 0) {
                         throw new RuntimeException("计划已生成任务,不能禁用!");
@@ -450,7 +454,7 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
                 appPlanToExecOrgMapper.insert(execOrg);
             }
             //更新任务的名称
-            resumptionMapper.updateNameByPlanId(app.getPlanName(),app.getId());
+            resumptionMapper.updateNameByPlanId(app.getPlanName(), app.getId());
 
             //最后处理本计划
             plan.setUpdateTime(new Date());
@@ -519,17 +523,17 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
         /**
          * 验证计划是否被应用
          */
-        Long num = resumptionMapper.selectCount(new QueryWrapper<Resumption>().eq("plan_id", id).eq("status",3));
+        Long num = resumptionMapper.selectCount(new QueryWrapper<Resumption>().eq("plan_id", id).eq("status", 3));
         if (num > 0) {
             throw new RuntimeException("计划已生成任务,不能删除!");
         }
         //查找子计划
-        List<AppPlan> childrens = baseMapper.selectList(new LambdaQueryWrapper<AppPlan>().eq(AppPlan::getParentId,id));
+        List<AppPlan> childrens = baseMapper.selectList(new LambdaQueryWrapper<AppPlan>().eq(AppPlan::getParentId, id));
 
         //删除子计划
         for (AppPlan ap :
                 childrens) {
-            Long nums = resumptionMapper.selectCount(new QueryWrapper<Resumption>().eq("plan_id", ap.getId()).eq("status",3));
+            Long nums = resumptionMapper.selectCount(new QueryWrapper<Resumption>().eq("plan_id", ap.getId()).eq("status", 3));
             if (nums > 0) {
                 throw new RuntimeException("子计划已生成任务,不能删除!");
             }

+ 13 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/controller/CoreSafecheckPlanController.java

@@ -45,7 +45,19 @@ public class CoreSafecheckPlanController extends BaseController {
     @Autowired
     private SafetyCheckJobBusiness jobBusiness;
 
-
+    @ApiOperation(value = "撤回")
+    @GetMapping(value = "/cheHui/{id}")
+//    @RequiresPermissions("core:plan:findById")
+    public AjaxResult cheHui(@PathVariable Long id) {
+        coreSafecheckPlanService.cheHui(id);
+        return AjaxResult.success();
+    }
+    @ApiOperation(value = "撤回后下发")
+    @GetMapping(value = "/distributeCheHui/{id}")
+//    @RequiresPermissions("core:plan:findById")
+    public AjaxResult distributeCheHui(@PathVariable Long id) {
+        return AjaxResult.success(coreSafecheckPlanService.distributeCheHui(id));
+    }
     /**
      * 查询常规安全检查计划列表
      */

+ 4 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/service/ICoreSafecheckPlanService.java

@@ -74,4 +74,8 @@ public interface ICoreSafecheckPlanService extends IService<CoreSafecheckPlan> {
     List<String> selectItemIdsByPlanId(Long id);
 
     void distributeToOrg(DistributeDto dto);
+
+    void cheHui(Long id);
+
+    int distributeCheHui(Long id);
 }

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

@@ -164,9 +164,49 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
         CoreSafecheckPlan coreSafecheckPlan = new CoreSafecheckPlan();
         coreSafecheckPlan.setId(dto.getId());
         coreSafecheckPlan.setDistribute("1");
+        coreSafecheckPlan.setPlanStatus(1L);
         coreSafecheckPlanMapper.updateById(coreSafecheckPlan);
     }
 
+    @Override
+    public void cheHui(Long id) {
+        CoreSafecheckPlan plan = baseMapper.selectById(id);
+        //修改所有子计划
+        List<CoreSafecheckPlan> appPlans = baseMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlan>().eq(CoreSafecheckPlan::getParentId, id));
+        for (CoreSafecheckPlan ap :
+                appPlans) {
+//修改计划状态为停用
+            ap.setPlanStatus(2L);
+            baseMapper.updateById(ap);
+        }
+        //设置下发状态为未下发
+        plan.setDistribute("0");
+        plan.setPlanStatus(0L);
+        baseMapper.updateById(plan);
+    }
+
+    @Override
+    public int distributeCheHui(Long id) {
+        CoreSafecheckPlan plan = baseMapper.selectById(id);
+        //修改所有子计划
+        List<CoreSafecheckPlan> appPlans = baseMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlan>().eq(CoreSafecheckPlan::getParentId, id));
+        //如果不存在子计划直接返回
+        if(appPlans==null||appPlans.size()==0){
+            return 0;
+        }
+        for (CoreSafecheckPlan ap :
+                appPlans) {
+//修改计划状态为停用
+            ap.setPlanStatus(1L);
+            baseMapper.updateById(ap);
+        }
+        //设置下发状态为下发
+        plan.setDistribute("1");
+        plan.setPlanStatus(1L);
+        baseMapper.updateById(plan);
+        return 1;
+    }
+
 
     /**
      * 查询常规安全检查计划
@@ -209,11 +249,13 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
             coreSafecheckPlan.setIsDeleted("0");
             coreSafecheckPlan.setCreateTime(DateUtils.getNowDate());
             coreSafecheckPlan.setModifiedBy(SecurityUtils.getUserId());
+            coreSafecheckPlan.setDistribute("0");
             coreSafecheckPlanMapper.insert(coreSafecheckPlan);
 
         } else {
             coreSafecheckPlan.setUpdateTime(DateUtils.getNowDate());
             coreSafecheckPlan.setModifiedBy(SecurityUtils.getUserId());
+            coreSafecheckPlan.setPlanStatus(null);
             coreSafecheckPlanMapper.updateById(coreSafecheckPlan);
         }
 

+ 2 - 2
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/controller/SysWorkTimeController.java

@@ -147,8 +147,8 @@ public class SysWorkTimeController extends BaseController {
     @ApiOperation(value = "查询未来作息时间")
     @InnerAuth
     @PostMapping("/work/time/findFutureWorkTime")
-    List<SysWorkTime> findFutureWorkTime(@RequestBody List<Long> orgId,String time){
-       return sysWorkTimeService.findFutureWorkTime(orgId,time);
+    List<SysWorkTime> findFutureWorkTime(@RequestBody List<Long> orgId,String startTime,String ednTime){
+        return sysWorkTimeService.findFutureWorkTime(orgId,startTime,ednTime);
     }
 
 }

+ 1 - 1
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/service/ISysWorkTimeService.java

@@ -95,5 +95,5 @@ public interface ISysWorkTimeService extends IService<SysWorkTime> {
 
     List<String> findWorkTimeByDateRangeAndOrgId(Date startTime, Date endTime, Long orgId);
 
-    List<SysWorkTime> findFutureWorkTime(List<Long> orgId, String time);
+    List<SysWorkTime> findFutureWorkTime(List<Long> orgId,String startTime,String ednTime);
 }

+ 3 - 2
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/service/impl/SysWorkTimeServiceImpl.java

@@ -454,9 +454,10 @@ public class SysWorkTimeServiceImpl extends ServiceImpl<SysWorkTimeMapper, SysWo
     }
 
     @Override
-    public List<SysWorkTime> findFutureWorkTime(List<Long> orgId, String time) {
+    public List<SysWorkTime> findFutureWorkTime(List<Long> orgId,String startTime,String ednTime) {
         return lambdaQuery()
-                .ge(SysWorkTime::getYmdDate, time)
+                .ge(SysWorkTime::getYmdDate, startTime)
+                .le(SysWorkTime::getYmdDate, ednTime)
                 .in(SysWorkTime::getOrgId, orgId)
                 .select(SysWorkTime::getId, SysWorkTime::getIsEnable, SysWorkTime::getYmdDate, SysWorkTime::getOrgId)
                 .list();