From f7e3cad931a4bf4f18233405acc4dda61a6190d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Mon, 27 Apr 2026 09:32:36 +0800 Subject: [PATCH] =?UTF-8?q?feat(system):=20=E6=94=AF=E6=8C=81=E5=88=86?= =?UTF-8?q?=E9=A1=B5=E6=9F=A5=E8=AF=A2=E7=A7=9F=E6=88=B7=E6=97=B6=E6=A0=B9?= =?UTF-8?q?=E6=8D=AEall=E5=8F=82=E6=95=B0=E6=8E=A7=E5=88=B6=E8=8C=83?= =?UTF-8?q?=E5=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增TenantParam中的all字段用于控制是否查询全部租户 - page接口根据all参数判断是否自动设置当前登录用户userId作为过滤条件 - 保持mask参数逻辑不变,支持脱敏控制 - 改进分页查询功能,增强查询灵活性和权限控制 --- .../common/system/controller/TenantController.java | 9 +++++++++ .../com/gxwebsoft/common/system/param/TenantParam.java | 6 +++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/gxwebsoft/common/system/controller/TenantController.java b/src/main/java/com/gxwebsoft/common/system/controller/TenantController.java index b5fc3b2..957ffac 100644 --- a/src/main/java/com/gxwebsoft/common/system/controller/TenantController.java +++ b/src/main/java/com/gxwebsoft/common/system/controller/TenantController.java @@ -53,6 +53,15 @@ public class TenantController extends BaseController { @Operation(summary = "分页查询租户") @GetMapping("/page") public ApiResult> page(TenantParam param) { + // 如果传了 all=true,查询全部租户;否则自动用当前登录用户的 userId + if (param.getAll() == null || !param.getAll()) { + if (param.getUserId() == null) { + final User loginUser = getLoginUser(); + if (loginUser != null && loginUser.getUserId() != null) { + param.setUserId(loginUser.getUserId()); + } + } + } PageResult result = tenantService.pageRel(param); // 如果传入 mask=false,设置不脱敏 if (param.getMask() != null && !param.getMask()) { diff --git a/src/main/java/com/gxwebsoft/common/system/param/TenantParam.java b/src/main/java/com/gxwebsoft/common/system/param/TenantParam.java index f843526..cb3b83a 100644 --- a/src/main/java/com/gxwebsoft/common/system/param/TenantParam.java +++ b/src/main/java/com/gxwebsoft/common/system/param/TenantParam.java @@ -1,13 +1,10 @@ package com.gxwebsoft.common.system.param; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; import com.fasterxml.jackson.annotation.JsonInclude; import com.gxwebsoft.common.core.annotation.QueryField; import com.gxwebsoft.common.core.annotation.QueryType; import com.gxwebsoft.common.core.web.BaseParam; import io.swagger.v3.oas.annotations.media.Schema; -import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; @@ -56,4 +53,7 @@ public class TenantParam extends BaseParam { @QueryField(type = QueryType.EQ) private Boolean mask; + @Schema(description = "查询全部租户,true时忽略userId条件") + private Boolean all; + }