From c90f8fa92c935e02b53e973fbb5800f966bcbbfb Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期六, 11 十月 2025 17:20:32 +0800
Subject: [PATCH] 添加日志记录
---
DriverZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushMinistryOfTransportUtil.java | 303 +++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 260 insertions(+), 43 deletions(-)
diff --git a/DriverZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushMinistryOfTransportUtil.java b/DriverZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushMinistryOfTransportUtil.java
index 2e6e41b..a74b1d0 100644
--- a/DriverZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushMinistryOfTransportUtil.java
+++ b/DriverZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushMinistryOfTransportUtil.java
@@ -1,6 +1,8 @@
package com.stylefeng.guns.modular.system.util;
+import cn.hutool.http.HttpRequest;
+import cn.hutool.http.HttpUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
@@ -56,8 +58,10 @@
@Autowired
private ITransactionDetailsService transactionDetailsService;
+ @Autowired
+ private GDMapGeocodingUtil gdMapGeocodingUtil;
- private String path = "http://120.77.11.218:8868/";
+ private String path = "http://127.0.0.1:8868/";
/**
@@ -72,15 +76,26 @@
mileage += (orderPrivateCar.getMileage() == null ? 0 : orderPrivateCar.getMileage());
}
JSONObject jsonObject = new JSONObject();
- jsonObject.put("Address", 450204);//注册地行政区划代码
+ jsonObject.put("Address", 530602);//注册地行政区划代码
jsonObject.put("VehicleNo", car.getCarLicensePlate());//车辆号牌
jsonObject.put("TotalMile", Integer.valueOf(mileage / 1000));//行驶总里程(km)
jsonObject.put("Flag", 1);//操作标识(1:新增,2:更新,3:删除)
jsonObject.put("UpdateTime", new Date());
Map<String, Object> map = new HashMap<>();
map.put("baseInfoVehicleTotalMile", jsonObject.toJSONString());
- String result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/baseInfoVehicleTotalMile", map,null,"form");
- System.out.println("网约车车辆里程信息:" + result);
+ Map<String, String> header = new HashMap<>();
+ header.put("Connection", "keep-alive");
+ header.put("Content-Type", "application/x-www-form-urlencoded");
+ header.put("Accept", "*/*");
+ header.put("Accept-Encoding", "gzip");
+ header.put("Accept-Charset", "utf-8");
+ String result = null;
+ try {
+ result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/baseInfoVehicleTotalMile", map, header,"form").toString();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ System.err.println("--------------------------网约车车辆里程信息------------------------:" + result);
}
@@ -88,11 +103,25 @@
* 订单发起接口
* @param orderId
*/
- public void orderCreate(Integer orderId){
+ public void orderCreate(Integer orderId) {
OrderPrivateCar orderPrivateCar = orderPrivateCarService.selectById(orderId);
Map<String, Object> query = systemPriceMapper.query(orderPrivateCar.getCompanyId(), 1, orderPrivateCar.getServerCarModelId());
JSONObject jsonObject = new JSONObject();
- jsonObject.put("Address", 450204);//发起第行政区划代码
+ if (orderPrivateCar.getBoardingLon()!=null && orderPrivateCar.getBoardingLat()!=null){
+ Map<String, String> geocode = null;
+ try {
+ geocode = gdMapGeocodingUtil.geocode(orderPrivateCar.getBoardingLon() + "", orderPrivateCar.getBoardingLat() + "");
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ if (geocode!=null){
+ jsonObject.put("Address", geocode.get("provinceCode"));//发起第行政区划代码
+ }else{
+ jsonObject.put("Address", 530602);//发起第行政区划代码
+ }
+ }else{
+ jsonObject.put("Address", 530602);//发起第行政区划代码
+ }
jsonObject.put("OrderId", orderPrivateCar.getOrderNum());//订单编号
jsonObject.put("DepartTime", orderPrivateCar.getTravelTime());//预计用车时间YYYYMMDDhhmmss
jsonObject.put("OrderTime", orderPrivateCar.getInsertTime());//订单发起时间YYYYMMDDhhmmss
@@ -107,8 +136,20 @@
jsonObject.put("FareType", query.get("id").toString());//运价类型编码
Map<String, Object> map = new HashMap<>();
map.put("orderCreate", jsonObject.toJSONString());
- String result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/orderCreate", map,null,"form");
- System.out.println("订单发起接口:" + result);
+ Map<String, String> header = new HashMap<>();
+ header.put("Connection", "keep-alive");
+ header.put("Content-Type", "application/x-www-form-urlencoded");
+ header.put("Accept", "*/*");
+ header.put("Accept-Encoding", "gzip");
+ header.put("Accept-Charset", "utf-8");
+ System.err.println("订单发起==============================="+map);
+ String result = null;
+ try {
+ result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/orderCreate", map, header,"form").toString();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ System.err.println("--------------------------订单发起接口------------------------:" + result);
}
@@ -116,25 +157,56 @@
* 订单成功接口
* @param orderId
*/
- public void orderMatch(Integer orderId){
+ public void orderMatch(Integer orderId) {
OrderPrivateCar orderPrivateCar = orderPrivateCarService.selectById(orderId);
Driver driver = driverService.selectById(orderPrivateCar.getDriverId());
Car car = carService.selectById(orderPrivateCar.getCarId());
String value = redisUtil.getValue("DRIVER" + orderPrivateCar.getDriverId());
JSONObject jsonObject = new JSONObject();
- jsonObject.put("Address", 450204);//发起地行政区划代码
+ if (orderPrivateCar.getBoardingLon()!=null && orderPrivateCar.getBoardingLat()!=null){
+ Map<String, String> geocode = null;
+ try {
+ geocode = gdMapGeocodingUtil.geocode(orderPrivateCar.getBoardingLon() + "", orderPrivateCar.getBoardingLat() + "");
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ if (geocode!=null){
+ jsonObject.put("Address", geocode.get("provinceCode"));//发起第行政区划代码
+ }else{
+ jsonObject.put("Address", 530602);//发起第行政区划代码
+ }
+ }else{
+ jsonObject.put("Address", 530602);//发起第行政区划代码
+ }
jsonObject.put("OrderId", orderPrivateCar.getOrderNum());//订单编号
jsonObject.put("Longitude", Double.valueOf(value.split(",")[0]));//车辆经度
jsonObject.put("Latitude", Double.valueOf(value.split(",")[1]));//车辆纬度
jsonObject.put("Encrypt", 1);//坐标加密标识(1:GCJ-02测绘局标准,2:WGS84 GPS标准,3:BD-09百度标准,4:CGCS2000北斗标准,0:其他)
- jsonObject.put("LicenseId", driver.getDriveCard());//机动车驾驶证编号
+ if (driver.getIdCard() == null){
+ return;
+ }else if (driver.getIdCard().isEmpty()){
+ return;
+ }
+ jsonObject.put("LicenseId", driver.getIdCard());//机动车驾驶证编号
jsonObject.put("DriverPhone", driver.getPhone());//驾驶员手机号
jsonObject.put("VehicleNo", car.getCarLicensePlate());//车辆号牌
jsonObject.put("DistributeTime", new Date());//派单成功时间YYYYMMDDhhmmss
Map<String, Object> map = new HashMap<>();
map.put("orderMatch", jsonObject.toJSONString());
- String result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/orderMatch", map,null,"form");
- System.out.println("订单成功接口:" + result);
+ Map<String, String> header = new HashMap<>();
+ header.put("Connection", "keep-alive");
+ header.put("Content-Type", "application/x-www-form-urlencoded");
+ header.put("Accept", "*/*");
+ header.put("Accept-Encoding", "gzip");
+ header.put("Accept-Charset", "utf-8");
+ System.err.println("订单成功==============================="+map);
+ String result = null;
+ try {
+ result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/orderMatch", map, header,"form").toString();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ System.err.println("--------------------------------订单成功接口---------------------------:" + result);
}
@@ -148,7 +220,12 @@
String value = redisUtil.getValue("DRIVER" + driverId);
if(ToolUtil.isNotEmpty(value)){
JSONObject jsonObject = new JSONObject();
- jsonObject.put("LicenseId", driver.getDriveCard());//机动车驾驶证号
+ if (driver.getIdCard() == null){
+ return;
+ }else if (driver.getIdCard().isEmpty()){
+ return;
+ }
+ jsonObject.put("LicenseId", driver.getIdCard());//机动车驾驶证号
jsonObject.put("VehicleNo", car.getCarLicensePlate());//车辆号牌
jsonObject.put("LoginTime", new Date());//车辆经营上线时间YYYYMMDDhhmmss
jsonObject.put("Longitude", Double.valueOf(value.split(",")[0]));//上线经度
@@ -156,8 +233,19 @@
jsonObject.put("Encrypt", 1);//坐标加密标识(1:GCJ-02测绘局标准,2:WGS84 GPS标准,3:BD-09百度标准,4:CGCS2000北斗标准,0:其他)
Map<String, Object> map = new HashMap<>();
map.put("operateLogin", jsonObject.toJSONString());
- String result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/operateLogin", map,null,"form");
- System.out.println("车辆经营上线接口:" + result);
+ Map<String, String> header = new HashMap<>();
+ header.put("Connection", "keep-alive");
+ header.put("Content-Type", "application/x-www-form-urlencoded");
+ header.put("Accept", "*/*");
+ header.put("Accept-Encoding", "gzip");
+ header.put("Accept-Charset", "utf-8");
+ String result = null;
+ try {
+ result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/operateLogin", map, header,"form").toString();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ System.err.println("--------------------------车辆经营上线接口------------------------:" + result);
}
}
@@ -172,7 +260,12 @@
String value = redisUtil.getValue("DRIVER" + driverId);
if(ToolUtil.isNotEmpty(value)){
JSONObject jsonObject = new JSONObject();
- jsonObject.put("LicenseId", driver.getDriveCard());//机动车驾驶证号
+ if (driver.getIdCard() == null){
+ return;
+ }else if (driver.getIdCard().isEmpty()){
+ return;
+ }
+ jsonObject.put("LicenseId", driver.getIdCard());//机动车驾驶证号
jsonObject.put("VehicleNo", car.getCarLicensePlate());//车辆号牌
jsonObject.put("LogoutTime", new Date());//车辆经营下线时间YYYYMMDDhhmmss
jsonObject.put("Longitude", Double.valueOf(value.split(",")[0]));//下线经度
@@ -180,8 +273,19 @@
jsonObject.put("Encrypt", 1);//坐标加密标识(1:GCJ-02测绘局标准,2:WGS84 GPS标准,3:BD-09百度标准,4:CGCS2000北斗标准,0:其他)
Map<String, Object> map = new HashMap<>();
map.put("operateLogout", jsonObject.toJSONString());
- String result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/operateLogout", map,null,"form");
- System.out.println("车辆经营下线接口:" + result);
+ Map<String, String> header = new HashMap<>();
+ header.put("Connection", "keep-alive");
+ header.put("Content-Type", "application/x-www-form-urlencoded");
+ header.put("Accept", "*/*");
+ header.put("Accept-Encoding", "gzip");
+ header.put("Accept-Charset", "utf-8");
+ String result = null;
+ try {
+ result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/operateLogout", map, header,"form").toString();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ System.err.println("--------------------------------车辆经营下线接口------------------------:" + result);
}
}
@@ -197,7 +301,12 @@
Car car = carService.selectById(orderPrivateCar.getCarId());
JSONObject jsonObject = new JSONObject();
jsonObject.put("OrderId", orderPrivateCar.getOrderNum());//订单号
- jsonObject.put("LicenseId", driver.getDriveCard());//机动车驾驶证号
+ if (driver.getIdCard() == null){
+ return;
+ }else if (driver.getIdCard().isEmpty()){
+ return;
+ }
+ jsonObject.put("LicenseId", driver.getIdCard());//机动车驾驶证号
jsonObject.put("FareType", query.get("id").toString());//运价类型编码
jsonObject.put("VehicleNo", car.getCarLicensePlate());//车辆号牌
jsonObject.put("DepLongitude", Double.valueOf(orderPrivateCar.getBoardingLon()));//车辆出发经度
@@ -222,8 +331,19 @@
jsonObject.put("WaitTime", orderPrivateCar.getWait() * 60);//等待时间(秒)
Map<String, Object> map = new HashMap<>();
map.put("operateDepart", jsonObject.toJSONString());
- String result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/operateDepart", map,null,"form");
- System.out.println("经营出发接口:" + result);
+ Map<String, String> header = new HashMap<>();
+ header.put("Connection", "keep-alive");
+ header.put("Content-Type", "application/x-www-form-urlencoded");
+ header.put("Accept", "*/*");
+ header.put("Accept-Encoding", "gzip");
+ header.put("Accept-Charset", "utf-8");
+ String result = null;
+ try {
+ result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/operateDepart", map,header,"form").toString();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ System.err.println("--------------------------------经营出发接口-------------------------:" + result);
}
@@ -243,8 +363,19 @@
jsonObject.put("DriveTime", Double.valueOf((orderPrivateCar.getGetoffTime().getTime() - orderPrivateCar.getBoardingTime().getTime()) / 1000).intValue());//载客时间(秒)
Map<String, Object> map = new HashMap<>();
map.put("operateArrive", jsonObject.toJSONString());
- String result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/operateArrive", map,null,"form");
- System.out.println("经营到达接口:" + result);
+ Map<String, String> header = new HashMap<>();
+ header.put("Connection", "keep-alive");
+ header.put("Content-Type", "application/x-www-form-urlencoded");
+ header.put("Accept", "*/*");
+ header.put("Accept-Encoding", "gzip");
+ header.put("Accept-Charset", "utf-8");
+ String result = null;
+ try {
+ result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/operateArrive", map, header,"form").toString();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ System.err.println("-------------------------------经营到达接口-------------------------:" + result);
}
@@ -252,18 +383,38 @@
* 经营支付接口
* @param orderId
*/
- public void operatePay(Integer orderId){
+ public void operatePay(Integer orderId) {
OrderPrivateCar orderPrivateCar = orderPrivateCarService.selectById(orderId);
Driver driver = driverService.selectById(orderPrivateCar.getDriverId());
Map<String, Object> query = systemPriceMapper.query(orderPrivateCar.getCompanyId(), 1, orderPrivateCar.getServerCarModelId());
Car car = carService.selectById(orderPrivateCar.getCarId());
ServerCarModel serverCarModel = serverCarModelMapper.selectById(orderPrivateCar.getServerCarModelId());
- TransactionDetails transactionDetails = transactionDetailsService.selectById(new EntityWrapper<TransactionDetails>().eq("orderType", 1).eq("orderId", orderId));
+ TransactionDetails transactionDetails = transactionDetailsService.selectOne(new EntityWrapper<TransactionDetails>().eq("orderType", 1).eq("orderId", orderId));
JSONObject jsonObject = new JSONObject();
jsonObject.put("OrderId", orderPrivateCar.getOrderNum());//订单号
- jsonObject.put("OnArea", 450204);//上车位置行政区划代码
+ if (orderPrivateCar.getBoardingLon()!=null && orderPrivateCar.getBoardingLat()!=null){
+ Map<String, String> geocode = null;
+ try {
+ geocode = gdMapGeocodingUtil.geocode(orderPrivateCar.getBoardingLon() + "", orderPrivateCar.getBoardingLat() + "");
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ if (geocode!=null){
+ jsonObject.put("OnArea", geocode.get("provinceCode"));//发起第行政区划代码
+ }else{
+ jsonObject.put("OnArea", 530602);//发起第行政区划代码
+ }
+ }else{
+ jsonObject.put("OnArea", 530602);//发起第行政区划代码
+ }
+// jsonObject.put("OnArea", 530602);//上车位置行政区划代码
jsonObject.put("DriverName", driver.getName());//机动车驾驶员
- jsonObject.put("LicenseId", driver.getDriveCard());//机动车驾驶证号
+ if (driver.getIdCard() == null){
+ return;
+ }else if (driver.getIdCard().isEmpty()){
+ return;
+ }
+ jsonObject.put("LicenseId", driver.getIdCard());//机动车驾驶证号
jsonObject.put("FareType", query.get("id").toString());//运价类型编码(由网约车公司定义,与运价信息接口保持一街)
jsonObject.put("VehicleNo", car.getCarLicensePlate());//车辆号牌
jsonObject.put("BookDepTime", orderPrivateCar.getTravelTime());//预计上车时间YYYYMMDDhhmmss
@@ -322,8 +473,19 @@
jsonObject.put("InvoiceStatus", "0");//发票状态(0:未开票,1:已开票,2:未知)
Map<String, Object> map = new HashMap<>();
map.put("operatePay", jsonObject.toJSONString());
- String result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/operatePay", map,null,"form");
- System.out.println("经营支付接口:" + result);
+ Map<String, String> header = new HashMap<>();
+ header.put("Connection", "keep-alive");
+ header.put("Content-Type", "application/x-www-form-urlencoded");
+ header.put("Accept", "*/*");
+ header.put("Accept-Encoding", "gzip");
+ header.put("Accept-Charset", "utf-8");
+ String result = null;
+ try {
+ result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/operatePay", map, header,"form").toString();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ System.err.println("-----------------------经营支付接口-----------------------:" + result);
}
@@ -331,7 +493,7 @@
* 驾驶员定位信息
* @param orderId
*/
- public void positionDriver(Integer orderId){
+ public void positionDriver(Integer orderId) {
OrderPrivateCar orderPrivateCar = orderPrivateCarService.selectById(orderId);
Driver driver = driverService.selectById(orderPrivateCar.getDriverId());
Car car = carService.selectById(orderPrivateCar.getCarId());
@@ -347,8 +509,8 @@
Double Elevation = orderPositions != null && orderPositions.size() > 0 ? Double.valueOf(orderPositions.get(orderPositions.size() - 1).getAltitude()) : 0D;
Double Speed = 0D;
if(orderPositions != null && orderPositions.size() > 1){
- Map<String, String> distance = gdMapElectricFenceUtil.getDistance(orderPositions.get(orderPositions.size() - 1).getLon() + "," + orderPositions.get(orderPositions.size() - 1).getLat(),
- orderPositions.get(orderPositions.size() - 0).getLon() + "," + orderPositions.get(orderPositions.size() - 0).getLat(), 0);
+ Map<String, String> distance = gdMapElectricFenceUtil.getDistance(orderPositions.get(orderPositions.size() - 2).getLon() + "," + orderPositions.get(orderPositions.size() - 2).getLat(),
+ orderPositions.get(orderPositions.size() - 1).getLon() + "," + orderPositions.get(orderPositions.size() - 1).getLat(), 0);
Speed = distance != null ? Double.valueOf(distance.get("distance")) / 1000 : 0D;
}
Integer state = 4;
@@ -367,8 +529,28 @@
}
JSONObject jsonObject = new JSONObject();
- jsonObject.put("LicenseId", driver.getDriveCard());//机动车驾驶证号
- jsonObject.put("DriverRegionCode", 450204);//行政区划代码
+ if (driver.getIdCard() == null){
+ return;
+ }else if (driver.getIdCard().isEmpty()){
+ return;
+ }
+ jsonObject.put("LicenseId", driver.getIdCard());//机动车驾驶证号
+ if (orderPrivateCar.getBoardingLon()!=null && orderPrivateCar.getBoardingLat()!=null){
+ Map<String, String> geocode = null;
+ try {
+ geocode = gdMapGeocodingUtil.geocode(orderPrivateCar.getBoardingLon() + "", orderPrivateCar.getBoardingLat() + "");
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ if (geocode!=null){
+ jsonObject.put("DriverRegionCode", geocode.get("provinceCode"));//发起第行政区划代码
+ }else{
+ jsonObject.put("DriverRegionCode", 530602);//发起第行政区划代码
+ }
+ }else{
+ jsonObject.put("DriverRegionCode", 530602);//发起第行政区划代码
+ }
+// jsonObject.put("DriverRegionCode", 530602);//行政区划代码
jsonObject.put("VehicleNo", car.getCarLicensePlate());//车辆号牌
jsonObject.put("PositionTime", new Date());//定位时间(时间戳)
jsonObject.put("Longitude", Longitude);//经度
@@ -381,8 +563,18 @@
jsonObject.put("OrderId", orderNum);//订单编号
Map<String, Object> map = new HashMap<>();
map.put("positionDriver", jsonObject.toJSONString());
- String result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/positionDriver", map,null,"form");
- System.out.println("驾驶员定位信息:" + result);
+ Map<String, String> header = new HashMap<>();
+ header.put("Connection", "keep-alive");
+ header.put("Content-Type", "application/x-www-form-urlencoded");
+ header.put("Accept", "*/*");
+ header.put("Accept-Encoding", "gzip");
+ header.put("Accept-Charset", "utf-8");
+ String result = null;
+ try {
+ result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/positionDriver", map, header,"form").toString();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
}
@@ -390,7 +582,7 @@
* 车辆定位信息
* @param orderId
*/
- public void positionVehicle(Integer orderId){
+ public void positionVehicle(Integer orderId) {
OrderPrivateCar orderPrivateCar = orderPrivateCarService.selectById(orderId);
Car car = carService.selectById(orderPrivateCar.getCarId());
List<OrderPosition> orderPositions = null;
@@ -405,8 +597,8 @@
Double Elevation = orderPositions != null && orderPositions.size() > 0 ? Double.valueOf(orderPositions.get(orderPositions.size() - 1).getAltitude()) : 0D;
Double Speed = 0D;
if(orderPositions != null && orderPositions.size() > 1){
- Map<String, String> distance = gdMapElectricFenceUtil.getDistance(orderPositions.get(orderPositions.size() - 1).getLon() + "," + orderPositions.get(orderPositions.size() - 1).getLat(),
- orderPositions.get(orderPositions.size() - 0).getLon() + "," + orderPositions.get(orderPositions.size() - 0).getLat(), 0);
+ Map<String, String> distance = gdMapElectricFenceUtil.getDistance(orderPositions.get(orderPositions.size() - 2).getLon() + "," + orderPositions.get(orderPositions.size() - 2).getLat(),
+ orderPositions.get(orderPositions.size() - 1).getLon() + "," + orderPositions.get(orderPositions.size() - 1).getLat(), 0);
Speed = distance != null ? Double.valueOf(distance.get("distance")) / 1000 : 0D;
}
Integer state = 4;
@@ -425,7 +617,22 @@
}
JSONObject jsonObject = new JSONObject();
jsonObject.put("VehicleNo", car.getCarLicensePlate());//车辆号牌
- jsonObject.put("VehicleRegionCode", 450204);//行政区划代码
+ if (orderPrivateCar.getBoardingLon()!=null && orderPrivateCar.getBoardingLat()!=null){
+ Map<String, String> geocode = null;
+ try {
+ geocode = gdMapGeocodingUtil.geocode(orderPrivateCar.getBoardingLon() + "", orderPrivateCar.getBoardingLat() + "");
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ if (geocode!=null){
+ jsonObject.put("VehicleRegionCode", geocode.get("provinceCode"));//发起第行政区划代码
+ }else{
+ jsonObject.put("VehicleRegionCode", 530602);//发起第行政区划代码
+ }
+ }else{
+ jsonObject.put("VehicleRegionCode", 530602);//发起第行政区划代码
+ }
+// jsonObject.put("VehicleRegionCode", 530602);//行政区划代码
jsonObject.put("PositionTime", new Date());//定位时间(时间戳)
jsonObject.put("Longitude", Longitude);//经度
jsonObject.put("Latitude", Latitude);//纬度
@@ -440,8 +647,18 @@
jsonObject.put("OrderId", orderNum);//订单编号(非营运状态下填"0")
Map<String, Object> map = new HashMap<>();
map.put("positionVehicle", jsonObject.toJSONString());
- String result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/positionVehicle", map,null,"form");
- System.out.println("车辆定位信息:" + result);
+ Map<String, String> header = new HashMap<>();
+ header.put("Connection", "keep-alive");
+ header.put("Content-Type", "application/x-www-form-urlencoded");
+ header.put("Accept", "*/*");
+ header.put("Accept-Encoding", "gzip");
+ header.put("Accept-Charset", "utf-8");
+ String result = null;
+ try {
+ result = httpClientUtil.pushHttpRequset("POST", path + "ministryOfTransport/positionVehicle", map, header,"form").toString();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
}
--
Gitblit v1.7.1