From 7c9dda6138ceea88a312583a3fcc9b2bb356fbc4 Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期六, 05 八月 2023 09:37:54 +0800
Subject: [PATCH] bug和二维码

---
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java |   81 ++++++++++++++++++++++++++++++++++------
 1 files changed, 69 insertions(+), 12 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 9d319da..d69f88e 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
@@ -243,7 +243,7 @@
                     } else if (couponType == 2 && appMemberCouponVo.getDiscountPercent() != null) {
                         discountPercent = appMemberCouponVo.getDiscountPercent();
                         goodsRealPrice = goodsTotalPrice.multiply(discountPercent).divide(BigDecimal.TEN,2,BigDecimal.ROUND_HALF_UP);
-                        discountMoney = goodsRealPrice.subtract(goodsTotalPrice);
+                        discountMoney = goodsTotalPrice.subtract(goodsRealPrice);
                         useCoupon = 1;
                         userCouponIdSet.add(memberCouponId);
                         appSureOrderGoodsVo.setMemberCouponId(memberCouponId);
@@ -597,7 +597,7 @@
                     } else if (couponType == 2 && appMemberCouponVo.getDiscountPercent() != null) {
                         discountPercent = appMemberCouponVo.getDiscountPercent();
                         goodsRealPrice = goodsTotalPrice.multiply(discountPercent).divide(BigDecimal.TEN,2, BigDecimal.ROUND_HALF_UP);
-                        discountMoney = goodsRealPrice.subtract(goodsTotalPrice);
+                        discountMoney = goodsTotalPrice.subtract(goodsRealPrice);
                         useCoupon = 1;
                     } else if (couponType == 3 && appMemberCouponVo.getDiscountMoney() != null) {
                         discountMoney = appMemberCouponVo.getDiscountMoney();
@@ -648,6 +648,7 @@
             orderGoods.setServiceNum(serviceNum);
             orderGoods.setGoodsType(goods.getGoodsType());
             orderGoods.setGoodsName(goods.getGoodsName());
+            orderGoods.setGoodsTag(goods.getGoodsTags());
             orderGoods.setGoodsIntroduction(goods.getGoodsIntroduction());
             orderGoods.setGoodsPicture(goodsFile.getFileUrl());
             // 保存订单商品
@@ -900,6 +901,7 @@
         orderGoods.setCycleNumFlag(goods.getCycleNumFlag());
         orderGoods.setServiceNum(serviceNum);
         orderGoods.setGoodsType(goods.getGoodsType());
+        orderGoods.setGoodsTag(goods.getGoodsTags());
         orderGoods.setGoodsName(goods.getGoodsName());
         orderGoods.setGoodsIntroduction(goods.getGoodsIntroduction());
         orderGoods.setGoodsPicture(goodsFile.getFileUrl());
@@ -1302,6 +1304,7 @@
                 consumerGoods.setServiceNum(appUserOrderGoodsPageVo.getServiceNum());
                 consumerGoods.setUsedNum(0);
                 consumerGoods.setGoodsType(appUserOrderGoodsPageVo.getGoodsType());
+                consumerGoods.setGoodsTag(appUserOrderGoodsPageVo.getGoodsTag());
                 consumerGoods.setCreateTime(nowTime);
                 consumerGoods.setGoodsIntroduction(goods.getGoodsIntroduction());
                 consumerGoods.setGoodsPicture(appUserOrderGoodsPageVo.getGoodsPicture());
@@ -1327,6 +1330,7 @@
                     consumerGoods.setServiceNum(appUserOrderGoodsPageVo.getServiceNum());
                     consumerGoods.setUsedNum(0);
                     consumerGoods.setGoodsType(appUserOrderGoodsPageVo.getGoodsType());
+                    consumerGoods.setGoodsTag(appUserOrderGoodsPageVo.getGoodsTag());
                     consumerGoods.setCreateTime(nowTime);
                     consumerGoods.setGoodsIntroduction(goods.getGoodsIntroduction());
                     consumerGoods.setGoodsPicture(appUserOrderGoodsPageVo.getGoodsPicture());
@@ -1455,6 +1459,7 @@
             }
             consumerGoods.setUsedNum(0);
             consumerGoods.setGoodsType(goods.getGoodsType());
