Pu Zhibing
2 天以前 9a66aa395b78b5df07058560eec181a66d6db2b9
UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -431,11 +431,8 @@
                                        }
                                        String value = redisUtil.getValue("DRIVER" + drivers.get(j).getId());
                                        if (null != value) {
//                                Map<String, String> distance1 = gdMapElectricFenceUtil.getDistance(orderPrivateCar.getStartLon() + "," + orderPrivateCar.getStartLat(), value, 0);//计算距离
//                                Integer d = Integer.valueOf(distance1.get("distance"));
                                            String[] split = value.split(",");
                                            double distance = GDMapGeocodingUtil.getDistance(orderPrivateCar.getStartLat(), orderPrivateCar.getStartLon(), Double.valueOf(split[1]), Double.valueOf(split[0]));
                                            int d = Double.valueOf(distance).intValue();
                                            Map<String, Double> distance1 = geodesyUtil.getDistance(orderPrivateCar.getStartLat() + "," + orderPrivateCar.getStartLon(), value);
                                            int d = distance1.get("WGS84").intValue();
                                            if ((0 == m && null == driver) || (d < m)) {
                                                driver = drivers.get(j);
                                                m = d;
@@ -452,11 +449,11 @@
                                for (Driver driver : ds) {
                                    String value = redisUtil.getValue("DRIVER" + driver.getId());
                                    if (null != value) {
                                        Map<String, Double> distance = geodesyUtil.getDistance(orderPrivateCar.getStartLon() + "," + orderPrivateCar.getStartLat(), value);
                                        Double wgs84 = distance.get("WGS84");
                                        if ((0 == m && null == dr) || (wgs84.intValue() < m.intValue())) {
                                        Map<String, String> distance = gdMapElectricFenceUtil.getDistance(startLon + "," + startLat, value, 1);
                                        int distance1 = Integer.parseInt(distance.get("distance"));
                                        if ((0 == m && null == dr) || (distance1 < m.intValue())) {
                                            dr = driver;
                                            m = wgs84.intValue();
                                            m = distance1;
                                        }
                                    }
                                }
@@ -480,6 +477,7 @@
                                    dr.setState(3);
                                }
                                driverService.updateById(dr);
                                redisUtil.setStrValue("DRIVER_ORDER" + dr.getId(), orderPrivateCar.getId().toString(), 600);
                                new Thread(new Runnable() {
                                    @Override
                                    public void run() {
@@ -1378,6 +1376,11 @@
        if(!lock){
            return ResultUtil.error("系统繁忙,请稍后重试");
        }
        String key = orderId + "_during_payment";
        if(redisUtil.hasKey(key)){
            return ResultUtil.error("支付中,不能重复发起支付");
        }
        redisUtil.setStrValue(key, UUIDUtil.getRandomCode(), 10);
        try {
            OrderPrivateCar orderPrivateCar = this.selectById(orderId);
            if(orderPrivateCar.getState() == 8 || orderPrivateCar.getState() == 9){
@@ -1888,7 +1891,6 @@
        if(!lock){
            return;
        }
        try {
            PaymentRecord query = paymentRecordService.query(1, null, null, Integer.valueOf(id), 1, type, null);
            if(null != query){