diff --git a/flyfish-data/src/main/java/com/flyfish/framework/domain/authorized/AbstractAuthorizedQo.java b/flyfish-data/src/main/java/com/flyfish/framework/domain/authorized/AbstractAuthorizedQo.java index babe4f5..e6d785c 100644 --- a/flyfish-data/src/main/java/com/flyfish/framework/domain/authorized/AbstractAuthorizedQo.java +++ b/flyfish-data/src/main/java/com/flyfish/framework/domain/authorized/AbstractAuthorizedQo.java @@ -49,8 +49,10 @@ public abstract class AbstractAuthorizedQo extends N Criteria.where("published").is(false) ) ); + } else { + // 未指定发布状态,查询已发布内容 + return Criteria.where("published").is(true); } - return null; } } diff --git a/flyfish-user/src/main/java/com/flyfish/framework/service/DepartmentService.java b/flyfish-user/src/main/java/com/flyfish/framework/service/DepartmentService.java index 1f6f3df..e9de4b2 100644 --- a/flyfish-user/src/main/java/com/flyfish/framework/service/DepartmentService.java +++ b/flyfish-user/src/main/java/com/flyfish/framework/service/DepartmentService.java @@ -20,7 +20,10 @@ import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; import javax.annotation.Resource; -import java.util.*; +import java.util.Collection; +import java.util.Collections; +import java.util.HashSet; +import java.util.Set; import java.util.stream.Collectors; import static org.apache.commons.lang3.ObjectUtils.defaultIfNull; @@ -90,10 +93,11 @@ public class DepartmentService extends BaseReactiveServiceImpl { Mono> mono = Mono.just(qo); // 使用列表内的部门作为条件 AdminUserDetails userDetails = (AdminUserDetails) query.getUser(); + // 是否设置过 + qo.setIds(userDetails.getVisibleDeparts()); // 查询根节点下的节点 if (Department.ROOT.equals(qo.getParentId())) { qo.setParentId(null); - qo.setIds(userDetails.getVisibleDeparts()); // 不递归,指定深度,保证单层 if (BooleanUtils.isNotTrue(qo.getRecursive())) { // 指定深度,从可见的列表中获取 @@ -104,17 +108,13 @@ public class DepartmentService extends BaseReactiveServiceImpl { }); } } - // 父id均为空,返回所有可见部门即可 - if (null == qo.getParentId() && CollectionUtils.isEmpty(qo.getParentIds())) { - qo.setIds(userDetails.getVisibleDeparts()); - } // 如果存在额外的id,追加记录 if (StringUtils.isNotBlank(qo.getAdditional())) { Collection ids = defaultIfNull(qo.getIds(), new HashSet<>()); ids.add(qo.getAdditional()); qo.setIds(ids); } - // qo中ids为空,返回无效查询 + // 如果设置过ids,但是qo中ids为空,返回无效查询 if (CollectionUtils.isEmpty(qo.getIds())) { qo.setIds(Collections.singleton("null")); }