+            consumerGoods.setGoodsTag(goods.getGoodsTags());
             consumerGoods.setCreateTime(new Date());
             consumerGoods.setGoodsIntroduction(goods.getGoodsIntroduction());
             goodsFile = remoteGoodsService.getGoodsFile(goods.getGoodsId()).getData();
@@ -1573,7 +1578,7 @@
     @Override
     public List<MerMemberNoClearOrderVo> pageMerMemberNoClearOrder(Page page, MerMemberNoClearOrderDto merMemberNoClearOrderDto) {
         List<MerMemberNoClearOrderVo> merMemberNoClearOrderVoList = orderMapper.pageMerMemberNoClearOrder(page, merMemberNoClearOrderDto.getMemberUserId());
-        if (merMemberNoClearOrderVoList != null && !merMemberNoClearOrderVoList.isEmpty()) {
+        /*if (merMemberNoClearOrderVoList != null && !merMemberNoClearOrderVoList.isEmpty()) {
             BigDecimal zeroBig = new BigDecimal("0.00");
             for (MerMemberNoClearOrderVo merMemberNoClearOrderVo : merMemberNoClearOrderVoList) {
                 merMemberNoClearOrderVo.setUnPaidMoney(merMemberNoClearOrderVo.getReceivableMoney().subtract(merMemberNoClearOrderVo.getPayMoney()));
@@ -1581,7 +1586,7 @@
                     merMemberNoClearOrderVo.setUnPaidMoney(zeroBig);
                 }
             }
-        }
+        }*/
         return merMemberNoClearOrderVoList;
     }
 
@@ -1766,6 +1771,7 @@
             orderGoods.setCycleNumFlag(goods.getCycleNumFlag());
             orderGoods.setServiceNum(serviceNum);
             orderGoods.setGoodsType(goods.getGoodsType());
+            orderGoods.setGoodsTag(goods.getGoodsTags());
             orderGoods.setGoodsName(goods.getGoodsName());
             orderGoods.setGoodsIntroduction(goods.getGoodsIntroduction());
             orderGoods.setGoodsPicture(goodsFile.getFileUrl());
@@ -1813,7 +1819,6 @@
         order.setOrderRemark(merNewOrderDto.getOrderRemark());
         order.setGoodsNum(goodsNum);
         order.setCreateTime(nowTime);
-        order.setPayTime(nowTime);
         order.setUseTime(nowTime);
         order.setUseUserId(merNewOrderDto.getUserId());
         order.setPayMoney(merNewOrderDto.getPayMoney());
@@ -1851,6 +1856,7 @@
                 consumerGoods.setServiceNum(appUserOrderGoodsPageVo.getServiceNum());
                 consumerGoods.setUsedNum(0);
                 consumerGoods.setGoodsType(appUserOrderGoodsPageVo.getGoodsType());
+                consumerGoods.setGoodsTag(appUserOrderGoodsPageVo.getGoodsTag());
                 consumerGoods.setCreateTime(nowTime);
                 consumerGoods.setGoodsIntroduction(goods.getGoodsIntroduction());
                 consumerGoods.setGoodsPicture(appUserOrderGoodsPageVo.getGoodsPicture());
@@ -1876,6 +1882,7 @@
                     consumerGoods.setServiceNum(appUserOrderGoodsPageVo.getServiceNum());
                     consumerGoods.setUsedNum(0);
                     consumerGoods.setGoodsType(appUserOrderGoodsPageVo.getGoodsType());
+                    consumerGoods.setGoodsTag(appUserOrderGoodsPageVo.getGoodsTag());
                     consumerGoods.setCreateTime(nowTime);
                     consumerGoods.setGoodsIntroduction(goods.getGoodsIntroduction());
                     consumerGoods.setGoodsPicture(appUserOrderGoodsPageVo.getGoodsPicture());
@@ -1921,6 +1928,18 @@
      */
     @Override
     public List<MerOrderPageVo> pageMerOrder(Page page, MerOrderPageDto merOrderPageDto) {
+        if(StringUtils.isNotBlank(merOrderPageDto.getKeyword())){
+            MgtUserIdByKeywordDto userIdByKeywordDto = new MgtUserIdByKeywordDto();
+            userIdByKeywordDto.setKeyword(merOrderPageDto.getKeyword());
+            MgtUserIdByKeywordVo userIdByKeywordVo = remoteMemberService.getUserIdByKeyword(userIdByKeywordDto).getData();
+            if(StringUtils.isNotBlank(userIdByKeywordVo.getUserIds())){
+                List<Long> userIdList = Arrays.stream(userIdByKeywordVo.getUserIds().split(","))
+                        .map(Long::parseLong)
+                        .collect(Collectors.toList());
+                merOrderPageDto.setMemberUserIdList(userIdList);
+                merOrderPageDto.setMemberUserId(null);
+            }
+        }
         List<MerOrderPageVo> merOrderPageVoList = orderMapper.pageMerOrder(page, merOrderPageDto);
         if (merOrderPageVoList != null && !merOrderPageVoList.isEmpty()) {
             Long userId;
@@ -1954,9 +1973,13 @@
             Map<Long, MgtSimpleMemberVo> userMap = simpleMemberVoList.stream()
                     .collect(Collectors.toMap(MgtSimpleMemberVo::getUserId, Function.identity()));
             for (MerOrderPageVo merOrderPageVo : merOrderPageVoList) {
-                merOrderPageVo.setUserName(userMap.get(merOrderPageVo.getUserId()).getRealName());
-                merOrderPageVo.setNickName(userMap.get(merOrderPageVo.getUserId()).getNickName());
-                merOrderPageVo.setUserMobile(userMap.get(merOrderPageVo.getUserId()).getUserMobile());
+                if(merOrderPageVo.getUserId()!=null&&userMap.get(merOrderPageVo.getUserId())!=null){
+                    merOrderPageVo.setUserName(userMap.get(merOrderPageVo.getUserId()).getRealName());
+                    merOrderPageVo.setNickName(userMap.get(merOrderPageVo.getUserId()).getNickName());
+                    merOrderPageVo.setUserMobile(userMap.get(merOrderPageVo.getUserId()).getUserMobile());
+                }else{
+                    log.debug("订单merOrderPageVo"+merOrderPageVo.getOrderId()+"缺少用户");
+                }
             }
         }
         return merOrderPageVoList;
@@ -2139,7 +2162,7 @@
             }
         }
         MgtOrderTotal mgtOrderTotal = new MgtOrderTotal();
