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-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java | 32 +++++++++++++++++++++++++++++++- 1 files changed, 31 insertions(+), 1 deletions(-) diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java index 21f0c1f..62a2f96 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java @@ -903,6 +903,7 @@ */ @Override public List<MgtMemberPageVo> pageMgtMember(Page page, MgtMemberPageDto merMemberPageDto) { + List<Activeness> activenessList = remoteConfigService.listActiveness().getData(); Date nowDay = new Date(); if (merMemberPageDto.getActivenessId() != null) { @@ -932,8 +933,37 @@ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); merMemberPageDto.setStartBirthday(startBirthday.format(formatter)); } + // 获取当前登陆人的可视权限 + SysUser sysUser = SecurityUtils.getSysUser(); + // 店铺ids + List<Long> scope = new ArrayList<>(); + if (sysUser!=null){ + String dataScope = sysUser.getDataScope(); + if (!sysUser.getUserName().equals("admin")){ + if (org.springframework.util.StringUtils.hasLength(dataScope)){ + switch (dataScope){ + case "3": + // 本部门数据 查询当前登陆人属于哪个部门 查询这个部门下所有员工关联的所有店铺 + // 根据用户id 查询同部门下所有员工id + List<Long> userIds = sysUserService.getUserIdsByDept(sysUser.getUserId()).getData(); + // 获取店铺ids + List<Long> data = shopService.getShopIdsByUserIds(userIds).getData(); + scope.addAll(data); + break; + case "5": + // 仅个人数据 查询当前登陆人关联店铺下的用户 + List<Long> longs = new ArrayList<>(); + longs.add(sysUser.getUserId()); + // 获取店铺ids + List<Long> data1 = shopService.getShopIdsByUserIds(longs).getData(); + scope.addAll(data1); + break; + } + } + } + } //查询获取结果列表 - List<MgtMemberPageVo> memberPageVoList = memberMapper.pageMgtMember(page, merMemberPageDto); + List<MgtMemberPageVo> memberPageVoList = memberMapper.pageMgtMember(page, merMemberPageDto,scope); //处理活跃度返回 if (memberPageVoList != null && !memberPageVoList.isEmpty()) { if (activenessList != null && !activenessList.isEmpty()) { -- Gitblit v1.7.1