From af6d43a41205f8c7fc1a965cb019c039063bf4f0 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期三, 13 十二月 2023 01:15:07 +0800
Subject: [PATCH] 更新接口
---
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java | 27 +++++++++++++++------------
1 files changed, 15 insertions(+), 12 deletions(-)
diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
index c36a8ad..a956753 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
@@ -10,6 +10,9 @@
import com.stylefeng.guns.modular.system.service.IDriverService;
import com.stylefeng.guns.modular.system.util.GDMapElectricFenceUtil;
import com.stylefeng.guns.modular.system.util.GDMapGeocodingUtil;
+import com.stylefeng.guns.modular.system.util.GeodesyUtil;
+import com.stylefeng.guns.modular.system.util.GoogleMap.DistancematrixVo;
+import com.stylefeng.guns.modular.system.util.GoogleMap.GoogleMapUtil;
import com.stylefeng.guns.modular.system.util.RedisUtil;
import com.stylefeng.guns.modular.system.warpper.BaseWarpper;
import org.springframework.beans.factory.annotation.Autowired;
@@ -55,10 +58,9 @@
for(Driver driver : drivers){
String value = redisUtil.getValue("DRIVER" + String.valueOf(driver.getId()));
if(null != value){
- /*Map<String, String> distance1 = gdMapElectricFenceUtil.getDistance(lon + "," + lat, value, 0);//计算距离
- double d = Double.valueOf(distance1.get("distance")).doubleValue();*/
- double d = GDMapGeocodingUtil.getDistance(lat,lon,Double.parseDouble(value.split(",")[1]),Double.parseDouble(value.split(",")[0]));
- if(d < (distance * 1000)){
+ Map<String, Double> distance1 = GeodesyUtil.getDistance(lon + "," + lat, value);
+ Double wgs84 = distance1.get("WGS84");
+ if(wgs84.compareTo(distance * 1000) < 0){
list.add(driver);
}
}
@@ -85,12 +87,13 @@
for(Driver driver : drivers){
String value = redisUtil.getValue("DRIVER" + String.valueOf(driver.getId()));
if(null != value){
- /*Map<String, String> distance1 = gdMapElectricFenceUtil.getDistance(lon + "," + lat, value, 0);//计算距离
- double d = Double.valueOf(distance1.get("distance")).doubleValue();*/
- double d = GDMapGeocodingUtil.getDistance(lat,lon,Double.parseDouble(value.split(",")[1]),Double.parseDouble(value.split(",")[0]));
- if(d < (distance * 1000)){
- list.add(driver);
+ DistancematrixVo distancematrix = GoogleMapUtil.getDistancematrix(lat, lon, Double.parseDouble(value.split(",")[1]), Double.parseDouble(value.split(",")[0]));
+ if(null != distancematrix){
+ if(distancematrix.getDistance() < (distance * 1000)){
+ list.add(driver);
+ }
}
+
}
}
return list;
@@ -129,7 +132,7 @@
* @throws Exception
*/
@Override
- public List<BaseWarpper> queryBusiness(Integer uid) throws Exception {
+ public List<BaseWarpper> queryBusiness(Integer uid, Integer language) throws Exception {
List<DriverService> list = driverServiceMapper.queryBusiness(uid, null);
List<BaseWarpper> maps = new ArrayList<>();
for (DriverService d : list){
@@ -137,7 +140,7 @@
baseWarpper.setId(d.getType());
switch (d.getType()){
case 1:
- baseWarpper.setName("专车");
+ baseWarpper.setName(language == 1 ? "打车" : language == 2 ? "Ride" : "Course");
break;
case 2:
baseWarpper.setName("出租车");
@@ -146,7 +149,7 @@
baseWarpper.setName("跨城出行");
break;
case 4:
- baseWarpper.setName("同城小件物流");
+ baseWarpper.setName(language == 1 ? "包裹" : language == 2 ? "Package" : "Livraison");
break;
case 5:
baseWarpper.setName("跨城小件物流");
--
Gitblit v1.7.1