From a2b83e708f265bf80e8c448cd4c3ca3dc09216d8 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期三, 24 一月 2024 14:14:18 +0800
Subject: [PATCH] 新增加管理后台数据权限

---
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java |   46 ++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 42 insertions(+), 4 deletions(-)

diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java
index 25083ba..30ee728 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java
@@ -556,8 +556,21 @@
         if (StringUtils.isNotBlank(mgtShopPageDto.getShopTags())) {
             mgtShopPageDto.setShopTags(mgtShopPageDto.getShopTags().replace(",", "|"));
         }
+        List<Long> belongUserIds = null;
+        if(null != mgtShopPageDto.getDeptId()){
+            if(null != mgtShopPageDto.getBelongUserId()){
+                belongUserIds = new ArrayList<>();
+                belongUserIds.add(mgtShopPageDto.getBelongUserId());
+            }else{
+                R<List<SysUser>> r = sysUserService.getUsersByDeptId(mgtShopPageDto.getDeptId());
+                if(r.getCode() != 200){
+                    throw new RuntimeException(r.getMsg());
+                }
+                belongUserIds = r.getData().stream().map(SysUser::getUserId).collect(Collectors.toList());
+            }
+        }
         // 分页查询商铺信息
-        List<MgtShopPageVo> mgtShopPageVoList = shopMapper.pageMgtShop(page, mgtShopPageDto);
+        List<MgtShopPageVo> mgtShopPageVoList = shopMapper.pageMgtShop(page, mgtShopPageDto, belongUserIds);
         // 如果查询结果不为空
         if (!mgtShopPageVoList.isEmpty()) {
             // 创建签约用户ID集合和所属用户ID集合
@@ -1104,8 +1117,8 @@
      * @date 2023/6/18 16:59
      */
     @Override
-    public MgtBulletinBoardVo boardShopTotal(){
-        MgtBulletinBoardVo mgtBulletinBoardVoShop = shopMapper.shopTotal();
+    public MgtBulletinBoardVo boardShopTotal(List<Long> userIds){
+        MgtBulletinBoardVo mgtBulletinBoardVoShop = shopMapper.shopTotal(userIds);
         return mgtBulletinBoardVoShop;
     }
 
@@ -1255,8 +1268,18 @@
                 mgtBasePlatformDto.setUserIdList(userIdList);
             }
         }
+        //数据权限
+        List<Long> userIds = remoteUserService.getScopeOfAuthorityUserId();
+        List<Long> userIdList = mgtBasePlatformDto.getUserIdList();
+        if(null != userIdList){
+            userIdList.addAll(userIds);
+        }else{
+            userIdList = userIds;
+        }
+        mgtBasePlatformDto.setUserIdList(userIdList);
+
         //获取基础统计
-        MgtPlTotalShopTotalVo plTotalShopTotalVo = shopMapper.getPlTotalShopTotal();
+        MgtPlTotalShopTotalVo plTotalShopTotalVo = shopMapper.getPlTotalShopTotal(userIds);
         plTotalShopTotalVo.setSignTotal(0);
         List<Long> shopIdList = shopMapper.listShopIdByTotal(mgtBasePlatformDto);
         if (!shopIdList.isEmpty()) {
@@ -1915,4 +1938,19 @@
     public List<Shop> listShopByCityCode(List<String> cityCodes){
         return shopMapper.listShopByCityCode(cityCodes);
     }
+
+
+    /**
+     * 根据员工id获取对应的门店
+     * @param userIds
+     * @return
+     */
+    @Override
+    public List<Shop> getShopBySysUserIds(List<Long> userIds) {
+        if(userIds.size() == 0){
+            userIds.add(0L);
+        }
+        List<Shop> list = this.list(new QueryWrapper<Shop>().eq("del_flag", 0).ne("shop_status", -1).in("belong_user_id", userIds));
+        return list;
+    }
 }

--
Gitblit v1.7.1