From 3a12bbdaab43d249887683223191e57f1092d377 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期二, 23 一月 2024 10:56:16 +0800
Subject: [PATCH] 新增加管理后台数据权限

---
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java |  171 ++++++++++++++++----------------------------------------
 1 files changed, 49 insertions(+), 122 deletions(-)

diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
index 9a9745d..4d01b96 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
@@ -1829,53 +1829,6 @@
                     throw new ServiceException(AppErrorConstant.SHOP_NO_ACTIVITY);
                 }
             }
-            //未绑定用户需判断核销商城订单判断商品单价和优惠券
-            /*StringJoiner goodsIdSJ = new StringJoiner(",");
-            for (AppUserOrderGoodsPageVo appUserOrderGoodsPageVo : appUserOrderGoodsPageVoList) {
-                goodsIdSJ.add(appUserOrderGoodsPageVo.getGoodsId());
-            }
-            //获取商品列表
-            List<Goods> goodsList = remoteGoodsService.listGoodsByGoodsId(goodsIdSJ.toString()).getData();
-            Map<String, Goods> goodsMap = goodsList.stream()
-                    .collect(Collectors.toMap(Goods::getGoodsId, Function.identity()));
-            Goods goods;
-            ShopGoods shopGoods;
-            AppShopGoodsGetDto appShopGoodsGetDto;
-            for (AppUserOrderGoodsPageVo appUserOrderGoodsPageVo : appUserOrderGoodsPageVoList) {
-                appShopGoodsGetDto= new AppShopGoodsGetDto();
-                appShopGoodsGetDto.setShopId(shopId);
-                appShopGoodsGetDto.setGoodsId(appUserOrderGoodsPageVo.getGoodsId());
-                shopGoods = remoteGoodsService.getShopGoods(appShopGoodsGetDto).getData();
-                goods = goodsMap.get(appUserOrderGoodsPageVo.getGoodsId());
-                //当商户定制价格不为空时判断商品定制价格否则判断商品价格是否一致
-                if(shopGoods!=null){
-                    if(shopGoods.getSalesPrice().compareTo(appUserOrderGoodsPageVo.getGoodsPrice())!=0){
-                        throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR);
-                    }
-                    if(appUserOrderGoodsPageVo.getCycleNumFlag()==0){
-                        if(shopGoods.getServiceNum()!=null){
-                            throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR);
-                        }
-                    }else{
-                        if(shopGoods.getServiceNum()!=appUserOrderGoodsPageVo.getServiceNum()){
-                            throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR);
-                        }
-                    }
-                }else{
-                    if(goods.getSalesPrice().compareTo(appUserOrderGoodsPageVo.getGoodsPrice())!=0){
-                        throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR);
-                    }
-                    if(appUserOrderGoodsPageVo.getCycleNumFlag()==0){
-                        if(goods.getServiceNum()!=null){
-                            throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR);
-                        }
-                    }else{
-                        if(goods.getServiceNum()!=appUserOrderGoodsPageVo.getServiceNum()){
-                            throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR);
-                        }
-                    }
-                }
-            }*/
         }
         order.setShopId(shopId);
         order.setOrderStatus(3);
@@ -2666,10 +2619,6 @@
         OrderGoods orderGoods;
         String orderGoodsId;
         GoodsFile goodsFile;
-        //BigDecimal cycleMoney = new BigDecimal("0.00");
-        //BigDecimal experienceMoney = new BigDecimal("0.00");
-        //BigDecimal serviceMoney = new BigDecimal("0.00");
-        //BigDecimal goodsMoney = new BigDecimal("0.00");
         List<OrderGoods> orderGoodsList = new ArrayList<>();
         ConsumerGoods consumerGoods;
         String consumerGoodsId;
@@ -2810,24 +2759,6 @@
                     consumerGoodsList.add(consumerGoods);
                 }
             }
-
-            //商户变更计算
-            /*switch (orderGoods.getGoodsType()) {
-                case 1:
-                    cycleMoney = cycleMoney.add(orderGoods.getGoodsReceivableMoney());
-                    break;
-                case 2:
-                    serviceMoney = serviceMoney.add(orderGoods.getGoodsReceivableMoney());
-                    break;
-                case 3:
-                    experienceMoney = experienceMoney.add(orderGoods.getGoodsReceivableMoney());
-                    break;
-                case 4:
-                    goodsMoney = goodsMoney.add(orderGoods.getGoodsReceivableMoney());
-                    break;
-                default:
-                    break;
-            }*/
         }
         //创建订单
         Order order = new Order();
@@ -2894,15 +2825,6 @@
         memberTotalChangeDto.setUserId(order.getUserId());
         memberTotalChangeDto.setConsumeTime(nowTime);
         remoteMemberService.changeMemberTotal(memberTotalChangeDto);
