浏览代码

修改公告通知bug

ouyang 2 年之前
父节点
当前提交
94fdc85012

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

@@ -243,12 +243,18 @@ public class CoreMonitoringRetrievalTaskServiceImpl extends ServiceImpl<CoreMoni
             //获取计划关联的机构
             List<SysOrg> listByType = orgList.stream().filter(r -> r.getId().equals(plan.getOrgId()) && r.getDeleted() == 0 && r.getIsLock().equals(0)).collect(Collectors.toList());
             if (CollectionUtil.isNotEmpty(listByType)) {
+                //最后参数1标识立即生效0表示按周期生成任务
                 List<CoreMonitoringRetrievalTask> list = this.buildCoreMonitoringRetrievalTask(plan, taskTime, listByType.get(0));
                 if (CollectionUtil.isNotEmpty(list)) {
                     taskList.addAll(list);
                 }
             }
         }
+        //立即生效的计划要排除截至时间在当前时间之前的数据
+        List<CoreMonitoringRetrievalTask> lista = taskList.stream().filter(r -> r.getPlanEndTime().after(new Date())).collect(Collectors.toList());
+        if(CollectionUtil.isNotEmpty(lista)){
+            taskList.addAll(lista);
+        }
         this.saveBatch(taskList);
     }
 
@@ -443,10 +449,11 @@ public class CoreMonitoringRetrievalTaskServiceImpl extends ServiceImpl<CoreMoni
         List<TMonitoringRetrievalPlan> plans = itMonitoringRetrievalPlanService.list(queryWrapper);
         List<TMonitoringRetrievalPlan> planList = new ArrayList<>(16);
         for (TMonitoringRetrievalPlan p : plans) {
-            SysOrg sysOrg = new SysOrg();
+           /* SysOrg sysOrg = new SysOrg();
             sysOrg.setPath(p.getOrgPath());
             sysOrg.setType(Integer.valueOf(p.getOrgType()));
-            List<SysOrg> sysOrgs = remoteOrgService.listByParentIdAndType(sysOrg, SecurityConstants.INNER);
+            List<SysOrg> sysOrgs = remoteOrgService.listByParentIdAndType(sysOrg, SecurityConstants.INNER);*/
+            List<SysOrg> sysOrgs = orgList.stream().filter(s -> s.getPath().contains(p.getOrgPath()) && s.getOrgType().equals(p.getOrgType())).collect(Collectors.toList());
             for (SysOrg s : sysOrgs) {
                 TMonitoringRetrievalPlan plan = new TMonitoringRetrievalPlan();
                 BeanUtils.copyProperties(p, plan);
@@ -526,7 +533,7 @@ public class CoreMonitoringRetrievalTaskServiceImpl extends ServiceImpl<CoreMoni
                 taskList.add(task);
             }
         }
-
+         //
         return taskList;
 
     }