puzhibing
2023-07-19 eff77f23c896262718fb93787df72516c30a7e41
user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/service/impl/OrderServiceImpl.java
@@ -112,6 +112,9 @@
    @Autowired
    private IRechargeRecordService rechargeRecordService;
    @Autowired
    private IOrderService orderService;
    @Value("${wx.appletsAppid}")
    private String appletsAppid;
@@ -571,7 +574,8 @@
                        continue;
                    }
                    Driver driver1 = driverService.selectById(youTuiDriver.getDriverId());
                    if(driver1.getServerStatus() == 2 || driver1.getOpenOrderQRCode() == 1){
                    int count = orderService.selectCount(new EntityWrapper<Order>().eq("driverId", youTuiDriver.getDriverId()).eq("status", 1).in("state", Arrays.asList(102, 103, 104, 105, 201, 401)));
                    if(driver1.getServerStatus() == 2 || driver1.getOpenOrderQRCode() == 1 || count > 0){
                        continue;
                    }
                    DriverWork driverWork = driverWorkService.selectOne(new EntityWrapper<DriverWork>().eq("driverId", driver1.getId()).eq("status", 1));
@@ -625,6 +629,10 @@
                            }
                            DriverWork driverWork = driverWorkService.selectOne(new EntityWrapper<DriverWork>().eq("driverId", driver1.getId()).eq("status", 1));
                            if(null == driverWork){
                                continue;
                            }
                            int count = orderService.selectCount(new EntityWrapper<Order>().eq("driverId", driver1.getId()).eq("status", 1).in("state", Arrays.asList(102, 103, 104, 105, 201, 401)));
                            if(count > 0){
                                continue;
                            }
@@ -896,6 +904,7 @@
        orderPriceWarpper.setDiscountedPrice(order.getDiscountedPrice());
        orderPriceWarpper.setBadWeatherPrice(order.getBadWeatherPrice());
        orderPriceWarpper.setPayMoney(order.getPayMoney());
        orderPriceWarpper.setOrderMoney(order.getOrderMoney());
        if(order.getState() < 107){
            orderPriceWarpper.setPayMoney(order.getOrderMoney());
        }
@@ -936,9 +945,9 @@
            orderPriceWarpper.setCouponId(coupon.getId());
        }
        if(payType == 1 && null == couponId && appUser.getHavDiscount() == 1 && balance.compareTo(orderMoney) >= 0){//使用余额抵扣
            orderPriceWarpper.setDiscount(9D);
            orderPriceWarpper.setDiscountAmount(new BigDecimal(orderMoney * 0.1).setScale(2, RoundingMode.HALF_EVEN).doubleValue());
            orderMoney = new BigDecimal(orderMoney * 0.9).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
            orderPriceWarpper.setDiscount(9.5D);
            orderPriceWarpper.setDiscountAmount(new BigDecimal(orderMoney * 0.05).setScale(2, RoundingMode.HALF_EVEN).doubleValue());
            orderMoney = new BigDecimal(orderMoney * 0.95).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
        }
        if(null != couponId){
            UserToCoupon userToCoupon = userToCouponService.selectById(couponId);
@@ -2003,7 +2012,7 @@
        revenue.setUserType(2);
        revenue.setUserId(driver.getId());
        revenue.setOrderId(order.getId());
        revenue.setAmount(order.getPayMoney() + order.getDiscountedPrice() + order.getDiscountAmount());
        revenue.setAmount(order.getPayMoney() + order.getDiscountedPrice());//todo 折扣司机承担
        revenue.setCreateTime(new Date());
        revenueService.insert(revenue);