Explorar el Código

bugfix:卡务操作-部门查询条件错误;

bing hace 1 año
padre
commit
10e20c4475

+ 5 - 1
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java

@@ -341,9 +341,13 @@ public class SysDeptServiceImpl implements ISysDeptService {
 
     @Override
     public List<Long> selectDeptAndChildrenDeptById(Long deptId) {
+        SysDeptVo sysDeptVo = baseMapper.selectVoById(deptId);
+        if (ObjectUtil.isNull(sysDeptVo)) {
+            return CollUtil.newArrayList(deptId);
+        }
         return baseMapper.selectList(Wrappers.lambdaQuery(SysDept.class)
             .select(SysDept::getDeptId)
-            .eq(SysDept::getParentId, deptId).or().eq(SysDept::getDeptId, deptId)
+            .eq(SysDept::getParentId, deptId).or().eq(SysDept::getDeptId, deptId).or().likeRight(SysDept::getAncestors, sysDeptVo.getAncestors()+","+deptId)
         ).stream().map(SysDept::getDeptId).toList();
     }
 }