-        //更新商户统计
-        /*ShopTotalChangeDto shopTotalChangeDto = new ShopTotalChangeDto();
-        shopTotalChangeDto.setShopId(order.getShopId());
-        shopTotalChangeDto.setOrderType(1);
-        shopTotalChangeDto.setCycleMoney(cycleMoney);
-        shopTotalChangeDto.setServiceMoney(serviceMoney);
-        shopTotalChangeDto.setExperienceMoney(experienceMoney);
-        shopTotalChangeDto.setGoodsMoney(goodsMoney);
-        remoteShopService.changeShopTotal(shopTotalChangeDto);*/
         //创建支付记录
         PayRecord payRecord = new PayRecord();
         payRecord.setDelFlag(0);
@@ -3107,6 +3029,22 @@
                 mgtShopOrderPageDto.setUserIds(mgtUserIdByKeywordVo.getUserIds());
             }
         }
+        //数据权限
+        List<Long> userId = remoteUserService.getScopeOfAuthorityUserId();
+        List<Shop> shops = remoteShopService.getShopBySysUserIds(userId);
+        if (!shops.isEmpty()) {
+            List<Long> collect = shops.stream().map(Shop::getShopId).collect(Collectors.toList());
+            String join = collect.stream().map(Object::toString).collect(Collectors.joining(","));
+            String shopIds = mgtShopOrderPageDto.getShopIds();
+            if(StringUtils.isNotEmpty(shopIds)){
+                shopIds = shopIds + "," + join;
+            }else{
+                shopIds = join;
+            }
+            mgtShopOrderPageDto.setShopIds(shopIds);
+        }
+
+
         // 从数据库中获取活动订单列表
         List<MgtActivityOrderPageVo> activityOrderPageVoList = orderMapper.pageMgtActivityOrder(page, mgtShopOrderPageDto);
         // 如果列表不为空
@@ -3186,6 +3124,20 @@
                 mgtShopOrderPageDto.setUserIds(mgtUserIdByKeywordVo.getUserIds());
             }
         }
+        //数据权限
+        List<Long> userId = remoteUserService.getScopeOfAuthorityUserId();
+        List<Shop> shops = remoteShopService.getShopBySysUserIds(userId);
+        if (!shops.isEmpty()) {
+            List<Long> collect = shops.stream().map(Shop::getShopId).collect(Collectors.toList());
+            String join = collect.stream().map(Object::toString).collect(Collectors.joining(","));
+            String shopIds = mgtShopOrderPageDto.getShopIds();
+            if(StringUtils.isNotEmpty(shopIds)){
+                shopIds = shopIds + "," + join;
+            }else{
+                shopIds = join;
+            }
+            mgtShopOrderPageDto.setShopIds(shopIds);
+        }
         MgtOrderTotal mgtOrderTotal = new MgtOrderTotal();
         MgtOrderTotal mgtOrderTotalFirst = orderMapper.totalOrderFirst(mgtShopOrderPageDto);
         MgtOrderTotal mgtOrderTotalSecond = orderMapper.totalOrderSecond(mgtShopOrderPageDto);
@@ -3232,6 +3184,20 @@
             if (StringUtils.isNotBlank(mgtUserIdByKeywordVo.getUserIds())) {
                 mgtShopOrderPageDto.setUserIds(mgtUserIdByKeywordVo.getUserIds());
             }
+        }
+        //数据权限
+        List<Long> userId = remoteUserService.getScopeOfAuthorityUserId();
+        List<Shop> shops = remoteShopService.getShopBySysUserIds(userId);
+        if (!shops.isEmpty()) {
+            List<Long> collect = shops.stream().map(Shop::getShopId).collect(Collectors.toList());
+            String join = collect.stream().map(Object::toString).collect(Collectors.joining(","));
+            String shopIds = mgtShopOrderPageDto.getShopIds();
+            if(StringUtils.isNotEmpty(shopIds)){
+                shopIds = shopIds + "," + join;
+            }else{
+                shopIds = join;
+            }
+            mgtShopOrderPageDto.setShopIds(shopIds);
         }
         List<MgtShopOrderPageVo> shopOrderPageVoList = orderMapper.pageMgtShopOrder(page, mgtShopOrderPageDto);
         // 如果列表不为空
@@ -3393,9 +3359,11 @@
      * @date 2023/6/18 17:20
      */
     @Override
