From 06513446a0a4a993d17e7bb8085f7bf7dfb4597c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90li?= <15040126243@163.com> Date: Sat, 29 May 2021 19:44:33 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E8=BF=98=E5=8E=9F=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E6=9D=83=E9=99=90=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- .../framework/aspectj/DataScopeAspect.java | 20 ++++++++++++------- .../resources/mapper/system/SysDeptMapper.xml | 4 +--- .../resources/mapper/system/SysRoleMapper.xml | 8 ++------ .../resources/mapper/system/SysUserMapper.xml | 8 ++------ ruoyi-ui/src/views/index.vue | 1 - 6 files changed, 19 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md index 2a58722a..4aab6438 100644 --- a/README.md +++ b/README.md @@ -74,7 +74,7 @@ 关于数据权限 * 参考(用户,角色,部门)列表接口用法 -* 从 bo.getParam().get("dataScope") 即可获取数据权限生成的SQL +* 目前仅支持 XML 方式使用(后续修改为支持MP) 关于vue与boot整合部署 * [前端静态资源如何整合到后端访问](https://doc.ruoyi.vip/ruoyi-vue/other/faq.html#前端静态资源如何整合到后端访问) diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/DataScopeAspect.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/DataScopeAspect.java index 0a766e53..6eec9565 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/DataScopeAspect.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/DataScopeAspect.java @@ -3,6 +3,7 @@ package com.ruoyi.framework.aspectj; import cn.hutool.core.lang.Validator; import cn.hutool.core.util.StrUtil; import com.ruoyi.common.annotation.DataScope; +import com.ruoyi.common.core.domain.BaseEntity; import com.ruoyi.common.core.domain.entity.SysRole; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.model.LoginUser; @@ -145,7 +146,7 @@ public class DataScopeAspect if (StrUtil.isNotBlank(sqlString.toString())) { - putDataScope(joinPoint, sqlString.substring(4)); + putDataScope(joinPoint, "AND (" + sqlString.substring(4) + ")"); } } @@ -181,12 +182,17 @@ public class DataScopeAspect Object params = joinPoint.getArgs()[0]; if (Validator.isNotNull(params)) { - try { - Method getParams = params.getClass().getDeclaredMethod("getParams", null); - Map invoke = (Map) getParams.invoke(params, null); - invoke.put(DATA_SCOPE, sql); - } catch (Exception e) { - // 方法未找到 不处理 + if(params instanceof BaseEntity) { + BaseEntity baseEntity = (BaseEntity) params; + baseEntity.getParams().put(DATA_SCOPE, ""); + } else { + try { + Method getParams = params.getClass().getDeclaredMethod("getParams", null); + Map invoke = (Map) getParams.invoke(params, null); + invoke.put(DATA_SCOPE, sql); + } catch (Exception e) { + // 方法未找到 不处理 + } } } } diff --git a/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml index 21f68541..7db86165 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml @@ -40,9 +40,7 @@ AND status = #{status} - - AND ( ${params.dataScope} ) - + ${params.dataScope} order by d.parent_id, d.order_num diff --git a/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml index 1a542f83..5440f4fb 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml @@ -58,9 +58,7 @@ and date_format(r.create_time,'%y%m%d') <= date_format(#{role.params.endTime},'%y%m%d') - - AND ( ${role.params.dataScope} ) - + ${role.params.dataScope} order by r.role_sort @@ -83,9 +81,7 @@ and date_format(r.create_time,'%y%m%d') <= date_format(#{params.endTime},'%y%m%d') - - AND ( ${params.dataScope} ) - + ${params.dataScope} order by r.role_sort diff --git a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml index df59332b..741600fc 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml @@ -106,9 +106,7 @@ ancestors) )) - - AND ( ${user.params.dataScope} ) - + ${user.params.dataScope}