From 6d05cda0141cbd42a9b8810e539f5dcd8df506f0 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期二, 30 五月 2023 18:10:36 +0800
Subject: [PATCH] 修改bug

---
 driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/service/impl/OrderServiceImpl.java |   52 +++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 45 insertions(+), 7 deletions(-)

diff --git a/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/service/impl/OrderServiceImpl.java b/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/service/impl/OrderServiceImpl.java
index 35829aa..ceaf237 100644
--- a/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/service/impl/OrderServiceImpl.java
+++ b/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/service/impl/OrderServiceImpl.java
@@ -600,7 +600,7 @@
         List<HallOrderList> hallOrderLists = this.baseMapper.queryOrderHall(pageNum, pageSize);
         hallOrderLists.forEach(hallOrderList -> {
             if(ToolUtil.isEmpty(hallOrderList.getAvatar())){
-                hallOrderList.setAvatar("https://csxdj.obs.cn-south-1.myhuaweicloud.com:443/66cc269703a84e4da87fb21e2c21ab1f.png");
+                hallOrderList.setAvatar("https://fanghuadaijia.obs.cn-southwest-2.myhuaweicloud.com:443/img%2Fc68f32a7e78e4ef1b0c018fd2c15d7a7.png");
             }
             hallOrderList.setCurrentDistance(0D);
             if(ToolUtil.isNotEmpty(value)){
@@ -750,8 +750,10 @@
                     orderTransferService.insert(orderTransfer);
                 }
 
-                pushUtil.pushTransferSuccessful(order.getUserId(), 1, order.getId());
                 pushUtil.pushTransferSuccessful(oldDriverId, 2, order.getId());
+                if(null != order.getUserId()){
+                    pushUtil.pushTransferSuccessful(order.getUserId(), 1, order.getId());
+                }
             }
 
             //推动订单数据
@@ -1150,7 +1152,9 @@
             driverService.updateById(driver);
         }
 
-        pushUtil.pushOrderStatus(order.getUserId(), 1, order.getId(), order.getStatus());
+        if(null != order.getUserId()){
+            pushUtil.pushOrderStatus(order.getUserId(), 1, order.getId(), order.getStatus());
+        }
         return ResultUtil.success();
     }
 
@@ -1215,6 +1219,8 @@
                 order.setCouponId(coupon.getId());
                 order.setDiscountAmount(coupon.getCouponPreferentialAmount());
                 order.setPayMoney(order.getOrderMoney() - coupon.getCouponPreferentialAmount());
+            }else{
+                order.setPayMoney(order.getOrderMoney());
             }
         }
 
@@ -1226,9 +1232,6 @@
                     userToCoupon.setValidCount(userToCoupon.getValidCount() - 1);
                     userToCouponService.updateById(userToCoupon);
                     Coupon coupon = couponService.selectById(userToCoupon.getCouponId());
-                    order.setPayMoney(order.getPayMoney() - coupon.getCouponPreferentialAmount());
-                    order.setCouponId(coupon.getId());
-                    order.setDiscountedPrice(coupon.getCouponPreferentialAmount());
 
                     Driver driver = driverService.selectById(order.getDriverId());
                     AccountChangeDetail accountChangeDetail = new AccountChangeDetail();
@@ -1685,6 +1688,41 @@
      */
     @Override
     public void completeCollection() {
-        this.baseMapper.completeCollection();
+        List<Order> orders = this.selectList(new EntityWrapper<Order>().eq("state", 107).eq("status", 1).eq("payType", 3));
+        for (Order order : orders) {
+            order.setState(108);
+            order.setPayTime(new Date());
+            if(null != order.getCouponId()){
+                UserToCoupon userToCoupon = userToCouponService.selectById(order.getCouponId());
+                if(userToCoupon.getValidCount() > 0){
+                    userToCoupon.setValidCount(userToCoupon.getValidCount() - 1);
+                    userToCouponService.updateById(userToCoupon);
+                    Coupon coupon = couponService.selectById(userToCoupon.getCouponId());
+
+                    Driver driver = driverService.selectById(order.getDriverId());
+                    AccountChangeDetail accountChangeDetail = new AccountChangeDetail();
+                    accountChangeDetail.setCode(System.currentTimeMillis() + UUIDUtil.getNumberRandom(3));
+                    accountChangeDetail.setUserType(2);
+                    accountChangeDetail.setUserId(order.getDriverId());
+                    accountChangeDetail.setCreateTime(new Date());
+                    accountChangeDetail.setOldData(driver.getBalance() + driver.getBackgroundBalance() + driver.getCouponBalance() + driver.getCommission());
+                    accountChangeDetail.setType(1);
+                    accountChangeDetail.setChangeType(7);
+                    accountChangeDetail.setOrderId(order.getId());
+                    accountChangeDetail.setExplain("优惠券收入");
+                    driver.setCouponBalance(driver.getCouponBalance() + coupon.getCouponPreferentialAmount());
+                    accountChangeDetail.setNewData(driver.getBalance() + driver.getBackgroundBalance() + driver.getCouponBalance() + driver.getCommission());
+                    driverService.updateById(driver);
+                    accountChangeDetailService.insert(accountChangeDetail);
+                }
+            }
+            this.updateById(order);
+
+            try {
+                saveRevenue(order);
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
     }
 }

--
Gitblit v1.7.1