|
@@ -1,8 +1,10 @@
|
|
|
package com.xyhy.xingshenmqttcluster.common.message;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.xyhy.xingshenmqttcluster.common.Common;
|
|
|
import com.xyhy.xingshenmqttcluster.common.HttpRequest;
|
|
|
+import com.xyhy.xingshenmqttcluster.common.domain.IvCar;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
|
@@ -11,15 +13,44 @@ public class MessageHandle {
|
|
|
public static final Logger log = LoggerFactory.getLogger(MessageHandle.class);
|
|
|
|
|
|
public static void vehicleOnline(String topic, JSONObject msg){
|
|
|
-
|
|
|
+ JSONObject msgBody = JSONObject.parseObject(msg.getString("msgBody"));
|
|
|
+ String ivCarUrl = getUrl() + "cloud/chargapi/restapi/robot/sysnCar";
|
|
|
+ JSONObject data = msgBody.getJSONObject("data");
|
|
|
+ IvCar ivCar = new IvCar();
|
|
|
+ ivCar.setIvCarId(msgBody.getString("capacityResourceObjectId"));
|
|
|
+ ivCar.setIvCapacityResourceId(msgBody.getString("capacityResourceId"));
|
|
|
+ ivCar.setStatus(1);
|
|
|
+ String ivCarParam = JSONObject.toJSONString(ivCar);
|
|
|
+ HttpRequest.sendPost(ivCarUrl, ivCarParam);
|
|
|
}
|
|
|
|
|
|
public static void vehicleOffline(String topic, JSONObject msg){
|
|
|
-
|
|
|
+ JSONObject msgBody = JSONObject.parseObject(msg.getString("msgBody"));
|
|
|
+ String ivCarUrl = getUrl() + "cloud/chargapi/restapi/robot/sysnCar";
|
|
|
+ JSONObject data = msgBody.getJSONObject("data");
|
|
|
+ IvCar ivCar = new IvCar();
|
|
|
+ ivCar.setIvCarId(msgBody.getString("capacityResourceObjectId"));
|
|
|
+ ivCar.setIvCapacityResourceId(msgBody.getString("capacityResourceId"));
|
|
|
+ ivCar.setStatus(0);
|
|
|
+ String ivCarParam = JSONObject.toJSONString(ivCar);
|
|
|
+ HttpRequest.sendPost(ivCarUrl, ivCarParam);
|
|
|
}
|
|
|
|
|
|
public static void fuelState(String topic, JSONObject msg){
|
|
|
-
|
|
|
+ String url = getUrl() + "cloud/chargapi/restapi/robot/sysnCar";
|
|
|
+ JSONObject msgBody = JSONObject.parseObject(msg.getString("msgBody"));
|
|
|
+ JSONObject data = msgBody.getJSONObject("data");
|
|
|
+ IvCar ivCar = new IvCar();
|
|
|
+ ivCar.setIvCarId(msgBody.getString("capacityResourceObjectId"));
|
|
|
+ ivCar.setIvCapacityResourceId(msgBody.getString("capacityResourceId"));
|
|
|
+ ivCar.setAmmeter(data.getString("ammeter"));
|
|
|
+ ivCar.setOdometer(data.getString("odometer"));
|
|
|
+ ivCar.setResidualFuel(data.getString("residualFuel"));
|
|
|
+ ivCar.setChargeStatus(data.getInteger("isCharging"));
|
|
|
+ ivCar.setEndurance(data.getString("endurance"));
|
|
|
+ ivCar.setVoltage(data.getString("voltage"));
|
|
|
+ String param = JSONObject.toJSONString(ivCar);
|
|
|
+ HttpRequest.sendPost(url, param);
|
|
|
}
|
|
|
|
|
|
public static void vehicleState(String topic, JSONObject msg){
|
|
@@ -27,27 +58,59 @@ public class MessageHandle {
|
|
|
}
|
|
|
|
|
|
public static void vehicleStart(String topic, JSONObject msg){
|
|
|
- JSONObject msgBody = JSONObject.parseObject(msg.getString("msgBody"));
|
|
|
- String capacityResourceObjectId = msgBody.getString("capacityResourceObjectId");
|
|
|
- String url = Common.getConfigByName("charging.interface.api.url.test") + "/tcpcarControl";
|
|
|
- String param = "ivCapacityResourceld" + "=" + capacityResourceObjectId + "&" + "messageType" + "=" + "2";
|
|
|
- log.info(param);
|
|
|
- Object o = HttpRequest.sendPost(url, param);
|
|
|
+ log.info("运力资源对象起步事件");
|
|
|
log.info(msg.toJSONString());
|
|
|
+ JSONObject msgBody = JSONObject.parseObject(msg.getString("msgBody"));
|
|
|
+ String capacityResourceObjectId = msgBody.getString("capacityResourceId");
|
|
|
+ String url = getUrl() + "cloud/chargapi/restapi/robot/tcpCarControl";
|
|
|
+ JSONObject obj = new JSONObject();
|
|
|
+ obj.put("ivCarId", msgBody.getString("capacityResourceObjectId"));
|
|
|
+ obj.put("ivCapacityResourceId", capacityResourceObjectId);
|
|
|
+ obj.put("messageType", "2");
|
|
|
+ String param = obj.toJSONString();
|
|
|
+ HttpRequest.sendPost(url, param);
|
|
|
+ String ivCarUrl = getUrl() + "cloud/chargapi/restapi/robot/sysnCar";
|
|
|
+ JSONObject data = msgBody.getJSONObject("data");
|
|
|
+ IvCar ivCar = new IvCar();
|
|
|
+ ivCar.setIvCarId(msgBody.getString("capacityResourceObjectId"));
|
|
|
+ ivCar.setIvCapacityResourceId(msgBody.getString("capacityResourceId"));
|
|
|
+ ivCar.setLatitude(data.getString("latitude"));
|
|
|
+ ivCar.setAzimuth(data.getString("azimuth"));
|
|
|
+ ivCar.setLongitude(data.getString("longitude"));
|
|
|
+ String ivCarParam = JSONObject.toJSONString(ivCar);
|
|
|
+ HttpRequest.sendPost(ivCarUrl, ivCarParam);
|
|
|
}
|
|
|
|
|
|
public static void arriveStationRequest(String topic, JSONObject msg){
|
|
|
+ log.info("运力资源对象到达停靠点");
|
|
|
+ log.info(msg.toJSONString());
|
|
|
JSONObject msgBody = JSONObject.parseObject(msg.getString("msgBody"));
|
|
|
String capacityResourceObjectId = msgBody.getString("capacityResourceId");
|
|
|
JSONObject data = msgBody.getJSONObject("data");
|
|
|
JSONObject station = data.getJSONObject("station");
|
|
|
String stationId = station.getString("stationId");
|
|
|
- String url = Common.getConfigByName("charging.interface.api.url.test") + "/tcpcarControl";
|
|
|
- String param = "ivCapacityResourceld" + "=" + capacityResourceObjectId + "&" +
|
|
|
- "ivParkPointId" + "=" + stationId + "&" +
|
|
|
- "messageType" + "=" + "1";
|
|
|
- log.info(param);
|
|
|
- Object o = HttpRequest.sendPost(url, param);
|
|
|
+ String url = getUrl() + "cloud/chargapi/restapi/robot/tcpCarControl";
|
|
|
+ JSONObject obj = new JSONObject();
|
|
|
+ obj.put("ivCapacityResourceId", capacityResourceObjectId);
|
|
|
+ obj.put("ivParkPointId", stationId);
|
|
|
+ obj.put("messageType", "1");
|
|
|
+ obj.put("ivCarId", msgBody.getString("capacityResourceObjectId"));
|
|
|
+ String param = obj.toJSONString();
|
|
|
+ HttpRequest.sendPost(url, param);
|
|
|
+ String ivCarUrl = getUrl() + "cloud/chargapi/restapi/robot/sysnCar";
|
|
|
+ IvCar ivCar = new IvCar();
|
|
|
+ ivCar.setIvCarId(msgBody.getString("capacityResourceObjectId"));
|
|
|
+ ivCar.setIvCapacityResourceId(msgBody.getString("capacityResourceId"));
|
|
|
+ ivCar.setLatitude(station.getString("latitude"));
|
|
|
+ ivCar.setAzimuth(station.getString("azimuth"));
|
|
|
+ ivCar.setRegionId(station.getInteger("regionId"));
|
|
|
+ ivCar.setLongitude(station.getString("longitude"));
|
|
|
+ String ivCarParam = JSONObject.toJSONString(ivCar);
|
|
|
+ HttpRequest.sendPost(ivCarUrl, ivCarParam);
|
|
|
+ }
|
|
|
+
|
|
|
+ public static void fault(String topic, JSONObject msg) {
|
|
|
+ log.info("故障告警");
|
|
|
log.info(msg.toJSONString());
|
|
|
}
|
|
|
|
|
@@ -74,4 +137,14 @@ public class MessageHandle {
|
|
|
public static void startCarFailMsg(String topic, JSONObject msg){
|
|
|
|
|
|
}
|
|
|
+
|
|
|
+ private static String getUrl() {
|
|
|
+ String url = "";
|
|
|
+ if (Common.getConfigByName("charging.interface.api.url.status").equals("run")){
|
|
|
+ url = Common.getConfigByName("charging.interface.api.url.produce");
|
|
|
+ } else {
|
|
|
+ url = Common.getConfigByName("charging.interface.api.url.test");
|
|
|
+ }
|
|
|
+ return url;
|
|
|
+ }
|
|
|
}
|