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 |   91 ++++++++++++++++++++++++++++++++-------------
 1 files changed, 64 insertions(+), 27 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 f8993e9..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集合
@@ -599,8 +612,9 @@
                     shopPageVo.setSignUser(signUserMap.get(shopPageVo.getSignUserId()).getNickName());
                 }
                 if (belongUserMap!=null&&!belongUserMap.isEmpty()&&shopPageVo.getBelongUserId() != null) {
-                    shopPageVo.setBelongUser(belongUserMap.get(shopPageVo.getBelongUserId()).getNickName());
-                    shopPageVo.setBelongDept(belongUserMap.get(shopPageVo.getBelongUserId()).getDeptName());
+                    MgtSysSimpleUserVo mgtSysSimpleUserVo = belongUserMap.get(shopPageVo.getBelongUserId());
+                    shopPageVo.setBelongUser(null == mgtSysSimpleUserVo ? "" : mgtSysSimpleUserVo.getNickName());
+                    shopPageVo.setBelongDept(null == mgtSysSimpleUserVo ? "" : mgtSysSimpleUserVo.getDeptName());
                 }
             }
         }
@@ -905,21 +919,9 @@
             }
         }
 
-
-
         //分别查询
-        StaffHomeShopTotalVo staffHomeShopTotalVo = new StaffHomeShopTotalVo();
-        if(userIds!=null&&!userIds.isEmpty()){
-            staffHomeShopTotalVo = shopMapper.getStaffHomeTotal(userIds);
-        }else{
-            staffHomeShopTotalVo.setShopTotal(0);
-            staffHomeShopTotalVo.setAgencyTotal(0);
-            staffHomeShopTotalVo.setDealerTotal(0);
-        }
-        Integer shopTaskCount = 0;
-        if(shopIds!=null&&!shopIds.isEmpty()){
-            shopTaskCount = shopTaskService.getShopIngTotal(shopIds);
-        }
+        StaffHomeShopTotalVo staffHomeShopTotalVo = shopMapper.getStaffHomeTotal(userIds);
+        Integer shopTaskCount = shopTaskService.getShopIngTotal(shopIds);
         staffHomeShopTotalVo.setFollowMember(0);
         staffHomeShopTotalVo.setNewMember(0);
         staffHomeShopTotalVo.setShopTask(shopTaskCount);
@@ -1115,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;
     }
 
@@ -1172,15 +1174,12 @@
             shopAuthenticationHftx = new ShopAuthenticationHftx();
             shopAuthenticationHftx.setIsDelete(0);
             shopAuthenticationHftx.setInsertTime(new Date());
-            shopAuthenticationHftx.setAuditStatus("U");
         }
         String auditStatus = shopAuthenticationHftx.getAuditStatus();
         BeanUtils.copyProperties(mgtShopHFTXAuthDto, shopAuthenticationHftx);
         shopAuthenticationHftx.setReqSeqId(IdUtils.simpleUUID());
-        if(Arrays.asList("N", "F").contains(shopAuthenticationHftx.getAuditStatus())){
-            shopAuthenticationHftx.setAuditStatus("");
-            shopAuthenticationHftx.setAuditDesc("");
-        }
+        shopAuthenticationHftx.setAuditStatus("");
+        shopAuthenticationHftx.setAuditDesc("");
         /**
          * 开始调起进件接口
          */
@@ -1269,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()) {
@@ -1517,12 +1526,11 @@
             userIdList.add(userId);
         }
 
-
         StaffShopSimpleTotalVo shopTotal = shopMapper.getStaffSimpleTotal(1,userIdList);
         StaffShopSimpleTotalVo agencyTotal = shopMapper.getStaffSimpleTotal(2,userIdList);
         shopTotal.setAgencyTotal(agencyTotal.getShopTotal());
         shopTotal.setOpenAgencyTotal(agencyTotal.getOpenShopTotal());
-        shopTotal.setCloseAgencyTotal(agencyTotal.getCloseAgencyTotal());
+        shopTotal.setCloseAgencyTotal(agencyTotal.getCloseShopTotal());
         return shopTotal;
     }
 
@@ -1916,4 +1924,33 @@
         Integer pageSize = merchantBasicdataSettlementDto.getPageSize();
         return HuiFuTianXiaUtil.getMerchantBasicdataSettlement(IdUtils.simpleUUID(), huifuId, startTime, endTime, pageNum.toString(), pageSize.toString());
     }
+
+
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/8/10 22:53
+     * @param cityCodes
+     * @return  List<Long>
+     */
+    @Override
+    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