-        MgtOrderTotal mgtOrderTotalFirst = orderMapper.totalOrderFirst();
+        MgtOrderTotal mgtOrderTotalFirst = orderMapper.totalOrderFirst(mgtShopOrderPageDto);
         MgtOrderTotal mgtOrderTotalSecond = orderMapper.totalOrderSecond(mgtShopOrderPageDto);
         MgtOrderTotal mgtOrderTotalThird = orderMapper.totalOrderThird(mgtShopOrderPageDto);
         mgtOrderTotal.setOrderTotal(mgtOrderTotalFirst.getOrderTotal());
@@ -2322,7 +2345,11 @@
         mgtOrderDetailVo.setCancelTime(order.getCancelTime());
         mgtOrderDetailVo.setOrderRemark(order.getOrderRemark());
         mgtOrderDetailVo.setShopId(order.getShopId());
-        mgtOrderDetailVo.setShopName(shop.getShopName());
+        if(shop!=null){
+            mgtOrderDetailVo.setShopName(shop.getShopName());
+        }else{
+            mgtOrderDetailVo.setShopName("商户已被删除");
+        }
         mgtOrderDetailVo.setVerifyTime(order.getUseTime());
         //获取支付记录
         List<MgtOrderPayListVo> orderPayListVoList = payRecordService.listMgtOrderPayVo(orderId);
