Эх сурвалжийг харах

Merge remote-tracking branch 'origin/V0.0.2' into V0.0.2

jingyuanchao 2 жил өмнө
parent
commit
9c6567b670
18 өөрчлөгдсөн 204 нэмэгдсэн , 140 устгасан
  1. 6 0
      project_data/sql/0.0.2/soc/soc.sql
  2. 1 1
      soc-api/soc-api-system/src/main/java/com/xunmei/system/api/RemoteWorkTimeService.java
  3. 1 1
      soc-api/soc-api-system/src/main/java/com/xunmei/system/api/factory/RemoteWorkTimesFallbackFactory.java
  4. 6 3
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/TaskCreatingServiceImplBase.java
  5. 1 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/drill/service/impl/CoreDrillTaskServiceImpl.java
  6. 2 2
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/edu/service/impl/CoreEduTrainingTaskServiceImpl.java
  7. 1 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/listener/WorkTimeChangeEventListener.java
  8. 29 29
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/controller/ApiPlanController.java
  9. 1 2
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/impl/AppPlanServiceImpl.java
  10. 32 23
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/task/RebuildResumptionTaskBusiness.java
  11. 1 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/retrieval/service/impl/CoreMonitoringRetrievalTaskServiceImpl.java
  12. 24 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/controller/CoreSafecheckPlanController.java
  13. 6 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/domain/CoreSafecheckPlanToPoint.java
  14. 86 70
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/service/impl/CoreSafecheckPlanServiceImpl.java
  15. 1 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/vo/ruleItem/SafetyCheckRulePointVo.java
  16. 3 1
      soc-modules/soc-modules-core/src/main/resources/mapper/safetycheck/CoreSafecheckPlanMapper.xml
  17. 2 2
      soc-modules/soc-modules-system/src/main/java/com/xunmei/system/controller/SysWorkTimeController.java
  18. 1 1
      soc-modules/soc-modules-system/src/main/java/com/xunmei/system/listener/WorkTimeChangeEventListener.java

+ 6 - 0
project_data/sql/0.0.2/soc/soc.sql

@@ -1094,6 +1094,12 @@ END IF;
 
     END IF;
 
+    -- 安全检查检查项所属机构id
+    IF
+        NOT EXISTS ( SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE table_schema = DATABASE () and  TABLE_NAME = 'core_resumption_plan_to_point' AND COLUMN_NAME = 'of_org_id' ) THEN
+        ALTER TABLE `core_resumption_plan_to_point` ADD COLUMN `of_org_id` INT NULL DEFAULT NULL COMMENT '所属机构id';
+
+    END IF;
 
 	-- 履职任务NFC表增加submitby
     IF

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

@@ -30,7 +30,7 @@ public interface RemoteWorkTimeService {
 
 
     @PostMapping("/work/time/findWorkTimeByRange")
-    List<SysWorkTime> findWorkTimeByRange(@RequestBody WorkTimeDto workTimeDto, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
+    R<List<SysWorkTime>> findWorkTimeByRange(@RequestBody WorkTimeDto workTimeDto, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
 
     @PostMapping("/work/time/checkWorkTime")
     Integer checkWorkTime(@RequestBody Map<String,Object> searchData,  @RequestHeader(SecurityConstants.FROM_SOURCE) String source);

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

@@ -43,7 +43,7 @@ public class RemoteWorkTimesFallbackFactory implements FallbackFactory<RemoteWor
                 return null;
             }
             @Override
-            public List<SysWorkTime> findWorkTimeByRange(WorkTimeDto workTimeDto,String source) {
+            public R<List<SysWorkTime>> findWorkTimeByRange(WorkTimeDto workTimeDto,String source) {
                 return null;
             }
 

+ 6 - 3
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/TaskCreatingServiceImplBase.java

@@ -39,11 +39,15 @@ public abstract class TaskCreatingServiceImplBase<M extends BaseMapper<T>, T> ex
         workTimeDto.setOrgIdList(orgIds);
         workTimeDto.setStartTime(startTime);
         workTimeDto.setEndTime(endTime);
-        return workTimeService.findWorkTimeByRange(workTimeDto, SecurityConstants.FROM_SOURCE);
+//
+        return workTimeService.findWorkTimeByRange(workTimeDto, SecurityConstants.FROM_SOURCE).getData();
     }
 
     public Map<Long, Boolean> orgWorkTimeStatusMap(Date now, CycleCommonEnum cycle, List<Long> orgIds) {
         List<SysWorkTime> times = selectWorkTimeList(now, cycle, orgIds);
+        if(CollectionUtil.isEmpty(times)){
+            return  new HashMap<>();
+        }
         Map<Long, List<SysWorkTime>> map = times.stream()
                 .filter(t -> ObjectUtil.equal(t.getIsEnable(), 1L))
                 .collect(Collectors.groupingBy(t -> t.getOrgId()));
@@ -99,11 +103,10 @@ public abstract class TaskCreatingServiceImplBase<M extends BaseMapper<T>, T> ex
                 return true;
             }
 
+            start = DateUtil.offset(start, DateField.DAY_OF_YEAR, 1);
             if (start.equals(end) || start.after(end)) {
                 return false;
             }
-
-            start = DateUtil.offset(start, DateField.DAY_OF_YEAR, 1);
         }
     }
 

+ 1 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/drill/service/impl/CoreDrillTaskServiceImpl.java

