guyue
2025-08-18 dab423a30dd61cdcfb7e21e2c4c0348be2703f59
DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
@@ -991,6 +991,28 @@
            return ResultUtil.error("手速有点慢哦,订单已被抢啦!");
        }
        Driver driver = driverService.selectById(uid);
//        /**
//         * 先判断司机座位数是否符合出行人数
//         */
//        List<LineShiftDriver> query = lineShiftDriverMapper.queryByDriver(lineShiftDriver.getLineShiftId(), driverId, tOrderCrossCity.getTravelTime());
//
//        LineShiftDriver lineShiftDriver = lineShiftDriverMapper.selectById(orderCrossCity.getLineShiftDriverId());
//        if(orderCrossCityWarpper.getTravelMode() == 1){//拼车判断座位数
//            if(lineShiftDriver.getLaveSeat() < orderCrossCityWarpper.getPeopleNumber()){
//                return ResultUtil.error("司机剩余座位数小于出行人数");
//            }
//        }else{
//            if(lineShiftDriver.getLaveSeat() != lineShiftDriver.getTotalSeat()){
//                return ResultUtil.error("司机车辆上已经有人占座了,不能下包车订单");
//            }
//            if(lineShiftDriver.getLaveSeat() == 0){
//                return ResultUtil.error("司机车辆没有剩余空位了");
//            }
//        }
        orderCrossCity.setDriverId(uid);
        orderCrossCity.setCarId(driver.getCarId());
        orderCrossCity.setCompanyId(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : (
@@ -1034,6 +1056,64 @@
        driver.setBalance(new BigDecimal(null != driver.getBalance() ? driver.getBalance() : 0).add(c).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
        driverService.updateById(driver);
//        //            //修改预约班次的数据
//
//        CarModel carModel = carModelMapper.selectById(carService.selectById(driverService.selectById(driverId).getCarId()).getCarModelId());
//
//        LineShiftDriver lineShiftDriver0 = new LineShiftDriver();
//        lineShiftDriver0.setLineShiftId(lineShiftDriver.getLineShiftId());
//        lineShiftDriver0.setDriverId(driverId);
//        lineShiftDriver0.setDay(lineShiftDriver.getDay());
//        lineShiftDriver0.setTotalSeat(carModel.getSeat() - 1);
//        lineShiftDriver0.setLaveSeat(carModel.getSeat() - 1);
//        lineShiftDriver0.setInserTime(new Date());
//        String seatNumber = "";
//        for(int i = 1; i < carModel.getSeat(); i++){
//            seatNumber += i + ",";
//        }
//        lineShiftDriver0.setLaveSeatNumber(seatNumber.substring(0, seatNumber.length() - 1));
//
//        Integer insert = lineShiftDriverMapper.insert(lineShiftDriver0);
//        lineShiftDriver1 = lineShiftDriver0;
//
//            if (orderCrossCity.getTravelMode() == 2) {//包车
//                lineShiftDriver.setLaveSeat(0);
//                lineShiftDriver.setLaveSeatNumber("");
//            } else {//拼车
//                lineShiftDriver.setLaveSeat((lineShiftDriver.getLaveSeat() - orderCrossCity.getPeopleNumber()) < 0 ? 0 : lineShiftDriver.getLaveSeat() - orderCrossCity.getPeopleNumber());
//                String[] split = orderCrossCity.getSeatNumber().split(",");
//                String[] split1 = lineShiftDriver.getLaveSeatNumber().split(",");
//                String seatNumber = "";
//                //先判断选中座位号和剩余座位号是否匹配
//                for (String spl : split) {
//                    boolean b = true;
//                    for (String sp : split1) {
//                        if (ToolUtil.isNotEmpty(spl) && ToolUtil.isNotEmpty(sp) && sp.equals(spl)) {
//                            b = false;
//                            break;
//                        }
//                    }
//                    if (b) {
//                        throw new SystemException("您选中的" + spl + "号座位已被占用,请选择其他座位!");
//                    }
//                }
//                for (String sp : split1) {
//                    boolean b = true;
//                    for (String spl : split) {
//                        if (ToolUtil.isNotEmpty(spl) && ToolUtil.isNotEmpty(sp) && sp.equals(spl)) {
//                            b = false;
//                            break;
//                        }
//                    }
//                    if (b && ToolUtil.isNotEmpty(sp)) {
//                        seatNumber += (sp + ",");
//                    }
//                }
//                lineShiftDriver.setLaveSeatNumber((ToolUtil.isNotEmpty(seatNumber) && seatNumber.length() > 0) ?
//                        seatNumber.substring(0, seatNumber.length() - 1) : "");
//            }
//            lineShiftDriverMapper.updateById(lineShiftDriver);
        //推送相关代码------------------start----------------
        new Thread(new Runnable() {
            @Override
@@ -1049,7 +1129,7 @@
        new Thread(new Runnable() {
            @Override
            public void run() {
                pushUtil.pushDriverPosition(orderId, 1);
                pushUtil.pushDriverPosition(orderId, 3);
            }
        }).start();