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

培训/演练:下发任务时过滤机构Path为空的机构

jingyuanchao 1 жил өмнө
parent
commit
67a8d7b634

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

@@ -838,6 +838,7 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
             planRoleList = coreDrillPlanToRoleMapper.selectList(ros);
         }*/
         List<SysOrgVO> all = RedisUtils.getCacheList(CacheConstants.ORG_CACHE_LIST_KEY);
+        all = all.stream().filter(o -> ObjectUtil.isNotEmpty(o.getPath())).collect(Collectors.toList());
         final SysOrgVO planCreateOrg = all.stream().filter(org -> org.getId().equals(plan.getCreateOrgId())).findFirst().get();
         final long count = all.stream()
                 .filter(org -> ObjectUtil.isNotEmpty(org.getPath()))

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

@@ -780,6 +780,7 @@ public class CoreEduTrainingPlanServiceImpl extends ServiceImpl<CoreEduTrainingP
             planRoleList = coreEduTrainingPlanToRoleMapper.selectList(ros);
         }*/
         List<SysOrgVO> all = RedisUtils.getCacheList(CacheConstants.ORG_CACHE_LIST_KEY);
+        all = all.stream().filter(o -> ObjectUtil.isNotEmpty(o.getPath())).collect(Collectors.toList());
         final SysOrgVO planCreateOrg = all.stream().filter(org -> org.getId().equals(plan.getCreateOrgId())).findFirst().get();
         final long count = all.stream()
                 .filter(org -> ObjectUtil.isNotEmpty(org.getPath()))

+ 16 - 2
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/service/impl/SysOrgServiceImpl.java

@@ -660,11 +660,24 @@ public class SysOrgServiceImpl extends ServiceImpl<SysOrgMapper, SysOrg> impleme
     public List<SysOrg> selectParentHs(List<Long> orgList) {
 
 
-        final List<SysOrg> sysOrgList = sysOrgMapper.selectList(new LambdaQueryWrapper<SysOrg>()
+        List<SysOrg> sysOrgList = sysOrgMapper.selectList(new LambdaQueryWrapper<SysOrg>()
                 .in(SysOrg::getId, orgList)
                 .select(SysOrg::getPath));
+/*        List<Long> orgIdList = new ArrayList<>();
+        for (SysOrg sysOrg : sysOrgList) {
+            if (ObjectUtil.isNull(sysOrg) || ObjectUtil.isEmpty(sysOrg.getPath())) {
+                continue;
+            }
+            final String path = sysOrg.getPath();
+            final String[] split = path.split("-");
+            for (String orgId : split) {
+                orgIdList.add(Long.parseLong(orgId));
+            }
+        }*/
         final List<Long> orgIdList = sysOrgList.stream()
                 .map(SysOrg::getPath)
+                .filter(ObjectUtil::isNotEmpty)
+                .filter(ObjectUtil::isNotNull)
                 .map(path -> path.split("-"))
                 .map(Arrays::asList)
                 .flatMap(Collection::stream)
@@ -681,11 +694,12 @@ public class SysOrgServiceImpl extends ServiceImpl<SysOrgMapper, SysOrg> impleme
     public List<SysOrg> selectChildHs(Long orgId) {
         final SysOrg sysOrg = getById(orgId);
         final String path = sysOrg.getPath();
-        return sysOrgMapper.selectList(new LambdaQueryWrapper<SysOrg>()
+        final List<SysOrg> orgList = sysOrgMapper.selectList(new LambdaQueryWrapper<SysOrg>()
                 .eq(SysOrg::getType, 3)
                 .eq(SysOrg::getIsLock, 0)
                 .likeRight(SysOrg::getPath, path)
                 .eq(SysOrg::getDeleted, 0));
+        return orgList.stream().filter(org -> ObjectUtil.isNotEmpty(org.getPath())).collect(Collectors.toList());
     }
 
     @Override