zhibing.pu
2024-08-22 b77c1869930d044db13a0d4a672bf98da1cab2c2
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -3094,18 +3094,29 @@
            }
    
            OrderPrivateCar orderPrivateCar = orderPrivateCarMapper.selectById(orderId);
            long timeOutCancel = 0L;
            if(null != orderPrivateCar.getEstimateArriveTime()){
                CancleOrder cancleOrder = cancleOrderService.selectOne(new EntityWrapper<CancleOrder>().eq("companyId", orderPrivateCar.getCompanyId()));
                JSONObject jsonObject = JSON.parseObject(cancleOrder.getContent());
                int driverTimeout = jsonObject.getIntValue("driverTimeout") * 60000;
                if(orderPrivateCar.getOrderType() == 1){
                    timeOutCancel = orderPrivateCar.getEstimateArriveTime().getTime() + driverTimeout;
                }else{
                    timeOutCancel = orderPrivateCar.getTravelTime().getTime() + driverTimeout;
            Integer driverTimeOutTime = 0;
            Integer driverTimeOut = 0;
            CancleOrder cancleOrder = cancleOrderService.selectOne(new EntityWrapper<CancleOrder>().eq("companyId", orderPrivateCar.getCompanyId()));
            JSONObject jsonObject = JSON.parseObject(cancleOrder.getContent());
            int driverTimeout1 = jsonObject.getIntValue("driverTimeout");
            if(orderPrivateCar.getOrderType() == 1 && null != orderPrivateCar.getEstimateArriveTime()){
                long time = orderPrivateCar.getEstimateArriveTime().getTime() + driverTimeout1 * 60000L;
                if(System.currentTimeMillis() > time){
                    driverTimeOutTime = Double.valueOf((System.currentTimeMillis() - time) / 60000).intValue();
                    driverTimeOutTime = driverTimeOutTime == 0 ? 1 : driverTimeOutTime;
                    driverTimeOut = 1;
                }
            }else{
                long time = orderPrivateCar.getTravelTime().getTime() + driverTimeout1 * 60000L;
                if(System.currentTimeMillis() >= time){
                    driverTimeOutTime = Double.valueOf((System.currentTimeMillis() - time) / 60000).intValue();
                    driverTimeOutTime = driverTimeOutTime == 0 ? 1 : driverTimeOutTime;
                    driverTimeOut = 1;
                }
            }
            map.put("timeOutCancel", timeOutCancel);
            map.put("driverTimeOutTime", driverTimeOutTime);
            map.put("driverTimeOut", driverTimeOut);
        }
        return maps;
    }