@@ -357,7 +357,7 @@ public class CoreDrillTaskServiceImpl extends ServiceImpl<CoreDrillTaskMapper, C
         workTimeDto.setStartTime(startTime);
         workTimeDto.setEndTime(endTime);
         List<SysWorkTime> workTimeList = RemoteCallHandlerExecutor.executeRemoteCall(() ->
-                        workTimeService.findWorkTimeByRange(workTimeDto, SecurityConstants.FROM_SOURCE),
+                        workTimeService.findWorkTimeByRange(workTimeDto, SecurityConstants.FROM_SOURCE).getData(),
                 ErrorMsgConstants.QUERY_ORG_WORK_TIME_ERROR);
         if (workTimeList.isEmpty()) {
             log.error("生成任务时,需要生成任务的机构均未营业,本次任务跳过!");

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

@@ -421,7 +421,7 @@ public class CoreEduTrainingTaskServiceImpl extends ServiceImpl<CoreEduTrainingT
         workTimeDto.setStartTime(startTime);
         workTimeDto.setEndTime(endTime);
         List<SysWorkTime> workTimeList = RemoteCallHandlerExecutor.executeRemoteCall(() ->
-                        workTimeService.findWorkTimeByRange(workTimeDto, SecurityConstants.FROM_SOURCE),
+                        workTimeService.findWorkTimeByRange(workTimeDto, SecurityConstants.FROM_SOURCE).getData(),
                 ErrorMsgConstants.QUERY_ORG_WORK_TIME_ERROR);
         if (workTimeList.isEmpty()) {
             log.error("生成任务时,需要生成任务的机构均未营业,本次任务跳过!");
@@ -1116,7 +1116,7 @@ public class CoreEduTrainingTaskServiceImpl extends ServiceImpl<CoreEduTrainingT
         workTimeDto.setOrgIdList(event.getOrgIds());
         workTimeDto.setStartTime(startTime);
         workTimeDto.setEndTime(endTime);
-        return workTimeService.findWorkTimeByRange(workTimeDto, SecurityConstants.FROM_SOURCE);
+        return workTimeService.findWorkTimeByRange(workTimeDto, SecurityConstants.FROM_SOURCE).getData();
     }
 }
 

+ 1 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/listener/WorkTimeChangeEventListener.java

@@ -25,7 +25,7 @@ public class WorkTimeChangeEventListener implements ApplicationListener<WorkTime
     @EventListener(WorkTimeChangeEvent.class)
     @TransactionalEventListener(phase = TransactionPhase.AFTER_COMMIT, fallbackExecution = true)
     public void onApplicationEvent(WorkTimeChangeEvent event) {
-        eduTask(event);
+//        eduTask(event);
         resumptionTask(event);
     }
 

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

