From a181c0978697e56d26b623487fafa9602b911717 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, 8 May 2021 23:35:39 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E6=9D=83=E9=99=90=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../framework/aspectj/DataScopeAspect.java | 13 +++++++---- .../ruoyi/system/mapper/SysDeptMapper.java | 8 +++++++ .../ruoyi/system/mapper/SysRoleMapper.java | 7 ++++++ .../service/impl/SysDeptServiceImpl.java | 10 +------- .../service/impl/SysRoleServiceImpl.java | 15 +----------- .../resources/mapper/system/SysDeptMapper.xml | 22 ++++++++++++++++++ .../resources/mapper/system/SysRoleMapper.xml | 23 +++++++++++++++++++ 7 files changed, 71 insertions(+), 27 deletions(-) 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 ffd47181..4d2f9bbd 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,7 +3,6 @@ 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; @@ -19,6 +18,7 @@ import org.aspectj.lang.reflect.MethodSignature; import org.springframework.stereotype.Component; import java.lang.reflect.Method; +import java.util.Map; /** * 数据过滤处理 @@ -145,10 +145,15 @@ public class DataScopeAspect if (StrUtil.isNotBlank(sqlString.toString())) { Object params = joinPoint.getArgs()[0]; - if (Validator.isNotNull(params) && params instanceof BaseEntity) + if (Validator.isNotNull(params)) { - BaseEntity baseEntity = (BaseEntity) params; - baseEntity.getParams().put(DATA_SCOPE, " AND (" + sqlString.substring(4) + ")"); + try { + Method getParams = params.getClass().getDeclaredMethod("getParams", null); + Map invoke = (Map) getParams.invoke(params, null); + invoke.put(DATA_SCOPE, " AND (" + sqlString.substring(4) + ")"); + } catch (Exception e) { + e.printStackTrace(); + } } } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java index c2619d31..b59afae0 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java @@ -13,6 +13,14 @@ import java.util.List; */ public interface SysDeptMapper extends BaseMapper { + /** + * 查询部门管理数据 + * + * @param dept 部门信息 + * @return 部门信息集合 + */ + public List selectDeptList(SysDept dept); + /** * 根据角色ID查询部门树信息 * diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMapper.java index 1ed48b6a..6bd05a10 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMapper.java @@ -12,6 +12,13 @@ import java.util.List; */ public interface SysRoleMapper extends BaseMapper { + /** + * 根据条件分页查询角色数据 + * + * @param role 角色信息 + * @return 角色数据集合信息 + */ + public List selectRoleList(SysRole role); /** * 根据用户ID查询角色 diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java index 98616e8d..f25a90dd 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java @@ -48,15 +48,7 @@ public class SysDeptServiceImpl extends ServiceImpl impl @Override @DataScope(deptAlias = "d") public List selectDeptList(SysDept dept) { - Object dataScope = dept.getParams().get("dataScope"); - return list(new LambdaQueryWrapper() - .eq(dept.getParentId() != null && dept.getParentId() != 0, - SysDept::getParentId, dept.getParentId()) - .like(StrUtil.isNotBlank(dept.getDeptName()), SysDept::getDeptName, dept.getDeptName()) - .eq(StrUtil.isNotBlank(dept.getStatus()), SysDept::getStatus, dept.getStatus()) - .apply(dataScope != null, dataScope != null ? dataScope.toString() : null) - .orderByAsc(SysDept::getParentId) - .orderByAsc(SysDept::getOrderNum)); + return baseMapper.selectDeptList(dept); } /** diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java index 2673c810..814d96ff 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java @@ -49,20 +49,7 @@ public class SysRoleServiceImpl extends ServiceImpl impl @Override @DataScope(deptAlias = "d") public List selectRoleList(SysRole role) { - Map params = role.getParams(); - Object dataScope = params.get("dataScope"); - return list(new LambdaQueryWrapper() - .like(StrUtil.isNotBlank(role.getRoleName()), SysRole::getRoleName, role.getRoleName()) - .eq(StrUtil.isNotBlank(role.getStatus()), SysRole::getStatus, role.getStatus()) - .like(StrUtil.isNotBlank(role.getRoleKey()), SysRole::getRoleKey, role.getRoleKey()) - .apply(Validator.isNotEmpty(params.get("beginTime")), - "date_format(create_time,'%y%m%d') >= date_format({0},'%y%m%d')", - params.get("beginTime")) - .apply(Validator.isNotEmpty(params.get("endTime")), - "date_format(create_time,'%y%m%d') <= date_format({0},'%y%m%d')", - params.get("endTime")) - .apply(dataScope != null, dataScope != null ? dataScope.toString() : null) - .orderByAsc(SysRole::getRoleSort)); + return baseMapper.selectRoleList(role); } /** diff --git a/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml index 07fc5d62..0f996710 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml @@ -22,6 +22,28 @@ + + select d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.phone, d.email, d.status, d.del_flag, d.create_by, d.create_time + from sys_dept d + + + + + + where r.del_flag = '0' + + AND r.role_name like concat('%', #{roleName}, '%') + + + AND r.status = #{status} + + + AND r.role_key like concat('%', #{roleKey}, '%') + + + and date_format(r.create_time,'%y%m%d') >= date_format(#{params.beginTime},'%y%m%d') + + + and date_format(r.create_time,'%y%m%d') <= date_format(#{params.endTime},'%y%m%d') + + + ${params.dataScope} + order by r.role_sort + +