|
@@ -0,0 +1,88 @@
|
|
|
+package com.usky.issue.service.job;
|
|
|
+
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.usky.issue.service.util.HttpClientUtils;
|
|
|
+import org.springframework.stereotype.Component;
|
|
|
+
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 外滩27号介谷物管家平台消息转发
|
|
|
+ */
|
|
|
+@Component
|
|
|
+public class JgDataForward {
|
|
|
+ public JSONObject addHeart(String requestBody) {
|
|
|
+ JSONObject eventVO = JSONObject.parseObject(requestBody);
|
|
|
+ JSONObject map = new JSONObject();
|
|
|
+ map.put("deviceId", "YHYH"+eventVO.get("devId"));
|
|
|
+ List<Map<String, Object>> devs = (List) JSONObject.parseArray(JSONObject.toJSONString(eventVO.get("devs")));
|
|
|
+ List<Map<String, Object>> dp = (List) JSONObject.parseArray(JSONObject.toJSONString(devs.get(0).get("dp")));
|
|
|
+ String battery = "";
|
|
|
+ String devSignal = "";
|
|
|
+ String waterPressure = "";
|
|
|
+ if (devs.get(0).get("deviceType").equals("2")||devs.get(0).get("deviceType").equals("5")){
|
|
|
+ for (int i = 0; i < dp.size(); i++) {
|
|
|
+ if (dp.get(i).get("serial").equals("201")){
|
|
|
+ battery = dp.get(i).get("value").toString();
|
|
|
+ }else if (dp.get(i).get("serial").equals("202")){
|
|
|
+ devSignal = dp.get(i).get("value").toString();
|
|
|
+ }else if (dp.get(i).get("serial").equals("203")){
|
|
|
+ waterPressure = dp.get(i).get("value").toString();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (devs.get(0).get("deviceType").equals("2")){
|
|
|
+ map.put("dataJson", "{\"battery\":"+battery+",\"devSignal\":"+devSignal+",\"waterPressure\":"+waterPressure+"," +
|
|
|
+ "\"devStatus\":"+0+"}");
|
|
|
+ }else {
|
|
|
+ map.put("dataJson", "{\"battery\":"+battery+",\"devSignal\":"+devSignal+",\"waterLevel\":"+waterPressure+"," +
|
|
|
+ "\"devStatus\":"+0+"}");
|
|
|
+ }
|
|
|
+ }else if (devs.get(0).get("deviceType").equals("7")){
|
|
|
+ String voltageA = "";
|
|
|
+ String voltageB = "";
|
|
|
+ String voltageC = "";
|
|
|
+ String currentA = "";
|
|
|
+ String currentB = "";
|
|
|
+ String currentC = "";
|
|
|
+ String temperatureA = "";
|
|
|
+ String temperatureB = "";
|
|
|
+ String temperatureC = "";
|
|
|
+ for (int i = 0; i < dp.size(); i++) {
|
|
|
+ if (dp.get(i).get("serial").equals("65")){
|
|
|
+ voltageA = dp.get(i).get("value").toString();
|
|
|
+ }else if (dp.get(i).get("serial").equals("66")){
|
|
|
+ voltageB = dp.get(i).get("value").toString();
|
|
|
+ }else if (dp.get(i).get("serial").equals("67")){
|
|
|
+ voltageC = dp.get(i).get("value").toString();
|
|
|
+ }else if (dp.get(i).get("serial").equals("68")){
|
|
|
+ currentA = dp.get(i).get("value").toString();
|
|
|
+ }else if (dp.get(i).get("serial").equals("69")){
|
|
|
+ currentB = dp.get(i).get("value").toString();
|
|
|
+ }else if (dp.get(i).get("serial").equals("70")){
|
|
|
+ currentC = dp.get(i).get("value").toString();
|
|
|
+ }else if (dp.get(i).get("serial").equals("71")){
|
|
|
+ temperatureA = dp.get(i).get("value").toString();
|
|
|
+ }else if (dp.get(i).get("serial").equals("72")){
|
|
|
+ temperatureB = dp.get(i).get("value").toString();
|
|
|
+ }else if (dp.get(i).get("serial").equals("73")){
|
|
|
+ temperatureC = dp.get(i).get("value").toString();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ map.put("dataJson", "{\"voltageA\":"+voltageA+",\"voltageB\":"+voltageB+",\"voltageC\":"+voltageC+"," +
|
|
|
+ "\"currentA\":"+currentA+",\"currentB\":"+currentB+",\"currentC\":"+currentC+",\"temperatureA\":"+temperatureA+",\"temperatureB\":"+temperatureB+",\"temperatureC\":"+temperatureC+"," +
|
|
|
+ "\"devStatus\":"+0+"}");
|
|
|
+ }else if (devs.get(0).get("deviceType").equals("6")){
|
|
|
+// String powerAlarm = "";
|
|
|
+// String devWorking = "";
|
|
|
+// String voltageC = "";
|
|
|
+// String currentA = "";
|
|
|
+ }
|
|
|
+ String resultString = HttpClientUtils.doPostJson("http://adaptor.dbmcloud.tech:8802/dbm/iot/receive/data/all"
|
|
|
+ ,map.toJSONString());
|
|
|
+ System.out.print("发送数据"+map.toJSONString());
|
|
|
+ JSONObject resultVO = JSONObject.parseObject(resultString);
|
|
|
+ System.out.print("返回数据"+resultString);
|
|
|
+ return resultVO;
|
|
|
+ }
|
|
|
+}
|