liujie
2025-08-19 70d7bd95e4fbd606e9b1f29a02ccc999c581dc87
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
@@ -926,7 +926,11 @@
            }
            //添加交易明细
            transactionDetailsService.saveData(orderCrossCity.getUserId(), "完成订单", query.getAmount(), 2, 1, 1, 3, query.getOrderId());
            if(orderCrossCity.getDriverId()==null){
                orderCrossCity.setState(1);
            }else {
            orderCrossCity.setState(2);//先支付再服务
            }
            orderCrossCity.setPayType(type);
            orderCrossCity.setPayMoney(query.getAmount());
            this.updateById(orderCrossCity);
@@ -968,7 +972,7 @@
//            driver.setBalance(new BigDecimal(null != driver.getBalance() ? driver.getBalance() : 0).add(c).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
//            driverService.updateById(driver);
            Company company = companyService.selectById(driver.getFranchiseeId());
//            Company company = companyService.selectById(driver.getFranchiseeId());
//            if(Objects.isNull(company)){
//                company = companyService.selectById(driver.getCompanyId());
//            }
@@ -992,20 +996,35 @@
//
//            driverService.updateById(driver);
            // TODO: 2020/5/24 这里需要给司机和用户推送订单状态
            new Thread(new Runnable() {
                @Override
                public void run() {
                    if(driver!=null){
                    pushUtil.pushOrderState(1, orderCrossCity.getUserId(), orderCrossCity.getId(), 3, orderCrossCity.getState(), 0);
                    pushUtil.pushOrderState(2, orderCrossCity.getDriverId(), orderCrossCity.getId(), 3, orderCrossCity.getState(), 0);
                    pushUtil.pushDriverPosition(orderCrossCity.getId(), 3);
                    }else {
                        try {
                            pushCrossCityOrder(orderCrossCity);
                        } catch (Exception e) {
                            throw new RuntimeException(e);
                        }
                    }
                }
            }).start();
//            systemNoticeService.addSystemNotice(1, "您已使用" + (type == 1 ? "微信" : "支付宝") + "成功完成出行订单支付,谢谢使用!", orderCrossCity.getUserId(), 1);
            //添加司机消息提醒
            if(driver!=null){
            systemNoticeService.addSystemNotice(2, "用户已线上完成支付", driver.getId(), 1);
            }
        }else{
            System.err.println("预支付数据异常(orderId = "  + id + ")");
        }
@@ -1936,9 +1955,12 @@
        //修改司机座位
        LineShiftDriver lineShiftDriver = lineShiftDriverMapper.selectById(orderCrossCity.getLineShiftDriverId());
        if(lineShiftDriver!=null){
        lineShiftDriver.setLaveSeat(lineShiftDriver.getLaveSeat() + orderCrossCity.getPeopleNumber());
        lineShiftDriver.setLaveSeatNumber(lineShiftDriver.getLaveSeatNumber() + (orderCrossCity.getTravelMode() == 1 ? "," : "") + orderCrossCity.getSeatNumber());
        lineShiftDriverMapper.updateById(lineShiftDriver);
        }
        //修改司机为空闲
        List<OrderCrossCity> orderCrossCities = orderCrossCityMapper.queryByDriverId(orderCrossCity.getDriverId(), 2, 3, 4, 5, 11);