44323
2024-01-24 9c66102a4fae1922aac72dc153e3e76b5856bae3
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;
    }