@@ -215,34 +215,34 @@ public class ApiPlanController {
 //    @RequiresPermissions("core:plan:findById")
     public AjaxResult cheHui(@PathVariable Long id) {
         appPlanService.cheHui(id);
-        AppPlan plan = appPlanService.getById(id);
-        //撤回后的下发如果存在子计划并且勾选立即执行也需要生成任务
-        if(plan.getBuildTaskNow()==1){
-            DateTime datetime = new DateTime();
-            datetime.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
-            //当有周期存在时保持原有接口不变(doTask),否则按照新的接口创建
-            Integer plancycle = plan.getPlanCycle();
-            if (plancycle != null) {
-                if (plancycle == 2) {
-                    taskBusiness.syncDay(datetime, plancycle);
-                }
-                if (plancycle == 3) {
-                    taskBusiness.syncWeek(datetime, plancycle);
-                }
-                if (plancycle == 4) {
-                    taskBusiness.syncMonth(datetime, plancycle);
-                }
-                if (plancycle == 5) {
-                    taskBusiness.syncQuarter(datetime, plancycle);
-                }
-                if (plancycle == 6) {
-                    taskBusiness.syncHalfYear(datetime, plancycle);
-                }
-                if (plancycle == 7) {
-                    taskBusiness.syncYear(datetime, plancycle);
-                }
-            }
-        }
+//        AppPlan plan = appPlanService.getById(id);
+//        //撤回后的下发如果存在子计划并且勾选立即执行也需要生成任务
+//        if(plan.getBuildTaskNow()==1){
+//            DateTime datetime = new DateTime();
+//            datetime.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
+//            //当有周期存在时保持原有接口不变(doTask),否则按照新的接口创建
+//            Integer plancycle = plan.getPlanCycle();
+//            if (plancycle != null) {
+//                if (plancycle == 2) {
+//                    taskBusiness.syncDay(datetime, plancycle);
+//                }
+//                if (plancycle == 3) {
+//                    taskBusiness.syncWeek(datetime, plancycle);
+//                }
+//                if (plancycle == 4) {
+//                    taskBusiness.syncMonth(datetime, plancycle);
+//                }
+//                if (plancycle == 5) {
+//                    taskBusiness.syncQuarter(datetime, plancycle);
+//                }
+//                if (plancycle == 6) {
+//                    taskBusiness.syncHalfYear(datetime, plancycle);
+//                }
+//                if (plancycle == 7) {
+//                    taskBusiness.syncYear(datetime, plancycle);
+//                }
+//            }
+//        }
         return AjaxResult.success();
     }
     @ApiOperation(value = "撤回后下发")
@@ -252,7 +252,7 @@ public class ApiPlanController {
         int i = appPlanService.distributeCheHui(id);
         AppPlan plan = appPlanService.getById(id);
         //撤回后的下发如果存在子计划并且勾选立即执行也需要生成任务
-        if(i>0&&plan.getBuildTaskNow()==1){
+        if(plan.getBuildTaskNow()==1){
             DateTime datetime = new DateTime();
             datetime.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
             //当有周期存在时保持原有接口不变(doTask),否则按照新的接口创建

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

@@ -232,8 +232,7 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
     @Override
     public int distributeCheHui(Long id) {
         AppPlan plan = baseMapper.selectById(id);
-
-        //设置下发状态为下发
+        //设置计划状态
         plan.setPlanStatus(1);
 
         baseMapper.updateById(plan);

+ 32 - 23
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/task/RebuildResumptionTaskBusiness.java

@@ -8,6 +8,7 @@ import cn.hutool.core.util.NumberUtil;
 import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.google.common.collect.Lists;
 import com.xunmei.common.core.constant.SecurityConstants;
 import com.xunmei.common.core.domain.worktime.domain.SysWorkTime;
 import com.xunmei.common.core.enums.CycleCommonEnum;
@@ -57,7 +58,7 @@ public class RebuildResumptionTaskBusiness extends TaskCreatingServiceImplBase<R
                 List<Long> hsOrgIds = remoteOrgService.selectParentHs(orgIds, SecurityConstants.INNER)
                         .stream().map(SysOrg::getId)
                         .collect(Collectors.toList());
-                List<AppPlan> listPlans = queryPlans(hsOrgIds, CycleCommonEnum.DAILY);
+                List<AppPlan> listPlans = queryPlans(hsOrgIds, CycleCommonEnum.DAILY,new ArrayList<>());
                 //通过计划id获取计划关系的角色
                 if (CollectionUtils.isNotEmpty(listPlans)) {
                     List<Long> planIds = listPlans.stream().map(AppPlan::getId).collect(Collectors.toList());
@@ -65,8 +66,8 @@ public class RebuildResumptionTaskBusiness extends TaskCreatingServiceImplBase<R
                     List<Resumption> newResumptionList = new ArrayList<>();
                     for (AppPlan plan : listPlans) {
                         //根据计划获取角色
-                        List<AppPlanToRole> planToRoles = appPlanToRoles.stream().filter(item -> item.getPlanId().equals(plan.getId())).collect(Collectors.toList());
-                        List<Resumption> resumptionLista = this.buildResumptions(plan, planToRoles, workTime);
+//                        List<AppPlanToRole> planToRoles = appPlanToRoles.stream().filter(item -> item.getPlanId().equals(plan.getId())).collect(Collectors.toList());
+                        List<Resumption> resumptionLista = this.buildResumptions(plan,  workTime);
                         if (CollectionUtils.isNotEmpty(resumptionLista)) {
                             //根据planId和roleId是否判断resumptionLista中的数据是否在resumptionListYlz中
                             List<Resumption> resumptionListb = resumptionLista.stream().filter(item -> !resumptionListYlz.stream().filter(item1 -> item1.getPlanId().equals(item.getPlanId())
@@ -88,29 +89,30 @@ public class RebuildResumptionTaskBusiness extends TaskCreatingServiceImplBase<R
 
     @Override
     public void rebuildWeeklyTask(List<Long> orgIds, Date startDate, Date endDate) {
-        rebuildTask(orgIds,startDate,endDate,CycleCommonEnum.WEEKLY);
+        rebuildTask(orgIds, startDate, endDate, CycleCommonEnum.WEEKLY);
     }
 
 
     @Override
     public void rebuildMonthTask(List<Long> orgIds, Date startDate, Date endDate) {
-        rebuildTask(orgIds,startDate,endDate,CycleCommonEnum.MONTHLY);
+        rebuildTask(orgIds, startDate, endDate, CycleCommonEnum.MONTHLY);
     }
 
     @Override
     public void rebuildQuarterTask(List<Long> orgIds, Date startDate, Date endDate) {
-        rebuildTask(orgIds,startDate,endDate,CycleCommonEnum.QUARTERLY);
+        rebuildTask(orgIds, startDate, endDate, CycleCommonEnum.QUARTERLY);
     }
 
     @Override
     public void rebuildHalfYearTask(List<Long> orgIds, Date startDate, Date endDate) {
-        rebuildTask(orgIds,startDate,endDate,CycleCommonEnum.HALF_YEARLY);
+        rebuildTask(orgIds, startDate, endDate, CycleCommonEnum.HALF_YEARLY);
     }
 
     @Override
     public void rebuildYearTask(List<Long> orgIds, Date startDate, Date endDate) {
-        rebuildTask(orgIds,startDate,endDate,CycleCommonEnum.YEARLY);
+        rebuildTask(orgIds, startDate, endDate, CycleCommonEnum.YEARLY);
     }
+
     private void rebuildTask(List<Long> orgIds, Date startDate, Date endDate, CycleCommonEnum cycle) {
         List<Resumption> resumptionList = queryTask(startDate, cycle, orgIds);
         List<Long> deleteIds = resumptionList.stream()
@@ -126,7 +128,13 @@ public class RebuildResumptionTaskBusiness extends TaskCreatingServiceImplBase<R
         Map<Long, Boolean> workingMap = orgWorkTimeStatusMap(startDate, cycle, orgIds);
 //        List<Long> deleteTaskIds = new ArrayList<>();
 
-        for (Long orgId : orgIds) {
+        List<SysOrg> orgs = remoteOrgService.selectByOrgIdList(orgIds, SecurityConstants.INNER);
+        for (SysOrg org : orgs) {
+            if(ObjectUtil.isNull(org.getType())){
+                continue;
+            }
+
+            Long orgId = org.getId();
             if (!workingMap.containsKey(orgId) || workingMap.get(orgId) == false) {
                 //当前作息周期已经歇业
                 continue;
@@ -135,21 +143,21 @@ public class RebuildResumptionTaskBusiness extends TaskCreatingServiceImplBase<R
             List<Long> hsOrgIds = remoteOrgService.selectParentHs(ListUtil.toList(orgId), SecurityConstants.INNER)
                     .stream().map(SysOrg::getId)
                     .collect(Collectors.toList());
-            List<AppPlan> listPlans = queryPlans(hsOrgIds, CycleCommonEnum.DAILY);
+            List<AppPlan> listPlans = queryPlans(hsOrgIds, cycle, ListUtil.toList(org.getType()));
             if (CollectionUtils.isEmpty(listPlans)) {
                 continue;
             }
 
-            List<Long> planIds = listPlans.stream().map(AppPlan::getId).collect(Collectors.toList());
-            List<AppPlanToRole> appPlanToRoles = appPlanToRoleMapper.selectList(new QueryWrapper<AppPlanToRole>().lambda().in(AppPlanToRole::getPlanId, planIds));
+//            List<Long> planIds = listPlans.stream().map(AppPlan::getId).collect(Collectors.toList());
+//            List<AppPlanToRole> appPlanToRoles = appPlanToRoleMapper.selectList(new QueryWrapper<AppPlanToRole>().lambda().in(AppPlanToRole::getPlanId, planIds));
             List<Resumption> newResumptionList = new ArrayList<>();
             for (AppPlan plan : listPlans) {
                 //根据计划获取角色
-                List<AppPlanToRole> planToRoles = appPlanToRoles.stream().filter(item -> item.getPlanId().equals(plan.getId())).collect(Collectors.toList());
+//                List<AppPlanToRole> planToRoles = appPlanToRoles.stream().filter(item -> item.getPlanId().equals(plan.getId())).collect(Collectors.toList());
                 Long executedCount = executedResumptionList.stream()
                         .filter(r -> ObjectUtil.equal(r.getOrgId(), orgId) && ObjectUtil.equal(r.getPlanId(), plan.getParentId()))
                         .count();
-                List<Resumption> planResumptionList = this.buildResumptions(plan, planToRoles, startDate, endDate, executedCount);
+                List<Resumption> planResumptionList = this.buildResumptions(plan, startDate, endDate, executedCount);
                 if (CollectionUtils.isNotEmpty(planResumptionList)) {
                     //根据planId和roleId是否判断resumptionLista中的数据是否在resumptionListYlz中
 //                    List<Resumption> resumptionListb = resumptionLista.stream().filter(item -> !resumptionListYlz.stream().filter(item1 -> item1.getPlanId().equals(item.getPlanId())
@@ -163,7 +171,7 @@ public class RebuildResumptionTaskBusiness extends TaskCreatingServiceImplBase<R
         }
     }
 
-    private List<Resumption> buildResumptions(AppPlan appPlan, List<AppPlanToRole> planToRoles, SysWorkTime workTime) {
+    private List<Resumption> buildResumptions(AppPlan appPlan, SysWorkTime workTime) {
         DateTime dateTime = new DateTime(workTime.getYmdDate());
         String opentime = workTime.getOpenTime();//营业时间
         String closetime = workTime.getCloseTime();//营业终了
@@ -189,14 +197,10 @@ public class RebuildResumptionTaskBusiness extends TaskCreatingServiceImplBase<R
             planendTime = DateUtil.endOfDay(time2).setField(DateField.MILLISECOND, 0);
         }
 
-        return buildResumptions(appPlan, planToRoles, planstartTime, planendTime, 0L);
+        return buildResumptions(appPlan, planstartTime, planendTime, 0L);
     }
 
-    private List<Resumption> buildResumptions(AppPlan appPlan, List<AppPlanToRole> planToRoles, Date planStartTime, Date planEndTime, Long executedCount) {
-        if (CollectionUtils.isEmpty(planToRoles)) {
-            return new ArrayList<>();
-        }
-
+    private List<Resumption> buildResumptions(AppPlan appPlan, Date planStartTime, Date planEndTime, Long executedCount) {
         List<Resumption> resumptionList = new ArrayList<>();
         Long count = 1L;
         if (NumberUtil.isNumber(appPlan.getCount())) {
@@ -220,7 +224,6 @@ public class RebuildResumptionTaskBusiness extends TaskCreatingServiceImplBase<R
             resumption.setPlanId((ObjectUtil.equal(appPlan.getParentId(), -1L) || ObjectUtil.isNull(appPlan.getParentId())) ? appPlan.getId() : appPlan.getParentId());
             resumption.setOrgId(appPlan.getPlanOfOrgId());
             resumption.setType(appPlan.getPlanCycle());
-            resumption.setRoleId(planToRoles.get(0).getRoleId());
             resumption.setPlanStartTime(planStartTime);
             resumption.setPlanEndTime(planEndTime);
             resumption.setCreateTime(new Date());
@@ -247,12 +250,18 @@ public class RebuildResumptionTaskBusiness extends TaskCreatingServiceImplBase<R
      * @param cycle
      * @return
      */
-    private List<AppPlan> queryPlans(List<Long> planOfOrgId, CycleCommonEnum cycle) {
+    private List<AppPlan> queryPlans(List<Long> planOfOrgId, CycleCommonEnum cycle,List<Integer> execOrgTypes) {
+        if (CollectionUtils.isEmpty(planOfOrgId)) {
+            return new ArrayList<>();
+        }
         QueryWrapper<AppPlan> qw = new QueryWrapper<>();
         qw.lambda().eq(AppPlan::getPlanStatus, 1);
         qw.lambda().eq(AppPlan::getPlanCycle, cycle.getCode());
         qw.lambda().in(AppPlan::getPlanOfOrgId, planOfOrgId);
 
+        if(CollectionUtils.isNotEmpty(execOrgTypes)){
+            qw.lambda().in(AppPlan::getExecOrgType,execOrgTypes);
+        }
         List<AppPlan> listPlans = appPlanMapper.selectList(qw);
 
         return listPlans;

+ 1 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/retrieval/service/impl/CoreMonitoringRetrievalTaskServiceImpl.java

@@ -820,6 +820,6 @@ public class CoreMonitoringRetrievalTaskServiceImpl extends ServiceImpl<CoreMoni
         workTimeDto.setOrgIdList(event.getOrgIds());
         workTimeDto.setStartTime(startTime);
         workTimeDto.setEndTime(endTime);
-        return workTimeService.findWorkTimeByRange(workTimeDto, SecurityConstants.FROM_SOURCE);
+        return workTimeService.findWorkTimeByRange(workTimeDto, SecurityConstants.FROM_SOURCE).getData();
     }
 }

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

@@ -56,7 +56,30 @@ public class CoreSafecheckPlanController extends BaseController {
     @GetMapping(value = "/distributeCheHui/{id}")
 //    @RequiresPermissions("core:plan:findById")
     public AjaxResult distributeCheHui(@PathVariable Long id) {
-        return AjaxResult.success(coreSafecheckPlanService.distributeCheHui(id));
+        int i = coreSafecheckPlanService.distributeCheHui(id);
+        CoreSafecheckPlan plan = coreSafecheckPlanService.getById(id);
+        //撤回后的下发如果是无周期或者勾选立即执行也需要生成任务
+        if(plan.isBuildTaskNow()||plan.getPlanCycle()==6){
+            int cycle = Math.toIntExact(plan.getPlanCycle());
+            DateTime datetime = new DateTime();
+            datetime.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
+            DateHelper dateHelper = new DateHelper(datetime);
+            Map<String, Date> map=null;
+            //如果无周期
+            if(cycle==6){
+                map = DateHelper.getStartAndEnd(dateHelper, null);
+                map.put("start", plan.getStartDate());
+                map.put("end", plan.getEndDate());
+            }else{
+                map = DateHelper.getStartAndEnd(dateHelper, cycle);
+            }
+            try {
+                jobBusiness.createTask(datetime, cycle, map.get("start"), map.get("end"));
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+        return AjaxResult.success(i);
     }
     /**
      * 查询常规安全检查计划列表

+ 6 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/domain/CoreSafecheckPlanToPoint.java

@@ -26,11 +26,12 @@ import com.xunmei.common.core.web.domain.BaseEntity;
 public class CoreSafecheckPlanToPoint extends BaseEntity {
     private static final long serialVersionUID = 1L;
 
-    public CoreSafecheckPlanToPoint(Long planId, Long pointId, boolean pointScan,boolean required) {
+    public CoreSafecheckPlanToPoint(Long planId, Long pointId, boolean pointScan,boolean required,Long ofOrgId) {
         this.planId = planId;
         this.pointId = pointId;
         this.pointScan = pointScan;
         this.required=required;
+        this.ofOrgId=ofOrgId;
     }
 
     /**
@@ -44,6 +45,10 @@ public class CoreSafecheckPlanToPoint extends BaseEntity {
      */
     @ApiModelProperty(value = "检查要点id")
     private Long pointId;
+    /**
+     * 所属机构id
+     */
+    private Long ofOrgId;
 
     /**
      * 是否扫描NFC 1扫描,0不扫描

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

@@ -106,76 +106,82 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
 
     @Override
     public void distributeToOrg(DistributeDto dto) {
+        CoreSafecheckPlan byId = baseMapper.selectById(dto.getId());
         for (DistributeStatusDto d :
                 dto.getOrgAndStatus()) {
             CoreSafecheckPlan plan = baseMapper.selectOne(new LambdaQueryWrapper<CoreSafecheckPlan>().eq(CoreSafecheckPlan::getPlanOfOrgId, d.getOrgId()).eq(CoreSafecheckPlan::getParentId, dto.getId()));
-            //如果子计划计划已存在
+            //如果子计划已存在
             if (plan != null) {
                 plan.setPlanStatus((long) (d.getStatus() > 0 ? 1 : 2));
                 plan.setDistributePlanStatus(d.getStatus().toString());
                 plan.setDistributeStatus("1");
+                plan.setPlanCreateOrgId(null);
                 baseMapper.updateById(plan);
-            }else{
-
-            CoreSafecheckPlan coreSafecheckPlan = baseMapper.selectById(dto.getId());
-            coreSafecheckPlan.setDistributeStatus("1");
-            coreSafecheckPlan.setPlanOfOrgId(d.getOrgId());
-            coreSafecheckPlan.setPlanStatus((long) (d.getStatus() > 0 ? 1 : 2));
-            coreSafecheckPlan.setDistributePlanStatus(d.getStatus().toString());
-            coreSafecheckPlan.setCreateTime(new Date());
-            //下发所属机构类型
-            coreSafecheckPlan.setPlanOfOrgType(orgService.selectSysOrgById(coreSafecheckPlan.getPlanOfOrgId(), SecurityConstants.INNER).getType());
-            coreSafecheckPlan.setId(null);
+            } else {
+
+                CoreSafecheckPlan coreSafecheckPlan = baseMapper.selectById(dto.getId());
+                coreSafecheckPlan.setDistributeStatus("1");
+                coreSafecheckPlan.setPlanOfOrgId(d.getOrgId());
+                coreSafecheckPlan.setPlanStatus((long) (d.getStatus() > 0 ? 1 : 2));
+                coreSafecheckPlan.setDistributePlanStatus(d.getStatus().toString());
+                coreSafecheckPlan.setCreateTime(new Date());
+                //下发所属机构类型
+                coreSafecheckPlan.setPlanOfOrgType(orgService.selectSysOrgById(coreSafecheckPlan.getPlanOfOrgId(), SecurityConstants.INNER).getType());
+                coreSafecheckPlan.setId(null);
 //            if (coreSafecheckPlan.getPlanCycle()==6){
 //                coreSafecheckPlan.setStartDate();
 //            }
 //            plan.setPlanName(plan.getPlanName()+"下发"+orgService.selectOrgById(d.getOrgId(),SecurityConstants.INNER).getName());
-            coreSafecheckPlan.setPlanName(coreSafecheckPlan.getPlanName());
-            coreSafecheckPlan.setParentId(dto.getId());
-            baseMapper.insert(coreSafecheckPlan);
+                coreSafecheckPlan.setPlanName(coreSafecheckPlan.getPlanName());
+                coreSafecheckPlan.setParentId(dto.getId());
+                baseMapper.insert(coreSafecheckPlan);
 
-            List<CoreSafecheckPlanToRole> roleList = coreSafecheckPlanToRoleMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToRole>().eq(CoreSafecheckPlanToRole::getPlanId, dto.getId()));
-            //再处理角色关系
-            if (roleList != null) {
-                coreSafecheckPlanToRoleMapper.deleteCoreSafecheckPlanToRoleByPlanId(coreSafecheckPlan.getId());
-                for (CoreSafecheckPlanToRole r :
-                        roleList) {
-                    coreSafecheckPlanToRoleMapper.insert(new CoreSafecheckPlanToRole(coreSafecheckPlan.getId(), r.getRoleId()));
+                List<CoreSafecheckPlanToRole> roleList = coreSafecheckPlanToRoleMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToRole>().eq(CoreSafecheckPlanToRole::getPlanId, dto.getId()));
+                //再处理角色关系
+                if (roleList != null) {
+                    coreSafecheckPlanToRoleMapper.deleteCoreSafecheckPlanToRoleByPlanId(coreSafecheckPlan.getId());
+                    for (CoreSafecheckPlanToRole r :
+                            roleList) {
+                        coreSafecheckPlanToRoleMapper.insert(new CoreSafecheckPlanToRole(coreSafecheckPlan.getId(), r.getRoleId()));
 
+                    }
                 }
-            }
-            //再处理检查机构关系
-            List<CoreSafecheckPlanToExecOrg> execOrgList = coreSafecheckPlanToExecOrgMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToExecOrg>().eq(CoreSafecheckPlanToExecOrg::getPlanId, dto.getId()));
-            if (execOrgList != null) {
-                coreSafecheckPlanToExecOrgMapper.deleteCoreSafecheckPlanToExecOrgByPlanId(coreSafecheckPlan.getId());
-                for (CoreSafecheckPlanToExecOrg org :
-                        execOrgList) {
-                    coreSafecheckPlanToExecOrgMapper.insert(new CoreSafecheckPlanToExecOrg(coreSafecheckPlan.getId(), org.getOrgId()));
+                //再处理检查机构关系
+                List<CoreSafecheckPlanToExecOrg> execOrgList = coreSafecheckPlanToExecOrgMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToExecOrg>().eq(CoreSafecheckPlanToExecOrg::getPlanId, dto.getId()));
+                if (execOrgList != null) {
+                    coreSafecheckPlanToExecOrgMapper.deleteCoreSafecheckPlanToExecOrgByPlanId(coreSafecheckPlan.getId());
+                    for (CoreSafecheckPlanToExecOrg org :
+                            execOrgList) {
+                        coreSafecheckPlanToExecOrgMapper.insert(new CoreSafecheckPlanToExecOrg(coreSafecheckPlan.getId(), org.getOrgId()));
 
+                    }
                 }
-            }
-            //再处理受检机构关系
-            List<CoreSafecheckPlanToCheckOrg> checkOrgList = coreSafecheckPlanToCheckOrgMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToCheckOrg>().eq(CoreSafecheckPlanToCheckOrg::getPlanId, dto.getId()));
-            if (checkOrgList != null) {
-                coreSafecheckPlanToCheckOrgMapper.deleteCoreSafecheckPlanToCheckOrgByPlanId(coreSafecheckPlan.getId());
-                for (CoreSafecheckPlanToCheckOrg org :
-                        checkOrgList) {
-                    coreSafecheckPlanToCheckOrgMapper.insert(new CoreSafecheckPlanToCheckOrg(coreSafecheckPlan.getId(), org.getOrgId()));
+                //再处理受检机构关系
+                List<CoreSafecheckPlanToCheckOrg> checkOrgList = coreSafecheckPlanToCheckOrgMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToCheckOrg>().eq(CoreSafecheckPlanToCheckOrg::getPlanId, dto.getId()));
+                if (checkOrgList != null) {
+                    coreSafecheckPlanToCheckOrgMapper.deleteCoreSafecheckPlanToCheckOrgByPlanId(coreSafecheckPlan.getId());
+                    for (CoreSafecheckPlanToCheckOrg org :
+                            checkOrgList) {
+                        coreSafecheckPlanToCheckOrgMapper.insert(new CoreSafecheckPlanToCheckOrg(coreSafecheckPlan.getId(), org.getOrgId()));
 
+                    }
                 }
-            }
-            //再处理检查要点关系
-            List<CoreSafecheckPlanToPoint> rpList = coreSafecheckPlanToPointMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToPoint>().eq(CoreSafecheckPlanToPoint::getPlanId, dto.getId()));
-            if (rpList != null) {
-                coreSafecheckPlanToPointMapper.deleteCoreSafecheckPlanToPointByPlanId(coreSafecheckPlan.getId());
-                for (CoreSafecheckPlanToPoint s :
-                        rpList) {
-                    coreSafecheckPlanToPointMapper.insert(new CoreSafecheckPlanToPoint(coreSafecheckPlan.getId(), s.getPointId(), s.isPointScan(), s.isRequired()));
+                //再处理检查要点关系
 
+                //查询父计划的所有检查要点
+                List<CoreSafecheckPlanToPoint> rpList = coreSafecheckPlanToPointMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToPoint>().eq(CoreSafecheckPlanToPoint::getPlanId, dto.getId()).eq(CoreSafecheckPlanToPoint::getOfOrgId, byId.getPlanOfOrgId()));
+                if (rpList != null) {
+                    //删除父计划创建的检查要点
+                    coreSafecheckPlanToPointMapper.delete(new LambdaQueryWrapper<CoreSafecheckPlanToPoint>().eq(CoreSafecheckPlanToPoint::getPlanId, coreSafecheckPlan.getId()).eq(CoreSafecheckPlanToPoint::getOfOrgId, byId.getPlanOfOrgId()));
+                    for (CoreSafecheckPlanToPoint s :
+                            rpList) {
+                        //插入父计划的所有检查要点
+                        coreSafecheckPlanToPointMapper.insert(new CoreSafecheckPlanToPoint(coreSafecheckPlan.getId(), s.getPointId(), s.isPointScan(), s.isRequired(), s.getOfOrgId()));
+
+                    }
                 }
             }
         }
-        }
         //更改下发状态
         CoreSafecheckPlan coreSafecheckPlan = new CoreSafecheckPlan();
         coreSafecheckPlan.setId(dto.getId());
@@ -214,20 +220,6 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
     @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;
@@ -243,7 +235,7 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
     @Override
     public CoreSafecheckPlan selectCoreSafecheckPlanById(Long id) {
         CoreSafecheckPlan coreSafecheckPlan = coreSafecheckPlanMapper.selectCoreSafecheckPlanById(id);
-        Long sum=coreSafetyTaskMapper.selectCount(new LambdaQueryWrapper<CoreSafetyTask>().eq(CoreSafetyTask::getPlanId, id).in(CoreSafetyTask::getStatus, 3,4));
+        Long sum = coreSafetyTaskMapper.selectCount(new LambdaQueryWrapper<CoreSafetyTask>().eq(CoreSafetyTask::getPlanId, id).in(CoreSafetyTask::getStatus, 3, 4));
         if (sum > 0) {
             //如果存在完成或者逾期的任务设置编辑状态为1
             coreSafecheckPlan.setHasEdit(1);
@@ -252,7 +244,7 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
         List<CoreSafecheckPlan> appPlans = baseMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlan>().eq(CoreSafecheckPlan::getParentId, id));
         for (CoreSafecheckPlan p :
                 appPlans) {
-            Long csum=coreSafetyTaskMapper.selectCount(new LambdaQueryWrapper<CoreSafetyTask>().eq(CoreSafetyTask::getPlanId, p.getId()).in(CoreSafetyTask::getStatus, 3,4));
+            Long csum = coreSafetyTaskMapper.selectCount(new LambdaQueryWrapper<CoreSafetyTask>().eq(CoreSafetyTask::getPlanId, p.getId()).in(CoreSafetyTask::getStatus, 3, 4));
             if (csum > 0) {
                 //如果存在完成或者逾期的任务设置编辑状态为1
                 coreSafecheckPlan.setHasEdit(1);
@@ -301,6 +293,7 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
             coreSafecheckPlan.setUpdateTime(DateUtils.getNowDate());
             coreSafecheckPlan.setModifiedBy(SecurityUtils.getUserId());
             coreSafecheckPlan.setPlanStatus(null);
+            coreSafecheckPlan.setPlanCreateOrgId(null);
             coreSafecheckPlanMapper.updateById(coreSafecheckPlan);
         }
 
@@ -334,10 +327,11 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
         }
         //再处理检查要点关系
         if (coreSafecheckPlan.getRulePointList() != null) {
-            coreSafecheckPlanToPointMapper.deleteCoreSafecheckPlanToPointByPlanId(coreSafecheckPlan.getId());
+            //删除计划id为当前计划并且所属机构id为当前计划所属
+            coreSafecheckPlanToPointMapper.delete(new LambdaQueryWrapper<CoreSafecheckPlanToPoint>().eq(CoreSafecheckPlanToPoint::getPlanId, coreSafecheckPlan.getId()).eq(CoreSafecheckPlanToPoint::getOfOrgId, coreSafecheckPlan.getPlanOfOrgId()));
             for (SafetyCheckRulePointVo s :
                     coreSafecheckPlan.getRulePointList()) {
-                coreSafecheckPlanToPointMapper.insert(new CoreSafecheckPlanToPoint(coreSafecheckPlan.getId(), s.getId(), s.isPointScan(), s.isRequired()));
+                coreSafecheckPlanToPointMapper.insert(new CoreSafecheckPlanToPoint(coreSafecheckPlan.getId(), s.getId(), s.isPointScan(), s.isRequired(), s.getOfOrgId()));
 
             }
         }
@@ -366,7 +360,7 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
             }
         }
 //如果编辑需要处理子计划
-        if (pid == null) {
+        if (pid != null) {
             //处理子计划
             //拿到所有子计划
             List<CoreSafecheckPlan> children = baseMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlan>().eq(CoreSafecheckPlan::getParentId, coreSafecheckPlan.getId()));
@@ -419,17 +413,25 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
 
                     }
                 }
-                //再处理检查要点关系
-                List<CoreSafecheckPlanToPoint> rpList = coreSafecheckPlanToPointMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToPoint>().eq(CoreSafecheckPlanToPoint::getPlanId, coreSafecheckPlan.getId()));
+                //再处理子计划检查要点关系
+                //查询计划id为当前父计划的id,所属机构id为当前父计划所属机构id的数据
+                List<CoreSafecheckPlanToPoint> rpList = coreSafecheckPlanToPointMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToPoint>().eq(CoreSafecheckPlanToPoint::getPlanId, coreSafecheckPlan.getId()).eq(CoreSafecheckPlanToPoint::getOfOrgId, coreSafecheckPlan.getPlanOfOrgId()));
                 if (rpList != null) {
-                    coreSafecheckPlanToPointMapper.deleteCoreSafecheckPlanToPointByPlanId(p.getId());
+                    coreSafecheckPlanToPointMapper.delete(new LambdaQueryWrapper<CoreSafecheckPlanToPoint>().eq(CoreSafecheckPlanToPoint::getPlanId, p.getId()).eq(CoreSafecheckPlanToPoint::getOfOrgId, coreSafecheckPlan.getPlanOfOrgId()));
                     for (CoreSafecheckPlanToPoint s :
                             rpList) {
-                        coreSafecheckPlanToPointMapper.insert(new CoreSafecheckPlanToPoint(p.getId(), s.getPointId(), s.isPointScan(), s.isRequired()));
+                        coreSafecheckPlanToPointMapper.insert(new CoreSafecheckPlanToPoint(p.getId(), s.getPointId(), s.isPointScan(), s.isRequired(), s.getOfOrgId()));
 
                     }
                 }
+                CoreSafetyTask tem = new CoreSafetyTask();
+                tem.setTitle(coreSafecheckPlan.getPlanName());
+                coreSafetyTaskMapper.update(tem, new LambdaQueryWrapper<CoreSafetyTask>().eq(CoreSafetyTask::getPlanId, p.getId()).in(CoreSafetyTask::getStatus, 1, 2));
+
             }
+            CoreSafetyTask temp = new CoreSafetyTask();
+            temp.setTitle(coreSafecheckPlan.getPlanName());
+            coreSafetyTaskMapper.update(temp, new LambdaQueryWrapper<CoreSafetyTask>().eq(CoreSafetyTask::getPlanId, coreSafecheckPlan.getId()).in(CoreSafetyTask::getStatus, 1, 2));
         }
     }
 
@@ -467,6 +469,20 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
     @Override
     public int deleteCoreSafecheckPlanByIds(Long[] ids) {
         List<Long> list = Arrays.asList((ids));
+        for (Long l :
+                list) {
+            Long num = coreSafetyTaskMapper.selectCount(new LambdaQueryWrapper<CoreSafetyTask>().eq(CoreSafetyTask::getPlanId, l).in(CoreSafetyTask::getStatus, 3, 4));
+            if (num > 0) {
+                throw new RuntimeException("计划有已完成或者已逾期的任务,不能被删除。");
+            }
+            List<CoreSafecheckPlan> plans = baseMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlan>().eq(CoreSafecheckPlan::getParentId, l));
+            for (CoreSafecheckPlan plan : plans) {
+                Long cnum = coreSafetyTaskMapper.selectCount(new LambdaQueryWrapper<CoreSafetyTask>().eq(CoreSafetyTask::getPlanId, plan.getId()).in(CoreSafetyTask::getStatus, 3, 4));
+                if (cnum > 0) {
+                    throw new RuntimeException("子计划有已完成或者已逾期的任务,不能被删除。");
+                }
+            }
+        }
         //清理关联数据
         coreSafecheckPlanToRoleMapper.deleteCoreSafecheckPlanToRoleByPlanIds(ids);
         coreSafecheckPlanToExecOrgMapper.deleteCoreSafecheckPlanToExecOrgByPlanIds(ids);

+ 1 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/vo/ruleItem/SafetyCheckRulePointVo.java

@@ -22,6 +22,7 @@ public class SafetyCheckRulePointVo {
     @ApiModelProperty("检查项id")
     @JsonSerialize(using= ToStringSerializer.class)
     private Long itemId;
+    private Long ofOrgId;
 
     private String itemName;
 

+ 3 - 1
soc-modules/soc-modules-core/src/main/resources/mapper/safetycheck/CoreSafecheckPlanMapper.xml

@@ -68,6 +68,7 @@
             <result column="rule_point_business_type" property="businessType"/>
             <result column="rule_point_point_scan" property="pointScan"/>
             <result column="rule_point_required" property="required"/>
+            <result column="of_org_id" property="ofOrgId"/>
         </collection>
 
     </resultMap>
@@ -159,7 +160,8 @@
                o3.id            AS exec_org_id,
                o3.NAME          AS exec_org_name,
                o4.id            AS check_org_id,
-               o4.NAME          AS check_org_name
+               o4.NAME          AS check_org_name,
+               pp.of_org_id
         FROM core_safecheck_plan c
                  LEFT JOIN sys_org o1 ON c.plan_create_org_id = o1.id
                  LEFT JOIN sys_org o2 ON c.plan_of_org_id = o2.id

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

@@ -154,8 +154,8 @@ public class SysWorkTimeController extends BaseController {
 
     @ApiOperation(value = "查询机构范围内的作息配置")
     @PostMapping("/findWorkTimeByRange")
-    List<SysWorkTime>findWorkTimeByRange(@RequestBody WorkTimeDto workTimeDto) {
-        return sysWorkTimeService.findFutureWorkTime(workTimeDto);
+    R<List<SysWorkTime>> findWorkTimeByRange(@RequestBody WorkTimeDto workTimeDto) {
+        return  R.ok(sysWorkTimeService.findFutureWorkTime(workTimeDto));
     }
     @ApiOperation(value = "检查时间范围内有无作息")
     @InnerAuth

+ 1 - 1
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/listener/WorkTimeChangeEventListener.java

@@ -23,7 +23,7 @@ public class WorkTimeChangeEventListener implements ApplicationListener<WorkTime
 
     @Override
     @EventListener(WorkTimeChangeEvent.class)
-    @TransactionalEventListener(phase = TransactionPhase.AFTER_COMMIT, fallbackExecution = true)
+    @TransactionalEventListener(phase = TransactionPhase.AFTER_COMMIT, fallbackExecution = false)
     public void onApplicationEvent(WorkTimeChangeEvent event) {
 
         remoteResumptionTaskService.rebuild(JSON.toJSONString(event), SecurityConstants.INNER);