@@ -2340,6 +2367,8 @@
     @Override
     public MgtBulletinBoardVo boardOrderTotal() {
         MgtBulletinBoardVo mgtBulletinBoardVo = orderMapper.boardOrderTotal();
+        Integer activityUserTotal = orderMapper.activityUserTotal();
+        mgtBulletinBoardVo.setActivityUserTotal(activityUserTotal);
         return mgtBulletinBoardVo;
     }
 
@@ -3248,6 +3277,18 @@
     @Override
     public MerTotalOrderVo totalMerOrder(MerOrderPageDto merOrderPageDto) {
         MerTotalOrderVo merTotalOrderVo = new MerTotalOrderVo();
+        if(StringUtils.isNotBlank(merOrderPageDto.getKeyword())){
+            MgtUserIdByKeywordDto userIdByKeywordDto = new MgtUserIdByKeywordDto();
+            userIdByKeywordDto.setKeyword(merOrderPageDto.getKeyword());
+            MgtUserIdByKeywordVo userIdByKeywordVo = remoteMemberService.getUserIdByKeyword(userIdByKeywordDto).getData();
+            if(StringUtils.isNotBlank(userIdByKeywordVo.getUserIds())){
+                List<Long> userIdList = Arrays.stream(userIdByKeywordVo.getUserIds().split(","))
+                        .map(Long::parseLong)
+                        .collect(Collectors.toList());
+                merOrderPageDto.setMemberUserIdList(userIdList);
+                merOrderPageDto.setMemberUserId(null);
+            }
+        }
         merTotalOrderVo = orderMapper.totalMerOrder(merOrderPageDto);
         return merTotalOrderVo;
     }
@@ -3476,6 +3517,9 @@
         }
         if (haveGoods) {
             memberTotalChangeDto.setGoodsOrderChange(1);
+        }
+        if(order.getOrderFrom()==2){
+            memberTotalChangeDto.setActivityTime(order.getCreateTime());
         }
         // 更新会员统计信息
         remoteMemberService.changeMemberTotal(memberTotalChangeDto);
@@ -3921,14 +3965,14 @@
             delayTime = redisService.getCacheObject(SecurityConstant.AUTO_CANCEL_ORDER_TIME);
         }
         delayTime = delayTime + 5;
-        Date checkTime = DateUtils.addMinutes(new Date(),delayTime);
+        Date checkTime = DateUtils.addMinutes(new Date(),-delayTime);
         LambdaQueryWrapper<Order> queryWrapper = new LambdaQueryWrapper<>();
         queryWrapper.eq(Order::getDelFlag,0);
         queryWrapper.lt(Order::getCreateTime,checkTime);
         queryWrapper.eq(Order::getOrderStatus,1);
         List<Order> orderList = this.list(queryWrapper);
         if(orderList!=null&&!orderList.isEmpty()){
-            for(Order  order: orderList){
+            for(Order order: orderList){
                 autoTimeCancelOrder(order);
             }
         }
@@ -3989,4 +4033,17 @@
             }
         }
     }
+
+    /**
+     * @description  获取商户订单统计
+     * @author  jqs
+     * @date    2023/8/4 10:25
+     * @param mgtShopOrderPageDto
+     * @return  MgtShopAllOrderTotal
+     */
+    @Override
+    public MgtShopAllOrderTotal getMgtShopAllOrderTotal(MgtShopOrderPageDto mgtShopOrderPageDto){
+        MgtShopAllOrderTotal shopAllOrderTotal = orderMapper.getMgtShopAllOrderTotal(mgtShopOrderPageDto);
+        return shopAllOrderTotal;
+    }
 }

--
Gitblit v1.7.1