From 9c66102a4fae1922aac72dc153e3e76b5856bae3 Mon Sep 17 00:00:00 2001 From: 44323 <443237572@qq.com> Date: 星期三, 24 一月 2024 15:07:01 +0800 Subject: [PATCH] 数据权限 --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java | 35 +++++++++++++++++++++++++---------- 1 files changed, 25 insertions(+), 10 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java index a3facc5..e556da6 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java @@ -89,8 +89,8 @@ * @return List<MgtDeptStaffListVo> */ @Override - public List<MgtDeptStaffListVo> listMgtDeptStaff(){ - return sysStaffMapper.listMgtDeptStaff(); + public List<MgtDeptStaffListVo> listMgtDeptStaff(Long deptId,Long userId){ + return sysStaffMapper.listMgtDeptStaff(deptId,userId); } /** @@ -102,16 +102,31 @@ */ @Override public List<MgtDeptStaffListVo>listMgtDeptStaffByPermission(Long userId){ - SysUser sysUser = sysUserService.selectUserById(userId); - String dataScope = sysUser.getDataScope(); List<MgtDeptStaffListVo> deptStaffListVoList; - if(dataScope!=null&&dataScope.equals("4")){ - deptStaffListVoList = sysStaffMapper.listMgtDeptStaffByDept(sysUser.getDeptId(),null); - }else if(dataScope!=null&&dataScope.equals("5")){ - deptStaffListVoList = sysStaffMapper.listMgtDeptStaffByDept(sysUser.getDeptId(),sysUser.getUserId()); - }else{ - deptStaffListVoList = sysStaffMapper.listMgtDeptStaff(); + // 获取当前登陆人的可视权限 + SysUser sysUser = sysUserService.selectUserById(userId); + // 如果当前登陆人权限是查看部门数据 + Long deptId = null; + // 如果当前登陆人是查看个人数据 + Long userId1 = null; + if (sysUser!=null){ + String dataScope = sysUser.getDataScope(); + if (!sysUser.getUserName().equals("admin")){ + if (org.springframework.util.StringUtils.hasLength(dataScope)){ + switch (dataScope){ + case "3": + // 本部门数据 查询当前登陆人属于哪个部门 查询这个部门下所有员工关联的所有店铺 + deptId = sysUser.getDeptId(); + break; + case "5": + // 仅个人数据 查询当前登陆人关联店铺下的用户 + userId1 = sysUser.getUserId(); + break; + } + } + } } + deptStaffListVoList = sysStaffMapper.listMgtDeptStaff(deptId,userId1); return deptStaffListVoList; } -- Gitblit v1.7.1