-    public MgtBulletinBoardVo boardOrderTotal() {
-        MgtBulletinBoardVo mgtBulletinBoardVo = orderMapper.boardOrderTotal();
-        Integer activityUserTotal = orderMapper.activityUserTotal();
+    public MgtBulletinBoardVo boardOrderTotal(List<Long> userIds) {
+        List<Shop> shopList = remoteShopService.getShopBySysUserIds(userIds);
+        List<Long> collect = shopList.stream().map(Shop::getShopId).collect(Collectors.toList());
+        MgtBulletinBoardVo mgtBulletinBoardVo = orderMapper.boardOrderTotal(collect);
+        Integer activityUserTotal = orderMapper.activityUserTotal(collect);
         mgtBulletinBoardVo.setActivityUserTotal(activityUserTotal);
         return mgtBulletinBoardVo;
     }
@@ -5259,7 +5227,6 @@
     @GlobalTransactional(rollbackFor = Exception.class)
     public void payBack(PartnerTransactionsResult transaction, BigDecimal feeAmount) {
         log.info("订单支付回调---"+transaction.toString());
-        // Order order = this.getById(orderId);
         // 更新订单状态 outTradeNo
         String outTradeNo = transaction.getOutTradeNo();
         Order order = this.getByOutTradeNo(outTradeNo);
@@ -5317,31 +5284,9 @@
         }
         //更新商品统计
         remoteGoodsService.changeGoodsTotal(goodsTotalChangeDtoList);
-        // 更新商户统计信息
-        /*ShopTotalChangeDto shopTotalChangeDto = new ShopTotalChangeDto();
-        shopTotalChangeDto.setShopId(order.getShopId());
-        shopTotalChangeDto.setOrderType(1);
-        shopTotalChangeDto.setCycleMoney(cycleMoney);
-        shopTotalChangeDto.setServiceMoney(serviceMoney);
-        shopTotalChangeDto.setExperienceMoney(experienceMoney);
-        shopTotalChangeDto.setGoodsMoney(goodsMoney);
-        remoteShopService.changeShopTotal(shopTotalChangeDto);*/
         // 初始化会员统计信息
         MemberTotalChangeDto memberTotalChangeDto = new MemberTotalChangeDto();
         memberTotalChangeDto.setUserId(order.getUserId());
-        // 如果存在积分兑换比例,则计算积分 2023-09-14改为核销后获取积分
-        /*if (redisService.hasKey(SecurityConstant.PAY_MONEY_INTEGRAL)) {
-            Integer moneyValue = redisService.getCacheObject(SecurityConstant.PAY_MONEY_INTEGRAL);
-            BigDecimal moneyValueBig = BigDecimal.valueOf(moneyValue);
-            BigDecimal integralBig = moneyValueBig.multiply(order.getPayMoney()).setScale(0,BigDecimal.ROUND_HALF_UP);
-            Integer integral = Integer.valueOf(integralBig.toString());
-            if(integral>0){
-                memberTotalChangeDto.setChangeIntegral(integral);
-                memberTotalChangeDto.setTypeIntegral(1);
-                memberTotalChangeDto.setOrderId(orderId);
-                memberTotalChangeDto.setOrderNo(order.getOrderNo());
-            }
-        }*/
         // 设置会员支付金额和支付时间
         memberTotalChangeDto.setPayMoney(order.getPayMoney());
         memberTotalChangeDto.setPayTime(new Date());
@@ -5531,27 +5476,9 @@
                 remoteCouponService.backMemberCoupon(memberCouponSJ.toString());
             }
         }
-        // 更新商户统计信息
-        /*ShopTotalChangeDto shopTotalChangeDto = new ShopTotalChangeDto();
-        shopTotalChangeDto.setOrderType(2);
-        shopTotalChangeDto.setShopId(order.getShopId());
-        shopTotalChangeDto.setCycleMoney(cycleMoney);
-        shopTotalChangeDto.setServiceMoney(serviceMoney);
-        shopTotalChangeDto.setExperienceMoney(experienceMoney);
-        shopTotalChangeDto.setGoodsMoney(goodsMoney);
-        remoteShopService.changeShopTotal(shopTotalChangeDto);*/
         // 初始化会员统计信息
         MemberTotalChangeDto memberTotalChangeDto = new MemberTotalChangeDto();
         memberTotalChangeDto.setUserId(order.getUserId());
-        // 如果存在积分兑换比例,则计算积分 2023-09-14改为核销后获取积分
-        /*if (redisService.hasKey(SecurityConstant.PAY_MONEY_INTEGRAL)) {
-            Integer moneyValue = redisService.getCacheObject(SecurityConstant.PAY_MONEY_INTEGRAL);
-            BigDecimal moneyValueBig = BigDecimal.valueOf(moneyValue);
-            BigDecimal integralBig = moneyValueBig.multiply(order.getPayMoney());
-            Integer integral = Integer.valueOf(integralBig.toString());
-            memberTotalChangeDto.setChangeIntegral(integral);
-            memberTotalChangeDto.setTypeIntegral(2);
-        }*/
         // 设置会员支付金额和支付时间
         memberTotalChangeDto.setPayMoney(order.getPayMoney().negate());
         // 根据商品存在状态,设置会员统计信息

--
Gitblit v1.7.1