xuhy
昨天 3814e08bda76c5654ddcdc4778724b69dda26211
UserNTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
@@ -52,6 +52,7 @@
import java.math.BigDecimal;
import java.math.MathContext;
import java.math.RoundingMode;
import java.text.SimpleDateFormat;
import java.util.*;
import static com.stylefeng.guns.modular.taxi.service.impl.OrderTaxiServiceImpl.orderIds;
@@ -575,7 +576,7 @@
        orderCrossCity.setEndAddress(endAddress);
        orderCrossCity.setMileage(0D);
        ResultUtil<Map<String, Object>> price = this.getPrice(orderCrossCityWarpper.getDistance(), orderCrossCityWarpper.getPeopleNumber(), orderCrossCityWarpper.getTravelMode(), orderCrossCityWarpper.getLineId(),
                orderCrossCityWarpper.getServerCarModelId(), orderCrossCityWarpper.getTotalSeat(), orderCrossCityWarpper.getSeatNumber());
                orderCrossCityWarpper.getServerCarModelId(), orderCrossCityWarpper.getTotalSeat(), null);
        Double money = Double.valueOf(price.getData().get("price").toString());
        orderCrossCity.setOrderMoney(money);
        Integer companyId = driver.getCompanyId();
@@ -584,12 +585,13 @@
        orderCrossCity.setPassengers(userInfo.getNickName());
        orderCrossCity.setPassengersPhone(userInfo.getPhone());
        orderCrossCity.setPeopleNumber(orderCrossCityWarpper.getPeopleNumber());
        orderCrossCity.setSeatNumber(orderCrossCityWarpper.getSeatNumber());
//        orderCrossCity.setSeatNumber(orderCrossCityWarpper.getSeatNumber());
        List<OrderCrossCity> orderCrossCities = this.selectList(new EntityWrapper<OrderCrossCity>().eq("orderNum", orderCrossCity.getOrderNum()).eq("isDelete", 1));
        orderCrossCity.setSort(orderCrossCities.size() + 1);
        orderCrossCity.setState(7);//待支付
        orderCrossCity.setInsertTime(new Date());
        orderCrossCity.setTravelTime(orderCrossCityWarpper.getTravelTime());
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        orderCrossCity.setTravelTime(format.parse(orderCrossCityWarpper.getTravelTime()));
        orderCrossCity.setSnatchOrderTime(new Date());
        orderCrossCity.setTravelMode(orderCrossCityWarpper.getTravelMode());
        orderCrossCity.setOrderSource(orderCrossCityWarpper.getOrderSource());
@@ -637,34 +639,34 @@
            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[] 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 + ",");
                }
            }
//            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) : "");
        }
@@ -943,7 +945,7 @@
//            double num8 = Double.valueOf(jsonObject.getString("num8")).doubleValue();
//            double num9 = Double.valueOf(jsonObject.getString("num9")).doubleValue();
            if(travelMode == 1){//拼车
                String[] split = seatNumber.split(",");
//                String[] split = seatNumber.split(",");
//                boolean b = false;
//                for(String s : split){
//                    if((totalSeat == 4 && s.equals("3")) || (totalSeat == 6 && s.equals("5"))
@@ -981,7 +983,7 @@
//            double num12 = Double.valueOf(jsonObject.getString("num12")).doubleValue();//五十四座系数
            if(travelMode == 1){//拼车
                double unitPrice = (distance1 * num3 * (num1 / (num2 * num3))) + ((distance1 - num2) * num3 * num4);
                String[] split = seatNumber.split(",");
//                String[] split = seatNumber.split(",");
//                boolean b = false;
//                for(String s : split){
//                    if((totalSeat == 4 && s.equals("3")) || (totalSeat == 6 && s.equals("5"))