Pu Zhibing
1 天以前 7b50ac09257d466ab5969262440cf13926b8c070
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java
@@ -144,23 +144,27 @@
     */
    @Override
    public ResultUtil grabOrder(Integer orderId, Integer uid) throws Exception {
        OrderPrivateCar orderPrivateCar1 = orderPrivateCarService.selectById(orderId);
        if(null != orderPrivateCar1 && orderPrivateCar1.getType() == 3 && orderPrivateCar1.getState() != 1&& orderPrivateCar1.getState() != 11){
            return ResultUtil.error("订单已被抢了");
        }
        OrderTaxi orderTaxi = null;
        if(null != orderPrivateCar1 && orderPrivateCar1.getType() == 3 && orderPrivateCar1.getState() == 1&& orderPrivateCar1.getState() == 11){
            orderPrivateCarService.deleteById(orderId);
            OrderTaxi orderTaxi1 = setOrderTaxi(orderPrivateCar1);
            this.insert(orderTaxi1);
            orderTaxi = orderTaxi1;
        OrderTaxi orderTaxi = this.selectById(orderId);
        if(null != orderTaxi && orderTaxi.getType() == 2){
            if(orderTaxi.getState() != 1){
                return ResultUtil.error("订单已被抢了");
            }
        }else{
            orderTaxi = this.selectById(orderId);
            OrderPrivateCar orderPrivateCar1 = orderPrivateCarService.selectById(orderId);
            if(null != orderPrivateCar1 && orderPrivateCar1.getType() == 3 && orderPrivateCar1.getState() != 1&& orderPrivateCar1.getState() != 11){
                return ResultUtil.error("订单已被抢了");
            }
            orderTaxi = null;
            if(null != orderPrivateCar1 && orderPrivateCar1.getType() == 3 && (orderPrivateCar1.getState() == 1||  orderPrivateCar1.getState() == 11)){
                orderPrivateCarService.deleteById(orderId);
                OrderTaxi orderTaxi1 = setOrderTaxi(orderPrivateCar1);
                this.insert(orderTaxi1);
                orderTaxi = orderTaxi1;
            }
        }
        if(null == orderTaxi){
            return ResultUtil.error("订单已被抢了");
        }
        //处理摆渡车的情况
        if(orderTaxi.getType() == 2){
@@ -336,7 +340,7 @@
        UserInfo userInfo = userInfoMapper.selectById(userId);
        if(userInfo.getBindDriverId()!=null && userInfo.getBindExpireDate().getTime()<=System.currentTimeMillis()){
            String registAreaCode = userInfo.getRegistAreaCode();
            TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>().eq("state",1).eq("districtCode", registAreaCode).ge("startTime", new Date()).lt("endTime", new Date()).last("AND FIND_IN_SET(" + 1 + ", bizType) limit 1"));
            TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>().eq("state",1).eq("districtCode", registAreaCode).le("startTime", new Date()).ge("endTime", new Date()).last("AND FIND_IN_SET(" + 2 + ", bizType) limit 1"));
            if(tDriverPromotionActivity!=null){
                return userInfo.getBindDriverId();
            }
@@ -410,7 +414,7 @@
        orderTaxi.setStartServiceTime(date);
        orderTaxi.setBoardingTime(date);
    
        String value = (String) redisTemplate.opsForValue().get("DRIVER" + uid);
        String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + uid);
        if (ToolUtil.isNotEmpty(value)) {
            String[] split = value.split(",");
            Map<String, String> geocode1 = gdMapGeocodingUtil.geocode(split[0], split[1]);