diff --git a/src/main/java/org/well/mysql/sink/WellSink.java b/src/main/java/org/well/mysql/sink/WellSink.java
index f755f92..f0fc6af 100644
--- a/src/main/java/org/well/mysql/sink/WellSink.java
+++ b/src/main/java/org/well/mysql/sink/WellSink.java
@@ -125,9 +125,11 @@
// temp="{\"mType\":\"Event\",\"devType\":\"Concentrator\",\"devCode\":\"00003\",\"mBody\":{\"logTime\":\"20190605002024\",\"bType\":\"ConcentratorOnline\"},\"ts\":1559665224343}";
temp="{\"mType\":\"Data\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"datas\":[{\"value\":\"00\",\"uptime\":\"20190605000000\"}],\"logTime\":\"201906010003002\",\"bType\":\"WellData\"},\"ts\":1559665802828}";
-// temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":7.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
+ temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"11201900001\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":2.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
// temp="{\"mType\":\"Event\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"eventType\":[\"LiquidPressureError\"],\"logTime\":\"20190510134635\",\"bType\":\"LiquidEvent\"},\"ts\":1557467195358}";
// temp="{\"mType\":\"Event\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"eventType\":[\"WellLowBatteryAlarm\"],\"logTime\":\"20190624114710\",\"bType\":\"WellEvent\"},\"ts\":1560484030810}";
+// temp="{\"mType\":\"Data\",\"devType\":\"Locator\",\"devCode\":\"71201900001\",\"mBody\":{\"datas\":[{\"longitude\":126.243324343,\"latitude\":39.2546546546,\"uptime\":\"20190809140900\"}],\"logTime\":\"20190809141012\",\"bType\":\"LocatorData\"},\"ts\":1565331012453}";
+
AbstractResponse resp = ResponseResolver.makeResponse(temp);
resp.setAc(ac);
resp.process(temp);
diff --git a/src/main/java/org/well/mysql/sink/WellSink.java b/src/main/java/org/well/mysql/sink/WellSink.java
index f755f92..f0fc6af 100644
--- a/src/main/java/org/well/mysql/sink/WellSink.java
+++ b/src/main/java/org/well/mysql/sink/WellSink.java
@@ -125,9 +125,11 @@
// temp="{\"mType\":\"Event\",\"devType\":\"Concentrator\",\"devCode\":\"00003\",\"mBody\":{\"logTime\":\"20190605002024\",\"bType\":\"ConcentratorOnline\"},\"ts\":1559665224343}";
temp="{\"mType\":\"Data\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"datas\":[{\"value\":\"00\",\"uptime\":\"20190605000000\"}],\"logTime\":\"201906010003002\",\"bType\":\"WellData\"},\"ts\":1559665802828}";
-// temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":7.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
+ temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"11201900001\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":2.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
// temp="{\"mType\":\"Event\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"eventType\":[\"LiquidPressureError\"],\"logTime\":\"20190510134635\",\"bType\":\"LiquidEvent\"},\"ts\":1557467195358}";
// temp="{\"mType\":\"Event\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"eventType\":[\"WellLowBatteryAlarm\"],\"logTime\":\"20190624114710\",\"bType\":\"WellEvent\"},\"ts\":1560484030810}";
+// temp="{\"mType\":\"Data\",\"devType\":\"Locator\",\"devCode\":\"71201900001\",\"mBody\":{\"datas\":[{\"longitude\":126.243324343,\"latitude\":39.2546546546,\"uptime\":\"20190809140900\"}],\"logTime\":\"20190809141012\",\"bType\":\"LocatorData\"},\"ts\":1565331012453}";
+
AbstractResponse resp = ResponseResolver.makeResponse(temp);
resp.setAc(ac);
resp.process(temp);
diff --git a/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java b/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
index 93e2b2b..33531af 100644
--- a/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
+++ b/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
@@ -10,7 +10,10 @@
LiquidPressureFail("液位静压探头采集失败", 3),
LiquidPressureError("液位静压探头数据异常", 4),
LiquidUnknown("液位未知异常", 5),
- OVER_THRESH("液位超限", 6);
+ OVER_THRESH("液位超限", 6),
+ OVER_THRESH1("一级液位超限", 7),
+ OVER_THRESH2("二级液位超限", 8),
+ OVER_THRESH3("三级液位超限", 9);
// 成员变量
private String name;
diff --git a/src/main/java/org/well/mysql/sink/WellSink.java b/src/main/java/org/well/mysql/sink/WellSink.java
index f755f92..f0fc6af 100644
--- a/src/main/java/org/well/mysql/sink/WellSink.java
+++ b/src/main/java/org/well/mysql/sink/WellSink.java
@@ -125,9 +125,11 @@
// temp="{\"mType\":\"Event\",\"devType\":\"Concentrator\",\"devCode\":\"00003\",\"mBody\":{\"logTime\":\"20190605002024\",\"bType\":\"ConcentratorOnline\"},\"ts\":1559665224343}";
temp="{\"mType\":\"Data\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"datas\":[{\"value\":\"00\",\"uptime\":\"20190605000000\"}],\"logTime\":\"201906010003002\",\"bType\":\"WellData\"},\"ts\":1559665802828}";
-// temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":7.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
+ temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"11201900001\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":2.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
// temp="{\"mType\":\"Event\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"eventType\":[\"LiquidPressureError\"],\"logTime\":\"20190510134635\",\"bType\":\"LiquidEvent\"},\"ts\":1557467195358}";
// temp="{\"mType\":\"Event\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"eventType\":[\"WellLowBatteryAlarm\"],\"logTime\":\"20190624114710\",\"bType\":\"WellEvent\"},\"ts\":1560484030810}";
+// temp="{\"mType\":\"Data\",\"devType\":\"Locator\",\"devCode\":\"71201900001\",\"mBody\":{\"datas\":[{\"longitude\":126.243324343,\"latitude\":39.2546546546,\"uptime\":\"20190809140900\"}],\"logTime\":\"20190809141012\",\"bType\":\"LocatorData\"},\"ts\":1565331012453}";
+
AbstractResponse resp = ResponseResolver.makeResponse(temp);
resp.setAc(ac);
resp.process(temp);
diff --git a/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java b/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
index 93e2b2b..33531af 100644
--- a/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
+++ b/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
@@ -10,7 +10,10 @@
LiquidPressureFail("液位静压探头采集失败", 3),
LiquidPressureError("液位静压探头数据异常", 4),
LiquidUnknown("液位未知异常", 5),
- OVER_THRESH("液位超限", 6);
+ OVER_THRESH("液位超限", 6),
+ OVER_THRESH1("一级液位超限", 7),
+ OVER_THRESH2("二级液位超限", 8),
+ OVER_THRESH3("三级液位超限", 9);
// 成员变量
private String name;
diff --git a/src/main/java/org/well/well/base/DeviceTypeEnum.java b/src/main/java/org/well/well/base/DeviceTypeEnum.java
index 4d84779..29c5bad 100644
--- a/src/main/java/org/well/well/base/DeviceTypeEnum.java
+++ b/src/main/java/org/well/well/base/DeviceTypeEnum.java
@@ -18,7 +18,8 @@
TempHumi("温湿度监测仪", 13),
Concentrator("数据集中器", 14),
Lamphouse("灯箱监测仪", 15),
- Dig("开挖监测仪", 16);
+ Dig("开挖监测仪", 16),
+ Locator("井盖定位监测仪", 17);
// 成员变量
diff --git a/src/main/java/org/well/mysql/sink/WellSink.java b/src/main/java/org/well/mysql/sink/WellSink.java
index f755f92..f0fc6af 100644
--- a/src/main/java/org/well/mysql/sink/WellSink.java
+++ b/src/main/java/org/well/mysql/sink/WellSink.java
@@ -125,9 +125,11 @@
// temp="{\"mType\":\"Event\",\"devType\":\"Concentrator\",\"devCode\":\"00003\",\"mBody\":{\"logTime\":\"20190605002024\",\"bType\":\"ConcentratorOnline\"},\"ts\":1559665224343}";
temp="{\"mType\":\"Data\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"datas\":[{\"value\":\"00\",\"uptime\":\"20190605000000\"}],\"logTime\":\"201906010003002\",\"bType\":\"WellData\"},\"ts\":1559665802828}";
-// temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":7.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
+ temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"11201900001\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":2.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
// temp="{\"mType\":\"Event\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"eventType\":[\"LiquidPressureError\"],\"logTime\":\"20190510134635\",\"bType\":\"LiquidEvent\"},\"ts\":1557467195358}";
// temp="{\"mType\":\"Event\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"eventType\":[\"WellLowBatteryAlarm\"],\"logTime\":\"20190624114710\",\"bType\":\"WellEvent\"},\"ts\":1560484030810}";
+// temp="{\"mType\":\"Data\",\"devType\":\"Locator\",\"devCode\":\"71201900001\",\"mBody\":{\"datas\":[{\"longitude\":126.243324343,\"latitude\":39.2546546546,\"uptime\":\"20190809140900\"}],\"logTime\":\"20190809141012\",\"bType\":\"LocatorData\"},\"ts\":1565331012453}";
+
AbstractResponse resp = ResponseResolver.makeResponse(temp);
resp.setAc(ac);
resp.process(temp);
diff --git a/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java b/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
index 93e2b2b..33531af 100644
--- a/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
+++ b/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
@@ -10,7 +10,10 @@
LiquidPressureFail("液位静压探头采集失败", 3),
LiquidPressureError("液位静压探头数据异常", 4),
LiquidUnknown("液位未知异常", 5),
- OVER_THRESH("液位超限", 6);
+ OVER_THRESH("液位超限", 6),
+ OVER_THRESH1("一级液位超限", 7),
+ OVER_THRESH2("二级液位超限", 8),
+ OVER_THRESH3("三级液位超限", 9);
// 成员变量
private String name;
diff --git a/src/main/java/org/well/well/base/DeviceTypeEnum.java b/src/main/java/org/well/well/base/DeviceTypeEnum.java
index 4d84779..29c5bad 100644
--- a/src/main/java/org/well/well/base/DeviceTypeEnum.java
+++ b/src/main/java/org/well/well/base/DeviceTypeEnum.java
@@ -18,7 +18,8 @@
TempHumi("温湿度监测仪", 13),
Concentrator("数据集中器", 14),
Lamphouse("灯箱监测仪", 15),
- Dig("开挖监测仪", 16);
+ Dig("开挖监测仪", 16),
+ Locator("井盖定位监测仪", 17);
// 成员变量
diff --git a/src/main/java/org/well/well/core/util/DecimalUtils.java b/src/main/java/org/well/well/core/util/DecimalUtils.java
new file mode 100644
index 0000000..2d99778
--- /dev/null
+++ b/src/main/java/org/well/well/core/util/DecimalUtils.java
@@ -0,0 +1,11 @@
+package org.well.well.core.util;
+
+import java.text.DecimalFormat;
+
+/**
+ * Created by Administrator on 2015/2/25.
+ */
+public class DecimalUtils {
+ public static DecimalFormat df6 = new DecimalFormat("####.000000");
+
+}
diff --git a/src/main/java/org/well/mysql/sink/WellSink.java b/src/main/java/org/well/mysql/sink/WellSink.java
index f755f92..f0fc6af 100644
--- a/src/main/java/org/well/mysql/sink/WellSink.java
+++ b/src/main/java/org/well/mysql/sink/WellSink.java
@@ -125,9 +125,11 @@
// temp="{\"mType\":\"Event\",\"devType\":\"Concentrator\",\"devCode\":\"00003\",\"mBody\":{\"logTime\":\"20190605002024\",\"bType\":\"ConcentratorOnline\"},\"ts\":1559665224343}";
temp="{\"mType\":\"Data\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"datas\":[{\"value\":\"00\",\"uptime\":\"20190605000000\"}],\"logTime\":\"201906010003002\",\"bType\":\"WellData\"},\"ts\":1559665802828}";
-// temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":7.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
+ temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"11201900001\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":2.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
// temp="{\"mType\":\"Event\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"eventType\":[\"LiquidPressureError\"],\"logTime\":\"20190510134635\",\"bType\":\"LiquidEvent\"},\"ts\":1557467195358}";
// temp="{\"mType\":\"Event\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"eventType\":[\"WellLowBatteryAlarm\"],\"logTime\":\"20190624114710\",\"bType\":\"WellEvent\"},\"ts\":1560484030810}";
+// temp="{\"mType\":\"Data\",\"devType\":\"Locator\",\"devCode\":\"71201900001\",\"mBody\":{\"datas\":[{\"longitude\":126.243324343,\"latitude\":39.2546546546,\"uptime\":\"20190809140900\"}],\"logTime\":\"20190809141012\",\"bType\":\"LocatorData\"},\"ts\":1565331012453}";
+
AbstractResponse resp = ResponseResolver.makeResponse(temp);
resp.setAc(ac);
resp.process(temp);
diff --git a/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java b/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
index 93e2b2b..33531af 100644
--- a/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
+++ b/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
@@ -10,7 +10,10 @@
LiquidPressureFail("液位静压探头采集失败", 3),
LiquidPressureError("液位静压探头数据异常", 4),
LiquidUnknown("液位未知异常", 5),
- OVER_THRESH("液位超限", 6);
+ OVER_THRESH("液位超限", 6),
+ OVER_THRESH1("一级液位超限", 7),
+ OVER_THRESH2("二级液位超限", 8),
+ OVER_THRESH3("三级液位超限", 9);
// 成员变量
private String name;
diff --git a/src/main/java/org/well/well/base/DeviceTypeEnum.java b/src/main/java/org/well/well/base/DeviceTypeEnum.java
index 4d84779..29c5bad 100644
--- a/src/main/java/org/well/well/base/DeviceTypeEnum.java
+++ b/src/main/java/org/well/well/base/DeviceTypeEnum.java
@@ -18,7 +18,8 @@
TempHumi("温湿度监测仪", 13),
Concentrator("数据集中器", 14),
Lamphouse("灯箱监测仪", 15),
- Dig("开挖监测仪", 16);
+ Dig("开挖监测仪", 16),
+ Locator("井盖定位监测仪", 17);
// 成员变量
diff --git a/src/main/java/org/well/well/core/util/DecimalUtils.java b/src/main/java/org/well/well/core/util/DecimalUtils.java
new file mode 100644
index 0000000..2d99778
--- /dev/null
+++ b/src/main/java/org/well/well/core/util/DecimalUtils.java
@@ -0,0 +1,11 @@
+package org.well.well.core.util;
+
+import java.text.DecimalFormat;
+
+/**
+ * Created by Administrator on 2015/2/25.
+ */
+public class DecimalUtils {
+ public static DecimalFormat df6 = new DecimalFormat("####.000000");
+
+}
diff --git a/src/main/java/org/well/well/core/util/HttpClientUtils.java b/src/main/java/org/well/well/core/util/HttpClientUtils.java
new file mode 100644
index 0000000..54fb984
--- /dev/null
+++ b/src/main/java/org/well/well/core/util/HttpClientUtils.java
@@ -0,0 +1,139 @@
+package org.well.well.core.util;
+
+
+
+import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.HttpStatus;
+import org.apache.commons.httpclient.methods.GetMethod;
+import org.apache.commons.httpclient.methods.PostMethod;
+
+import java.io.IOException;
+
+public class HttpClientUtils {
+
+ /**
+ * ���� post������ʱ���Ӧ�ò����ݴ��ݲ�����ͬ���ز�ͬ���
+ */
+ public static String post(String uri, String body) {
+ HttpClient client = new HttpClient();
+ client.setTimeout(6000);
+ PostMethod method = new PostMethod(uri);
+ // for (Map.Entry entry : headers.entrySet()) {
+ method.addRequestHeader("Content-type",
+ "application/json; charset=utf-8");
+ method.addRequestHeader("Accept", "application/json");
+// method.addRequestHeader("J-WSSE", JWSSE);
+ // method.setEntity(new StringEntity(jsonParam.toString(),
+ // Charset.forName("UTF-8")));
+
+ // method.setRequestHeader(entry.getKey(), entry.getValue());
+ // method.setRequestHeader("Accept-Charset", "UTF-8");
+ // }
+ method.setRequestBody(body);
+ try {
+ int statusCode = client.executeMethod(method);
+ if (statusCode == HttpStatus.SC_OK) {
+ return new String(method.getResponseBody(), "UTF-8");
+ // return method.getResponseBodyAsString();
+ }
+
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ /**
+ * post�ύ��
+ */
+ public static String postForm(String uri, String body) {
+ HttpClient client = new HttpClient();
+ client.setTimeout(6000);
+ PostMethod method = new PostMethod(uri);
+ method.addRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");//
+ method.addRequestHeader("Accept", "application/json");
+ method.setRequestBody(body);
+ try {
+ int statusCode = client.executeMethod(method);
+ if (statusCode == HttpStatus.SC_OK) {
+ return new String(method.getResponseBody(), "UTF-8");
+// return method.getResponseBodyAsString();
+ // return method.getResponseBodyAsString();
+ }
+
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return e.getMessage();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return e.getMessage();
+ }
+ return null;
+ }
+
+ /**
+ * ���� get����
+ */
+ @SuppressWarnings("deprecation")
+ public static String get(String uri) {
+ HttpClient client = new HttpClient();
+ client.setTimeout(6000);
+ GetMethod method = new GetMethod(uri);
+ try {
+ int statusCode = client.executeMethod(method);
+ if (statusCode == HttpStatus.SC_OK) {
+ return method.getResponseBodyAsString();
+ }
+
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ public static void main(String[] args) throws Exception {
+ // try {
+ // System.out
+ // .println(HTTP
+ // .get("http://v.juhe.cn/sms/send?mobile=13691291634&tpl_id=42731&tpl_value=%23username%23%3D%E4%BD%99%E4%BD%B3%E5%BB%BA%26%23startTime%23%3D2017-08-15+14%3A30%26%23endTime%23%3D2017-08-15+17%3A00&dtype=json&key=302dc9a8655b1de25b1e1258db99f4ea"));
+ // } catch (Exception e) {
+ // // TODO Auto-generated catch block
+ // e.printStackTrace();
+ // }
+ //
+ // String uri = "http://wrs.tunnel.qydev.com/ga_webservice/zdryPort";
+ //
+ // String xml =
+ // ""
+ // + ""
+ // + ""
+ // + ""
+ // + " "
+ // + "1"
+ // + ""
+ // + "1"
+ // + ""
+ // + "1"
+ // + ""
+ // + "1"
+ // + ""
+ // + "" + "";
+ // Map headers = new HashMap();
+ // // headers.put("Content-Type", "text/xml;utf-8");
+// String uri = "http://22.192.40.34:8080/qlimg/imgserver/uploadBase64";
+// String body = "data:image/png,"
+// + Img.img2base64("d:/111.png");
+// String re = HTTP.post(uri, body);
+// System.out.println(re);
+ }
+}
diff --git a/src/main/java/org/well/mysql/sink/WellSink.java b/src/main/java/org/well/mysql/sink/WellSink.java
index f755f92..f0fc6af 100644
--- a/src/main/java/org/well/mysql/sink/WellSink.java
+++ b/src/main/java/org/well/mysql/sink/WellSink.java
@@ -125,9 +125,11 @@
// temp="{\"mType\":\"Event\",\"devType\":\"Concentrator\",\"devCode\":\"00003\",\"mBody\":{\"logTime\":\"20190605002024\",\"bType\":\"ConcentratorOnline\"},\"ts\":1559665224343}";
temp="{\"mType\":\"Data\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"datas\":[{\"value\":\"00\",\"uptime\":\"20190605000000\"}],\"logTime\":\"201906010003002\",\"bType\":\"WellData\"},\"ts\":1559665802828}";
-// temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":7.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
+ temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"11201900001\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":2.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
// temp="{\"mType\":\"Event\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"eventType\":[\"LiquidPressureError\"],\"logTime\":\"20190510134635\",\"bType\":\"LiquidEvent\"},\"ts\":1557467195358}";
// temp="{\"mType\":\"Event\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"eventType\":[\"WellLowBatteryAlarm\"],\"logTime\":\"20190624114710\",\"bType\":\"WellEvent\"},\"ts\":1560484030810}";
+// temp="{\"mType\":\"Data\",\"devType\":\"Locator\",\"devCode\":\"71201900001\",\"mBody\":{\"datas\":[{\"longitude\":126.243324343,\"latitude\":39.2546546546,\"uptime\":\"20190809140900\"}],\"logTime\":\"20190809141012\",\"bType\":\"LocatorData\"},\"ts\":1565331012453}";
+
AbstractResponse resp = ResponseResolver.makeResponse(temp);
resp.setAc(ac);
resp.process(temp);
diff --git a/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java b/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
index 93e2b2b..33531af 100644
--- a/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
+++ b/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
@@ -10,7 +10,10 @@
LiquidPressureFail("液位静压探头采集失败", 3),
LiquidPressureError("液位静压探头数据异常", 4),
LiquidUnknown("液位未知异常", 5),
- OVER_THRESH("液位超限", 6);
+ OVER_THRESH("液位超限", 6),
+ OVER_THRESH1("一级液位超限", 7),
+ OVER_THRESH2("二级液位超限", 8),
+ OVER_THRESH3("三级液位超限", 9);
// 成员变量
private String name;
diff --git a/src/main/java/org/well/well/base/DeviceTypeEnum.java b/src/main/java/org/well/well/base/DeviceTypeEnum.java
index 4d84779..29c5bad 100644
--- a/src/main/java/org/well/well/base/DeviceTypeEnum.java
+++ b/src/main/java/org/well/well/base/DeviceTypeEnum.java
@@ -18,7 +18,8 @@
TempHumi("温湿度监测仪", 13),
Concentrator("数据集中器", 14),
Lamphouse("灯箱监测仪", 15),
- Dig("开挖监测仪", 16);
+ Dig("开挖监测仪", 16),
+ Locator("井盖定位监测仪", 17);
// 成员变量
diff --git a/src/main/java/org/well/well/core/util/DecimalUtils.java b/src/main/java/org/well/well/core/util/DecimalUtils.java
new file mode 100644
index 0000000..2d99778
--- /dev/null
+++ b/src/main/java/org/well/well/core/util/DecimalUtils.java
@@ -0,0 +1,11 @@
+package org.well.well.core.util;
+
+import java.text.DecimalFormat;
+
+/**
+ * Created by Administrator on 2015/2/25.
+ */
+public class DecimalUtils {
+ public static DecimalFormat df6 = new DecimalFormat("####.000000");
+
+}
diff --git a/src/main/java/org/well/well/core/util/HttpClientUtils.java b/src/main/java/org/well/well/core/util/HttpClientUtils.java
new file mode 100644
index 0000000..54fb984
--- /dev/null
+++ b/src/main/java/org/well/well/core/util/HttpClientUtils.java
@@ -0,0 +1,139 @@
+package org.well.well.core.util;
+
+
+
+import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.HttpStatus;
+import org.apache.commons.httpclient.methods.GetMethod;
+import org.apache.commons.httpclient.methods.PostMethod;
+
+import java.io.IOException;
+
+public class HttpClientUtils {
+
+ /**
+ * ���� post������ʱ���Ӧ�ò����ݴ��ݲ�����ͬ���ز�ͬ���
+ */
+ public static String post(String uri, String body) {
+ HttpClient client = new HttpClient();
+ client.setTimeout(6000);
+ PostMethod method = new PostMethod(uri);
+ // for (Map.Entry entry : headers.entrySet()) {
+ method.addRequestHeader("Content-type",
+ "application/json; charset=utf-8");
+ method.addRequestHeader("Accept", "application/json");
+// method.addRequestHeader("J-WSSE", JWSSE);
+ // method.setEntity(new StringEntity(jsonParam.toString(),
+ // Charset.forName("UTF-8")));
+
+ // method.setRequestHeader(entry.getKey(), entry.getValue());
+ // method.setRequestHeader("Accept-Charset", "UTF-8");
+ // }
+ method.setRequestBody(body);
+ try {
+ int statusCode = client.executeMethod(method);
+ if (statusCode == HttpStatus.SC_OK) {
+ return new String(method.getResponseBody(), "UTF-8");
+ // return method.getResponseBodyAsString();
+ }
+
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ /**
+ * post�ύ��
+ */
+ public static String postForm(String uri, String body) {
+ HttpClient client = new HttpClient();
+ client.setTimeout(6000);
+ PostMethod method = new PostMethod(uri);
+ method.addRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");//
+ method.addRequestHeader("Accept", "application/json");
+ method.setRequestBody(body);
+ try {
+ int statusCode = client.executeMethod(method);
+ if (statusCode == HttpStatus.SC_OK) {
+ return new String(method.getResponseBody(), "UTF-8");
+// return method.getResponseBodyAsString();
+ // return method.getResponseBodyAsString();
+ }
+
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return e.getMessage();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return e.getMessage();
+ }
+ return null;
+ }
+
+ /**
+ * ���� get����
+ */
+ @SuppressWarnings("deprecation")
+ public static String get(String uri) {
+ HttpClient client = new HttpClient();
+ client.setTimeout(6000);
+ GetMethod method = new GetMethod(uri);
+ try {
+ int statusCode = client.executeMethod(method);
+ if (statusCode == HttpStatus.SC_OK) {
+ return method.getResponseBodyAsString();
+ }
+
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ public static void main(String[] args) throws Exception {
+ // try {
+ // System.out
+ // .println(HTTP
+ // .get("http://v.juhe.cn/sms/send?mobile=13691291634&tpl_id=42731&tpl_value=%23username%23%3D%E4%BD%99%E4%BD%B3%E5%BB%BA%26%23startTime%23%3D2017-08-15+14%3A30%26%23endTime%23%3D2017-08-15+17%3A00&dtype=json&key=302dc9a8655b1de25b1e1258db99f4ea"));
+ // } catch (Exception e) {
+ // // TODO Auto-generated catch block
+ // e.printStackTrace();
+ // }
+ //
+ // String uri = "http://wrs.tunnel.qydev.com/ga_webservice/zdryPort";
+ //
+ // String xml =
+ // ""
+ // + ""
+ // + ""
+ // + ""
+ // + " "
+ // + "1"
+ // + ""
+ // + "1"
+ // + ""
+ // + "1"
+ // + ""
+ // + "1"
+ // + ""
+ // + "" + "";
+ // Map headers = new HashMap();
+ // // headers.put("Content-Type", "text/xml;utf-8");
+// String uri = "http://22.192.40.34:8080/qlimg/imgserver/uploadBase64";
+// String body = "data:image/png,"
+// + Img.img2base64("d:/111.png");
+// String re = HTTP.post(uri, body);
+// System.out.println(re);
+ }
+}
diff --git a/src/main/java/org/well/well/core/util/PointConvertUtility.java b/src/main/java/org/well/well/core/util/PointConvertUtility.java
new file mode 100644
index 0000000..088171a
--- /dev/null
+++ b/src/main/java/org/well/well/core/util/PointConvertUtility.java
@@ -0,0 +1,99 @@
+package org.well.well.core.util;
+
+import com.alibaba.fastjson.JSONObject;
+import com.google.gson.GsonBuilder;
+import io.netty.handler.codec.http.HttpUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.HashMap;
+import java.util.Map;
+
+public class PointConvertUtility {
+ private static final Logger logger = LoggerFactory.getLogger(PointConvertUtility.class);
+ private static final String baiduUrl= "http://api.map.baidu.com/geoconv/v1/";
+ private static final String baiduAk="QL9aqGNjgcRAGkt6F0BrsVmfGGOgjVyr";
+
+ private static final String gaodeUrl="https://restapi.amap.com/v3/assistant/coordinate/convert";
+ private static final String gaodeKey="ab182d27663bbbaac890730b55db2754";
+
+
+ public static Map convertBaiduAPI(String lng, String lat){
+ Map result = new HashMap();
+ String coords = lng+","+lat;
+ try {
+ Map params = new HashMap();
+ params.put("coords",coords);
+ params.put("ak",baiduAk);
+ params.put("from",1);
+ params.put("to",5);
+ String str = HttpClientUtils.post(baiduUrl,
+ new GsonBuilder().enableComplexMapKeySerialization().
+ create().toJson(params));
+ JSONObject jsStr = JSONObject.parseObject(str);
+ if(jsStr.getInteger("status")==0){
+ JSONObject coordinate = (JSONObject)jsStr.getJSONArray("result").get(0);
+ double x = coordinate.getDouble("x");
+ double y = coordinate.getDouble("y");
+ result.put("x",x);
+ result.put("y",y);
+ return result;
+ }else{
+ return null;
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ public static Map convertGaodeAPI(String lng, String lat){
+ Map result = new HashMap();
+ String coords = lng+","+lat;
+ try {
+ Map params = new HashMap();
+ params.put("locations",coords);
+ params.put("key",gaodeKey);
+ params.put("coordsys","gps");
+ String str = HttpClientUtils.post(gaodeUrl,
+ new GsonBuilder().enableComplexMapKeySerialization().
+ create().toJson(params));
+ JSONObject jsStr = JSONObject.parseObject(str);
+ if(jsStr.getInteger("status")==1){
+ String coordinate = jsStr.getString("locations");
+ String[] xy = coordinate.split(",");
+ if(xy!=null && xy.length >= 2){
+ result.put("x",xy[0]);
+ result.put("y",xy[1]);
+ }
+
+ return result;
+ }else{
+ return null;
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+// public static void convertCoordinate(BusWellInfo busWellInfo){
+// if(ToolUtil.isNotEmpty(busWellInfo.getCoordinateX()) && ToolUtil.isNotEmpty(busWellInfo.getCoordinateY())){
+// Map baiduCoordinate = PointConvertUtility.convertBaiduAPI(busWellInfo.getCoordinateX(),busWellInfo.getCoordinateY());
+// if(ToolUtil.isNotEmpty(baiduCoordinate)) {
+// busWellInfo.setLngBaidu(baiduCoordinate.get("x").toString());
+// busWellInfo.setLatBaidu(baiduCoordinate.get("y").toString());
+// }else{
+// logger.error("{}百度坐标转换失败",busWellInfo.getWellCode());
+// }
+//
+// Map gaodeCoordinate = PointConvertUtility.convertGaodeAPI(busWellInfo.getCoordinateX(),busWellInfo.getCoordinateY());
+// if(ToolUtil.isNotEmpty(gaodeCoordinate)) {
+// busWellInfo.setLngGaode(gaodeCoordinate.get("x").toString());
+// busWellInfo.setLatGaode(gaodeCoordinate.get("y").toString());
+// }else{
+// logger.error("{}高德坐标转换失败",busWellInfo.getWellCode());
+// }
+// }
+// }
+}
diff --git a/src/main/java/org/well/mysql/sink/WellSink.java b/src/main/java/org/well/mysql/sink/WellSink.java
index f755f92..f0fc6af 100644
--- a/src/main/java/org/well/mysql/sink/WellSink.java
+++ b/src/main/java/org/well/mysql/sink/WellSink.java
@@ -125,9 +125,11 @@
// temp="{\"mType\":\"Event\",\"devType\":\"Concentrator\",\"devCode\":\"00003\",\"mBody\":{\"logTime\":\"20190605002024\",\"bType\":\"ConcentratorOnline\"},\"ts\":1559665224343}";
temp="{\"mType\":\"Data\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"datas\":[{\"value\":\"00\",\"uptime\":\"20190605000000\"}],\"logTime\":\"201906010003002\",\"bType\":\"WellData\"},\"ts\":1559665802828}";
-// temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":7.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
+ temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"11201900001\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":2.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
// temp="{\"mType\":\"Event\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"eventType\":[\"LiquidPressureError\"],\"logTime\":\"20190510134635\",\"bType\":\"LiquidEvent\"},\"ts\":1557467195358}";
// temp="{\"mType\":\"Event\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"eventType\":[\"WellLowBatteryAlarm\"],\"logTime\":\"20190624114710\",\"bType\":\"WellEvent\"},\"ts\":1560484030810}";
+// temp="{\"mType\":\"Data\",\"devType\":\"Locator\",\"devCode\":\"71201900001\",\"mBody\":{\"datas\":[{\"longitude\":126.243324343,\"latitude\":39.2546546546,\"uptime\":\"20190809140900\"}],\"logTime\":\"20190809141012\",\"bType\":\"LocatorData\"},\"ts\":1565331012453}";
+
AbstractResponse resp = ResponseResolver.makeResponse(temp);
resp.setAc(ac);
resp.process(temp);
diff --git a/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java b/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
index 93e2b2b..33531af 100644
--- a/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
+++ b/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
@@ -10,7 +10,10 @@
LiquidPressureFail("液位静压探头采集失败", 3),
LiquidPressureError("液位静压探头数据异常", 4),
LiquidUnknown("液位未知异常", 5),
- OVER_THRESH("液位超限", 6);
+ OVER_THRESH("液位超限", 6),
+ OVER_THRESH1("一级液位超限", 7),
+ OVER_THRESH2("二级液位超限", 8),
+ OVER_THRESH3("三级液位超限", 9);
// 成员变量
private String name;
diff --git a/src/main/java/org/well/well/base/DeviceTypeEnum.java b/src/main/java/org/well/well/base/DeviceTypeEnum.java
index 4d84779..29c5bad 100644
--- a/src/main/java/org/well/well/base/DeviceTypeEnum.java
+++ b/src/main/java/org/well/well/base/DeviceTypeEnum.java
@@ -18,7 +18,8 @@
TempHumi("温湿度监测仪", 13),
Concentrator("数据集中器", 14),
Lamphouse("灯箱监测仪", 15),
- Dig("开挖监测仪", 16);
+ Dig("开挖监测仪", 16),
+ Locator("井盖定位监测仪", 17);
// 成员变量
diff --git a/src/main/java/org/well/well/core/util/DecimalUtils.java b/src/main/java/org/well/well/core/util/DecimalUtils.java
new file mode 100644
index 0000000..2d99778
--- /dev/null
+++ b/src/main/java/org/well/well/core/util/DecimalUtils.java
@@ -0,0 +1,11 @@
+package org.well.well.core.util;
+
+import java.text.DecimalFormat;
+
+/**
+ * Created by Administrator on 2015/2/25.
+ */
+public class DecimalUtils {
+ public static DecimalFormat df6 = new DecimalFormat("####.000000");
+
+}
diff --git a/src/main/java/org/well/well/core/util/HttpClientUtils.java b/src/main/java/org/well/well/core/util/HttpClientUtils.java
new file mode 100644
index 0000000..54fb984
--- /dev/null
+++ b/src/main/java/org/well/well/core/util/HttpClientUtils.java
@@ -0,0 +1,139 @@
+package org.well.well.core.util;
+
+
+
+import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.HttpStatus;
+import org.apache.commons.httpclient.methods.GetMethod;
+import org.apache.commons.httpclient.methods.PostMethod;
+
+import java.io.IOException;
+
+public class HttpClientUtils {
+
+ /**
+ * ���� post������ʱ���Ӧ�ò����ݴ��ݲ�����ͬ���ز�ͬ���
+ */
+ public static String post(String uri, String body) {
+ HttpClient client = new HttpClient();
+ client.setTimeout(6000);
+ PostMethod method = new PostMethod(uri);
+ // for (Map.Entry entry : headers.entrySet()) {
+ method.addRequestHeader("Content-type",
+ "application/json; charset=utf-8");
+ method.addRequestHeader("Accept", "application/json");
+// method.addRequestHeader("J-WSSE", JWSSE);
+ // method.setEntity(new StringEntity(jsonParam.toString(),
+ // Charset.forName("UTF-8")));
+
+ // method.setRequestHeader(entry.getKey(), entry.getValue());
+ // method.setRequestHeader("Accept-Charset", "UTF-8");
+ // }
+ method.setRequestBody(body);
+ try {
+ int statusCode = client.executeMethod(method);
+ if (statusCode == HttpStatus.SC_OK) {
+ return new String(method.getResponseBody(), "UTF-8");
+ // return method.getResponseBodyAsString();
+ }
+
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ /**
+ * post�ύ��
+ */
+ public static String postForm(String uri, String body) {
+ HttpClient client = new HttpClient();
+ client.setTimeout(6000);
+ PostMethod method = new PostMethod(uri);
+ method.addRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");//
+ method.addRequestHeader("Accept", "application/json");
+ method.setRequestBody(body);
+ try {
+ int statusCode = client.executeMethod(method);
+ if (statusCode == HttpStatus.SC_OK) {
+ return new String(method.getResponseBody(), "UTF-8");
+// return method.getResponseBodyAsString();
+ // return method.getResponseBodyAsString();
+ }
+
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return e.getMessage();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return e.getMessage();
+ }
+ return null;
+ }
+
+ /**
+ * ���� get����
+ */
+ @SuppressWarnings("deprecation")
+ public static String get(String uri) {
+ HttpClient client = new HttpClient();
+ client.setTimeout(6000);
+ GetMethod method = new GetMethod(uri);
+ try {
+ int statusCode = client.executeMethod(method);
+ if (statusCode == HttpStatus.SC_OK) {
+ return method.getResponseBodyAsString();
+ }
+
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ public static void main(String[] args) throws Exception {
+ // try {
+ // System.out
+ // .println(HTTP
+ // .get("http://v.juhe.cn/sms/send?mobile=13691291634&tpl_id=42731&tpl_value=%23username%23%3D%E4%BD%99%E4%BD%B3%E5%BB%BA%26%23startTime%23%3D2017-08-15+14%3A30%26%23endTime%23%3D2017-08-15+17%3A00&dtype=json&key=302dc9a8655b1de25b1e1258db99f4ea"));
+ // } catch (Exception e) {
+ // // TODO Auto-generated catch block
+ // e.printStackTrace();
+ // }
+ //
+ // String uri = "http://wrs.tunnel.qydev.com/ga_webservice/zdryPort";
+ //
+ // String xml =
+ // ""
+ // + ""
+ // + ""
+ // + ""
+ // + " "
+ // + "1"
+ // + ""
+ // + "1"
+ // + ""
+ // + "1"
+ // + ""
+ // + "1"
+ // + ""
+ // + "" + "";
+ // Map headers = new HashMap();
+ // // headers.put("Content-Type", "text/xml;utf-8");
+// String uri = "http://22.192.40.34:8080/qlimg/imgserver/uploadBase64";
+// String body = "data:image/png,"
+// + Img.img2base64("d:/111.png");
+// String re = HTTP.post(uri, body);
+// System.out.println(re);
+ }
+}
diff --git a/src/main/java/org/well/well/core/util/PointConvertUtility.java b/src/main/java/org/well/well/core/util/PointConvertUtility.java
new file mode 100644
index 0000000..088171a
--- /dev/null
+++ b/src/main/java/org/well/well/core/util/PointConvertUtility.java
@@ -0,0 +1,99 @@
+package org.well.well.core.util;
+
+import com.alibaba.fastjson.JSONObject;
+import com.google.gson.GsonBuilder;
+import io.netty.handler.codec.http.HttpUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.HashMap;
+import java.util.Map;
+
+public class PointConvertUtility {
+ private static final Logger logger = LoggerFactory.getLogger(PointConvertUtility.class);
+ private static final String baiduUrl= "http://api.map.baidu.com/geoconv/v1/";
+ private static final String baiduAk="QL9aqGNjgcRAGkt6F0BrsVmfGGOgjVyr";
+
+ private static final String gaodeUrl="https://restapi.amap.com/v3/assistant/coordinate/convert";
+ private static final String gaodeKey="ab182d27663bbbaac890730b55db2754";
+
+
+ public static Map convertBaiduAPI(String lng, String lat){
+ Map result = new HashMap();
+ String coords = lng+","+lat;
+ try {
+ Map params = new HashMap();
+ params.put("coords",coords);
+ params.put("ak",baiduAk);
+ params.put("from",1);
+ params.put("to",5);
+ String str = HttpClientUtils.post(baiduUrl,
+ new GsonBuilder().enableComplexMapKeySerialization().
+ create().toJson(params));
+ JSONObject jsStr = JSONObject.parseObject(str);
+ if(jsStr.getInteger("status")==0){
+ JSONObject coordinate = (JSONObject)jsStr.getJSONArray("result").get(0);
+ double x = coordinate.getDouble("x");
+ double y = coordinate.getDouble("y");
+ result.put("x",x);
+ result.put("y",y);
+ return result;
+ }else{
+ return null;
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ public static Map convertGaodeAPI(String lng, String lat){
+ Map result = new HashMap();
+ String coords = lng+","+lat;
+ try {
+ Map params = new HashMap();
+ params.put("locations",coords);
+ params.put("key",gaodeKey);
+ params.put("coordsys","gps");
+ String str = HttpClientUtils.post(gaodeUrl,
+ new GsonBuilder().enableComplexMapKeySerialization().
+ create().toJson(params));
+ JSONObject jsStr = JSONObject.parseObject(str);
+ if(jsStr.getInteger("status")==1){
+ String coordinate = jsStr.getString("locations");
+ String[] xy = coordinate.split(",");
+ if(xy!=null && xy.length >= 2){
+ result.put("x",xy[0]);
+ result.put("y",xy[1]);
+ }
+
+ return result;
+ }else{
+ return null;
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+// public static void convertCoordinate(BusWellInfo busWellInfo){
+// if(ToolUtil.isNotEmpty(busWellInfo.getCoordinateX()) && ToolUtil.isNotEmpty(busWellInfo.getCoordinateY())){
+// Map baiduCoordinate = PointConvertUtility.convertBaiduAPI(busWellInfo.getCoordinateX(),busWellInfo.getCoordinateY());
+// if(ToolUtil.isNotEmpty(baiduCoordinate)) {
+// busWellInfo.setLngBaidu(baiduCoordinate.get("x").toString());
+// busWellInfo.setLatBaidu(baiduCoordinate.get("y").toString());
+// }else{
+// logger.error("{}百度坐标转换失败",busWellInfo.getWellCode());
+// }
+//
+// Map gaodeCoordinate = PointConvertUtility.convertGaodeAPI(busWellInfo.getCoordinateX(),busWellInfo.getCoordinateY());
+// if(ToolUtil.isNotEmpty(gaodeCoordinate)) {
+// busWellInfo.setLngGaode(gaodeCoordinate.get("x").toString());
+// busWellInfo.setLatGaode(gaodeCoordinate.get("y").toString());
+// }else{
+// logger.error("{}高德坐标转换失败",busWellInfo.getWellCode());
+// }
+// }
+// }
+}
diff --git a/src/main/java/org/well/well/domain/Locator.java b/src/main/java/org/well/well/domain/Locator.java
new file mode 100644
index 0000000..c6a901b
--- /dev/null
+++ b/src/main/java/org/well/well/domain/Locator.java
@@ -0,0 +1,94 @@
+package org.well.well.domain;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.util.Date;
+
+
+@Entity
+@Table(name = "data_wellcover_loca")
+public class Locator implements Serializable {
+ /**
+ *
+ */
+ private static final long serialVersionUID = 429994083551525856L;
+ private Long dbId;
+ private String devCode;
+ private String wellCode;
+ private String longitude;
+ private String latitude;
+ private Date logtime;
+ private Date upTime;
+
+
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "ID")
+ public Long getDbId() {
+ return dbId;
+ }
+ public void setDbId(Long dbId) {
+ this.dbId = dbId;
+ }
+
+ @Column(name = "DEVCODE")
+ public String getDevCode() {
+ return devCode;
+ }
+
+ public void setDevCode(String devCode) {
+ this.devCode = devCode;
+ }
+
+
+ @Column(name = "LNG")
+ public String getLongitude() {
+ return longitude;
+ }
+
+ public void setLongitude(String longitude) {
+ this.longitude = longitude;
+ }
+
+ @Column(name = "LAT")
+ public String getLatitude() {
+ return latitude;
+ }
+
+ public void setLatitude(String latitude) {
+ this.latitude = latitude;
+ }
+
+ @Column(name = "LOGTIME")
+ public Date getLogtime() {
+ return logtime;
+ }
+ public void setLogtime(Date logtime) {
+ this.logtime = logtime;
+ }
+
+ @Column(name = "UPTIME")
+ public Date getUpTime() {
+ return upTime;
+ }
+
+ public void setUpTime(Date upTime) {
+ this.upTime = upTime;
+ }
+ @Column(name = "WELL_CODE")
+ public String getWellCode() {
+ return wellCode;
+ }
+
+ public void setWellCode(String wellCode) {
+ this.wellCode = wellCode;
+ }
+
+ public Locator(String devCode, String wellCode,String longitude, String latitude) {
+ this.devCode = devCode;
+ this.wellCode = wellCode;
+ this.latitude = latitude;
+ this.longitude = longitude;
+ this.logtime = new Date();
+ }
+}
diff --git a/src/main/java/org/well/mysql/sink/WellSink.java b/src/main/java/org/well/mysql/sink/WellSink.java
index f755f92..f0fc6af 100644
--- a/src/main/java/org/well/mysql/sink/WellSink.java
+++ b/src/main/java/org/well/mysql/sink/WellSink.java
@@ -125,9 +125,11 @@
// temp="{\"mType\":\"Event\",\"devType\":\"Concentrator\",\"devCode\":\"00003\",\"mBody\":{\"logTime\":\"20190605002024\",\"bType\":\"ConcentratorOnline\"},\"ts\":1559665224343}";
temp="{\"mType\":\"Data\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"datas\":[{\"value\":\"00\",\"uptime\":\"20190605000000\"}],\"logTime\":\"201906010003002\",\"bType\":\"WellData\"},\"ts\":1559665802828}";
-// temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":7.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
+ temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"11201900001\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":2.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
// temp="{\"mType\":\"Event\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"eventType\":[\"LiquidPressureError\"],\"logTime\":\"20190510134635\",\"bType\":\"LiquidEvent\"},\"ts\":1557467195358}";
// temp="{\"mType\":\"Event\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"eventType\":[\"WellLowBatteryAlarm\"],\"logTime\":\"20190624114710\",\"bType\":\"WellEvent\"},\"ts\":1560484030810}";
+// temp="{\"mType\":\"Data\",\"devType\":\"Locator\",\"devCode\":\"71201900001\",\"mBody\":{\"datas\":[{\"longitude\":126.243324343,\"latitude\":39.2546546546,\"uptime\":\"20190809140900\"}],\"logTime\":\"20190809141012\",\"bType\":\"LocatorData\"},\"ts\":1565331012453}";
+
AbstractResponse resp = ResponseResolver.makeResponse(temp);
resp.setAc(ac);
resp.process(temp);
diff --git a/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java b/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
index 93e2b2b..33531af 100644
--- a/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
+++ b/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
@@ -10,7 +10,10 @@
LiquidPressureFail("液位静压探头采集失败", 3),
LiquidPressureError("液位静压探头数据异常", 4),
LiquidUnknown("液位未知异常", 5),
- OVER_THRESH("液位超限", 6);
+ OVER_THRESH("液位超限", 6),
+ OVER_THRESH1("一级液位超限", 7),
+ OVER_THRESH2("二级液位超限", 8),
+ OVER_THRESH3("三级液位超限", 9);
// 成员变量
private String name;
diff --git a/src/main/java/org/well/well/base/DeviceTypeEnum.java b/src/main/java/org/well/well/base/DeviceTypeEnum.java
index 4d84779..29c5bad 100644
--- a/src/main/java/org/well/well/base/DeviceTypeEnum.java
+++ b/src/main/java/org/well/well/base/DeviceTypeEnum.java
@@ -18,7 +18,8 @@
TempHumi("温湿度监测仪", 13),
Concentrator("数据集中器", 14),
Lamphouse("灯箱监测仪", 15),
- Dig("开挖监测仪", 16);
+ Dig("开挖监测仪", 16),
+ Locator("井盖定位监测仪", 17);
// 成员变量
diff --git a/src/main/java/org/well/well/core/util/DecimalUtils.java b/src/main/java/org/well/well/core/util/DecimalUtils.java
new file mode 100644
index 0000000..2d99778
--- /dev/null
+++ b/src/main/java/org/well/well/core/util/DecimalUtils.java
@@ -0,0 +1,11 @@
+package org.well.well.core.util;
+
+import java.text.DecimalFormat;
+
+/**
+ * Created by Administrator on 2015/2/25.
+ */
+public class DecimalUtils {
+ public static DecimalFormat df6 = new DecimalFormat("####.000000");
+
+}
diff --git a/src/main/java/org/well/well/core/util/HttpClientUtils.java b/src/main/java/org/well/well/core/util/HttpClientUtils.java
new file mode 100644
index 0000000..54fb984
--- /dev/null
+++ b/src/main/java/org/well/well/core/util/HttpClientUtils.java
@@ -0,0 +1,139 @@
+package org.well.well.core.util;
+
+
+
+import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.HttpStatus;
+import org.apache.commons.httpclient.methods.GetMethod;
+import org.apache.commons.httpclient.methods.PostMethod;
+
+import java.io.IOException;
+
+public class HttpClientUtils {
+
+ /**
+ * ���� post������ʱ���Ӧ�ò����ݴ��ݲ�����ͬ���ز�ͬ���
+ */
+ public static String post(String uri, String body) {
+ HttpClient client = new HttpClient();
+ client.setTimeout(6000);
+ PostMethod method = new PostMethod(uri);
+ // for (Map.Entry entry : headers.entrySet()) {
+ method.addRequestHeader("Content-type",
+ "application/json; charset=utf-8");
+ method.addRequestHeader("Accept", "application/json");
+// method.addRequestHeader("J-WSSE", JWSSE);
+ // method.setEntity(new StringEntity(jsonParam.toString(),
+ // Charset.forName("UTF-8")));
+
+ // method.setRequestHeader(entry.getKey(), entry.getValue());
+ // method.setRequestHeader("Accept-Charset", "UTF-8");
+ // }
+ method.setRequestBody(body);
+ try {
+ int statusCode = client.executeMethod(method);
+ if (statusCode == HttpStatus.SC_OK) {
+ return new String(method.getResponseBody(), "UTF-8");
+ // return method.getResponseBodyAsString();
+ }
+
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ /**
+ * post�ύ��
+ */
+ public static String postForm(String uri, String body) {
+ HttpClient client = new HttpClient();
+ client.setTimeout(6000);
+ PostMethod method = new PostMethod(uri);
+ method.addRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");//
+ method.addRequestHeader("Accept", "application/json");
+ method.setRequestBody(body);
+ try {
+ int statusCode = client.executeMethod(method);
+ if (statusCode == HttpStatus.SC_OK) {
+ return new String(method.getResponseBody(), "UTF-8");
+// return method.getResponseBodyAsString();
+ // return method.getResponseBodyAsString();
+ }
+
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return e.getMessage();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return e.getMessage();
+ }
+ return null;
+ }
+
+ /**
+ * ���� get����
+ */
+ @SuppressWarnings("deprecation")
+ public static String get(String uri) {
+ HttpClient client = new HttpClient();
+ client.setTimeout(6000);
+ GetMethod method = new GetMethod(uri);
+ try {
+ int statusCode = client.executeMethod(method);
+ if (statusCode == HttpStatus.SC_OK) {
+ return method.getResponseBodyAsString();
+ }
+
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ public static void main(String[] args) throws Exception {
+ // try {
+ // System.out
+ // .println(HTTP
+ // .get("http://v.juhe.cn/sms/send?mobile=13691291634&tpl_id=42731&tpl_value=%23username%23%3D%E4%BD%99%E4%BD%B3%E5%BB%BA%26%23startTime%23%3D2017-08-15+14%3A30%26%23endTime%23%3D2017-08-15+17%3A00&dtype=json&key=302dc9a8655b1de25b1e1258db99f4ea"));
+ // } catch (Exception e) {
+ // // TODO Auto-generated catch block
+ // e.printStackTrace();
+ // }
+ //
+ // String uri = "http://wrs.tunnel.qydev.com/ga_webservice/zdryPort";
+ //
+ // String xml =
+ // ""
+ // + ""
+ // + ""
+ // + ""
+ // + " "
+ // + "1"
+ // + ""
+ // + "1"
+ // + ""
+ // + "1"
+ // + ""
+ // + "1"
+ // + ""
+ // + "" + "";
+ // Map headers = new HashMap();
+ // // headers.put("Content-Type", "text/xml;utf-8");
+// String uri = "http://22.192.40.34:8080/qlimg/imgserver/uploadBase64";
+// String body = "data:image/png,"
+// + Img.img2base64("d:/111.png");
+// String re = HTTP.post(uri, body);
+// System.out.println(re);
+ }
+}
diff --git a/src/main/java/org/well/well/core/util/PointConvertUtility.java b/src/main/java/org/well/well/core/util/PointConvertUtility.java
new file mode 100644
index 0000000..088171a
--- /dev/null
+++ b/src/main/java/org/well/well/core/util/PointConvertUtility.java
@@ -0,0 +1,99 @@
+package org.well.well.core.util;
+
+import com.alibaba.fastjson.JSONObject;
+import com.google.gson.GsonBuilder;
+import io.netty.handler.codec.http.HttpUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.HashMap;
+import java.util.Map;
+
+public class PointConvertUtility {
+ private static final Logger logger = LoggerFactory.getLogger(PointConvertUtility.class);
+ private static final String baiduUrl= "http://api.map.baidu.com/geoconv/v1/";
+ private static final String baiduAk="QL9aqGNjgcRAGkt6F0BrsVmfGGOgjVyr";
+
+ private static final String gaodeUrl="https://restapi.amap.com/v3/assistant/coordinate/convert";
+ private static final String gaodeKey="ab182d27663bbbaac890730b55db2754";
+
+
+ public static Map convertBaiduAPI(String lng, String lat){
+ Map result = new HashMap();
+ String coords = lng+","+lat;
+ try {
+ Map params = new HashMap();
+ params.put("coords",coords);
+ params.put("ak",baiduAk);
+ params.put("from",1);
+ params.put("to",5);
+ String str = HttpClientUtils.post(baiduUrl,
+ new GsonBuilder().enableComplexMapKeySerialization().
+ create().toJson(params));
+ JSONObject jsStr = JSONObject.parseObject(str);
+ if(jsStr.getInteger("status")==0){
+ JSONObject coordinate = (JSONObject)jsStr.getJSONArray("result").get(0);
+ double x = coordinate.getDouble("x");
+ double y = coordinate.getDouble("y");
+ result.put("x",x);
+ result.put("y",y);
+ return result;
+ }else{
+ return null;
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ public static Map convertGaodeAPI(String lng, String lat){
+ Map result = new HashMap();
+ String coords = lng+","+lat;
+ try {
+ Map params = new HashMap();
+ params.put("locations",coords);
+ params.put("key",gaodeKey);
+ params.put("coordsys","gps");
+ String str = HttpClientUtils.post(gaodeUrl,
+ new GsonBuilder().enableComplexMapKeySerialization().
+ create().toJson(params));
+ JSONObject jsStr = JSONObject.parseObject(str);
+ if(jsStr.getInteger("status")==1){
+ String coordinate = jsStr.getString("locations");
+ String[] xy = coordinate.split(",");
+ if(xy!=null && xy.length >= 2){
+ result.put("x",xy[0]);
+ result.put("y",xy[1]);
+ }
+
+ return result;
+ }else{
+ return null;
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+// public static void convertCoordinate(BusWellInfo busWellInfo){
+// if(ToolUtil.isNotEmpty(busWellInfo.getCoordinateX()) && ToolUtil.isNotEmpty(busWellInfo.getCoordinateY())){
+// Map baiduCoordinate = PointConvertUtility.convertBaiduAPI(busWellInfo.getCoordinateX(),busWellInfo.getCoordinateY());
+// if(ToolUtil.isNotEmpty(baiduCoordinate)) {
+// busWellInfo.setLngBaidu(baiduCoordinate.get("x").toString());
+// busWellInfo.setLatBaidu(baiduCoordinate.get("y").toString());
+// }else{
+// logger.error("{}百度坐标转换失败",busWellInfo.getWellCode());
+// }
+//
+// Map gaodeCoordinate = PointConvertUtility.convertGaodeAPI(busWellInfo.getCoordinateX(),busWellInfo.getCoordinateY());
+// if(ToolUtil.isNotEmpty(gaodeCoordinate)) {
+// busWellInfo.setLngGaode(gaodeCoordinate.get("x").toString());
+// busWellInfo.setLatGaode(gaodeCoordinate.get("y").toString());
+// }else{
+// logger.error("{}高德坐标转换失败",busWellInfo.getWellCode());
+// }
+// }
+// }
+}
diff --git a/src/main/java/org/well/well/domain/Locator.java b/src/main/java/org/well/well/domain/Locator.java
new file mode 100644
index 0000000..c6a901b
--- /dev/null
+++ b/src/main/java/org/well/well/domain/Locator.java
@@ -0,0 +1,94 @@
+package org.well.well.domain;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.util.Date;
+
+
+@Entity
+@Table(name = "data_wellcover_loca")
+public class Locator implements Serializable {
+ /**
+ *
+ */
+ private static final long serialVersionUID = 429994083551525856L;
+ private Long dbId;
+ private String devCode;
+ private String wellCode;
+ private String longitude;
+ private String latitude;
+ private Date logtime;
+ private Date upTime;
+
+
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "ID")
+ public Long getDbId() {
+ return dbId;
+ }
+ public void setDbId(Long dbId) {
+ this.dbId = dbId;
+ }
+
+ @Column(name = "DEVCODE")
+ public String getDevCode() {
+ return devCode;
+ }
+
+ public void setDevCode(String devCode) {
+ this.devCode = devCode;
+ }
+
+
+ @Column(name = "LNG")
+ public String getLongitude() {
+ return longitude;
+ }
+
+ public void setLongitude(String longitude) {
+ this.longitude = longitude;
+ }
+
+ @Column(name = "LAT")
+ public String getLatitude() {
+ return latitude;
+ }
+
+ public void setLatitude(String latitude) {
+ this.latitude = latitude;
+ }
+
+ @Column(name = "LOGTIME")
+ public Date getLogtime() {
+ return logtime;
+ }
+ public void setLogtime(Date logtime) {
+ this.logtime = logtime;
+ }
+
+ @Column(name = "UPTIME")
+ public Date getUpTime() {
+ return upTime;
+ }
+
+ public void setUpTime(Date upTime) {
+ this.upTime = upTime;
+ }
+ @Column(name = "WELL_CODE")
+ public String getWellCode() {
+ return wellCode;
+ }
+
+ public void setWellCode(String wellCode) {
+ this.wellCode = wellCode;
+ }
+
+ public Locator(String devCode, String wellCode,String longitude, String latitude) {
+ this.devCode = devCode;
+ this.wellCode = wellCode;
+ this.latitude = latitude;
+ this.longitude = longitude;
+ this.logtime = new Date();
+ }
+}
diff --git a/src/main/java/org/well/well/domain/SysUser.java b/src/main/java/org/well/well/domain/SysUser.java
index 7021434..c70febb 100644
--- a/src/main/java/org/well/well/domain/SysUser.java
+++ b/src/main/java/org/well/well/domain/SysUser.java
@@ -5,7 +5,7 @@
/**
*
- * 部门表
+ * 人员表
*
*
*/
diff --git a/src/main/java/org/well/mysql/sink/WellSink.java b/src/main/java/org/well/mysql/sink/WellSink.java
index f755f92..f0fc6af 100644
--- a/src/main/java/org/well/mysql/sink/WellSink.java
+++ b/src/main/java/org/well/mysql/sink/WellSink.java
@@ -125,9 +125,11 @@
// temp="{\"mType\":\"Event\",\"devType\":\"Concentrator\",\"devCode\":\"00003\",\"mBody\":{\"logTime\":\"20190605002024\",\"bType\":\"ConcentratorOnline\"},\"ts\":1559665224343}";
temp="{\"mType\":\"Data\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"datas\":[{\"value\":\"00\",\"uptime\":\"20190605000000\"}],\"logTime\":\"201906010003002\",\"bType\":\"WellData\"},\"ts\":1559665802828}";
-// temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":7.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
+ temp="{\"mType\":\"Data\",\"devType\":\"Liquid\",\"devCode\":\"11201900001\",\"mBody\":{\"cell\":99,\"datas\":[{\"level\":2.12,\"uptime\":\"20190502000000\"}],\"logTime\":\"20190502000125\",\"bType\":\"LiquidData\"},\"ts\":1556726485336}";
// temp="{\"mType\":\"Event\",\"devType\":\"Liquid\",\"devCode\":\"1120180002\",\"mBody\":{\"eventType\":[\"LiquidPressureError\"],\"logTime\":\"20190510134635\",\"bType\":\"LiquidEvent\"},\"ts\":1557467195358}";
// temp="{\"mType\":\"Event\",\"devType\":\"Well\",\"devCode\":\"11201900001\",\"mBody\":{\"eventType\":[\"WellLowBatteryAlarm\"],\"logTime\":\"20190624114710\",\"bType\":\"WellEvent\"},\"ts\":1560484030810}";
+// temp="{\"mType\":\"Data\",\"devType\":\"Locator\",\"devCode\":\"71201900001\",\"mBody\":{\"datas\":[{\"longitude\":126.243324343,\"latitude\":39.2546546546,\"uptime\":\"20190809140900\"}],\"logTime\":\"20190809141012\",\"bType\":\"LocatorData\"},\"ts\":1565331012453}";
+
AbstractResponse resp = ResponseResolver.makeResponse(temp);
resp.setAc(ac);
resp.process(temp);
diff --git a/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java b/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
index 93e2b2b..33531af 100644
--- a/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
+++ b/src/main/java/org/well/well/AlarmEnumDTO/LiquidAlarmEnum.java
@@ -10,7 +10,10 @@
LiquidPressureFail("液位静压探头采集失败", 3),
LiquidPressureError("液位静压探头数据异常", 4),
LiquidUnknown("液位未知异常", 5),
- OVER_THRESH("液位超限", 6);
+ OVER_THRESH("液位超限", 6),
+ OVER_THRESH1("一级液位超限", 7),
+ OVER_THRESH2("二级液位超限", 8),
+ OVER_THRESH3("三级液位超限", 9);
// 成员变量
private String name;
diff --git a/src/main/java/org/well/well/base/DeviceTypeEnum.java b/src/main/java/org/well/well/base/DeviceTypeEnum.java
index 4d84779..29c5bad 100644
--- a/src/main/java/org/well/well/base/DeviceTypeEnum.java
+++ b/src/main/java/org/well/well/base/DeviceTypeEnum.java
@@ -18,7 +18,8 @@
TempHumi("温湿度监测仪", 13),
Concentrator("数据集中器", 14),
Lamphouse("灯箱监测仪", 15),
- Dig("开挖监测仪", 16);
+ Dig("开挖监测仪", 16),
+ Locator("井盖定位监测仪", 17);
// 成员变量
diff --git a/src/main/java/org/well/well/core/util/DecimalUtils.java b/src/main/java/org/well/well/core/util/DecimalUtils.java
new file mode 100644
index 0000000..2d99778
--- /dev/null
+++ b/src/main/java/org/well/well/core/util/DecimalUtils.java
@@ -0,0 +1,11 @@
+package org.well.well.core.util;
+
+import java.text.DecimalFormat;
+
+/**
+ * Created by Administrator on 2015/2/25.
+ */
+public class DecimalUtils {
+ public static DecimalFormat df6 = new DecimalFormat("####.000000");
+
+}
diff --git a/src/main/java/org/well/well/core/util/HttpClientUtils.java b/src/main/java/org/well/well/core/util/HttpClientUtils.java
new file mode 100644
index 0000000..54fb984
--- /dev/null
+++ b/src/main/java/org/well/well/core/util/HttpClientUtils.java
@@ -0,0 +1,139 @@
+package org.well.well.core.util;
+
+
+
+import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.HttpStatus;
+import org.apache.commons.httpclient.methods.GetMethod;
+import org.apache.commons.httpclient.methods.PostMethod;
+
+import java.io.IOException;
+
+public class HttpClientUtils {
+
+ /**
+ * ���� post������ʱ���Ӧ�ò����ݴ��ݲ�����ͬ���ز�ͬ���
+ */
+ public static String post(String uri, String body) {
+ HttpClient client = new HttpClient();
+ client.setTimeout(6000);
+ PostMethod method = new PostMethod(uri);
+ // for (Map.Entry entry : headers.entrySet()) {
+ method.addRequestHeader("Content-type",
+ "application/json; charset=utf-8");
+ method.addRequestHeader("Accept", "application/json");
+// method.addRequestHeader("J-WSSE", JWSSE);
+ // method.setEntity(new StringEntity(jsonParam.toString(),
+ // Charset.forName("UTF-8")));
+
+ // method.setRequestHeader(entry.getKey(), entry.getValue());
+ // method.setRequestHeader("Accept-Charset", "UTF-8");
+ // }
+ method.setRequestBody(body);
+ try {
+ int statusCode = client.executeMethod(method);
+ if (statusCode == HttpStatus.SC_OK) {
+ return new String(method.getResponseBody(), "UTF-8");
+ // return method.getResponseBodyAsString();
+ }
+
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ /**
+ * post�ύ��
+ */
+ public static String postForm(String uri, String body) {
+ HttpClient client = new HttpClient();
+ client.setTimeout(6000);
+ PostMethod method = new PostMethod(uri);
+ method.addRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");//
+ method.addRequestHeader("Accept", "application/json");
+ method.setRequestBody(body);
+ try {
+ int statusCode = client.executeMethod(method);
+ if (statusCode == HttpStatus.SC_OK) {
+ return new String(method.getResponseBody(), "UTF-8");
+// return method.getResponseBodyAsString();
+ // return method.getResponseBodyAsString();
+ }
+
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return e.getMessage();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return e.getMessage();
+ }
+ return null;
+ }
+
+ /**
+ * ���� get����
+ */
+ @SuppressWarnings("deprecation")
+ public static String get(String uri) {
+ HttpClient client = new HttpClient();
+ client.setTimeout(6000);
+ GetMethod method = new GetMethod(uri);
+ try {
+ int statusCode = client.executeMethod(method);
+ if (statusCode == HttpStatus.SC_OK) {
+ return method.getResponseBodyAsString();
+ }
+
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ public static void main(String[] args) throws Exception {
+ // try {
+ // System.out
+ // .println(HTTP
+ // .get("http://v.juhe.cn/sms/send?mobile=13691291634&tpl_id=42731&tpl_value=%23username%23%3D%E4%BD%99%E4%BD%B3%E5%BB%BA%26%23startTime%23%3D2017-08-15+14%3A30%26%23endTime%23%3D2017-08-15+17%3A00&dtype=json&key=302dc9a8655b1de25b1e1258db99f4ea"));
+ // } catch (Exception e) {
+ // // TODO Auto-generated catch block
+ // e.printStackTrace();
+ // }
+ //
+ // String uri = "http://wrs.tunnel.qydev.com/ga_webservice/zdryPort";
+ //
+ // String xml =
+ // ""
+ // + ""
+ // + ""
+ // + ""
+ // + " "
+ // + "1"
+ // + ""
+ // + "1"
+ // + ""
+ // + "1"
+ // + ""
+ // + "1"
+ // + ""
+ // + "" + "";
+ // Map headers = new HashMap();
+ // // headers.put("Content-Type", "text/xml;utf-8");
+// String uri = "http://22.192.40.34:8080/qlimg/imgserver/uploadBase64";
+// String body = "data:image/png,"
+// + Img.img2base64("d:/111.png");
+// String re = HTTP.post(uri, body);
+// System.out.println(re);
+ }
+}
diff --git a/src/main/java/org/well/well/core/util/PointConvertUtility.java b/src/main/java/org/well/well/core/util/PointConvertUtility.java
new file mode 100644
index 0000000..088171a
--- /dev/null
+++ b/src/main/java/org/well/well/core/util/PointConvertUtility.java
@@ -0,0 +1,99 @@
+package org.well.well.core.util;
+
+import com.alibaba.fastjson.JSONObject;
+import com.google.gson.GsonBuilder;
+import io.netty.handler.codec.http.HttpUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.HashMap;
+import java.util.Map;
+
+public class PointConvertUtility {
+ private static final Logger logger = LoggerFactory.getLogger(PointConvertUtility.class);
+ private static final String baiduUrl= "http://api.map.baidu.com/geoconv/v1/";
+ private static final String baiduAk="QL9aqGNjgcRAGkt6F0BrsVmfGGOgjVyr";
+
+ private static final String gaodeUrl="https://restapi.amap.com/v3/assistant/coordinate/convert";
+ private static final String gaodeKey="ab182d27663bbbaac890730b55db2754";
+
+
+ public static Map convertBaiduAPI(String lng, String lat){
+ Map result = new HashMap();
+ String coords = lng+","+lat;
+ try {
+ Map params = new HashMap();
+ params.put("coords",coords);
+ params.put("ak",baiduAk);
+ params.put("from",1);
+ params.put("to",5);
+ String str = HttpClientUtils.post(baiduUrl,
+ new GsonBuilder().enableComplexMapKeySerialization().
+ create().toJson(params));
+ JSONObject jsStr = JSONObject.parseObject(str);
+ if(jsStr.getInteger("status")==0){
+ JSONObject coordinate = (JSONObject)jsStr.getJSONArray("result").get(0);
+ double x = coordinate.getDouble("x");
+ double y = coordinate.getDouble("y");
+ result.put("x",x);
+ result.put("y",y);
+ return result;
+ }else{
+ return null;
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ public static Map convertGaodeAPI(String lng, String lat){
+ Map result = new HashMap();
+ String coords = lng+","+lat;
+ try {
+ Map params = new HashMap();
+ params.put("locations",coords);
+ params.put("key",gaodeKey);
+ params.put("coordsys","gps");
+ String str = HttpClientUtils.post(gaodeUrl,
+ new GsonBuilder().enableComplexMapKeySerialization().
+ create().toJson(params));
+ JSONObject jsStr = JSONObject.parseObject(str);
+ if(jsStr.getInteger("status")==1){
+ String coordinate = jsStr.getString("locations");
+ String[] xy = coordinate.split(",");
+ if(xy!=null && xy.length >= 2){
+ result.put("x",xy[0]);
+ result.put("y",xy[1]);
+ }
+
+ return result;
+ }else{
+ return null;
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+// public static void convertCoordinate(BusWellInfo busWellInfo){
+// if(ToolUtil.isNotEmpty(busWellInfo.getCoordinateX()) && ToolUtil.isNotEmpty(busWellInfo.getCoordinateY())){
+// Map baiduCoordinate = PointConvertUtility.convertBaiduAPI(busWellInfo.getCoordinateX(),busWellInfo.getCoordinateY());
+// if(ToolUtil.isNotEmpty(baiduCoordinate)) {
+// busWellInfo.setLngBaidu(baiduCoordinate.get("x").toString());
+// busWellInfo.setLatBaidu(baiduCoordinate.get("y").toString());
+// }else{
+// logger.error("{}百度坐标转换失败",busWellInfo.getWellCode());
+// }
+//
+// Map gaodeCoordinate = PointConvertUtility.convertGaodeAPI(busWellInfo.getCoordinateX(),busWellInfo.getCoordinateY());
+// if(ToolUtil.isNotEmpty(gaodeCoordinate)) {
+// busWellInfo.setLngGaode(gaodeCoordinate.get("x").toString());
+// busWellInfo.setLatGaode(gaodeCoordinate.get("y").toString());
+// }else{
+// logger.error("{}高德坐标转换失败",busWellInfo.getWellCode());
+// }
+// }
+// }
+}
diff --git a/src/main/java/org/well/well/domain/Locator.java b/src/main/java/org/well/well/domain/Locator.java
new file mode 100644
index 0000000..c6a901b
--- /dev/null
+++ b/src/main/java/org/well/well/domain/Locator.java
@@ -0,0 +1,94 @@
+package org.well.well.domain;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.util.Date;
+
+
+@Entity
+@Table(name = "data_wellcover_loca")
+public class Locator implements Serializable {
+ /**
+ *
+ */
+ private static final long serialVersionUID = 429994083551525856L;
+ private Long dbId;
+ private String devCode;
+ private String wellCode;
+ private String longitude;
+ private String latitude;
+ private Date logtime;
+ private Date upTime;
+
+
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "ID")
+ public Long getDbId() {
+ return dbId;
+ }
+ public void setDbId(Long dbId) {
+ this.dbId = dbId;
+ }
+
+ @Column(name = "DEVCODE")
+ public String getDevCode() {
+ return devCode;
+ }
+
+ public void setDevCode(String devCode) {
+ this.devCode = devCode;
+ }
+
+
+ @Column(name = "LNG")
+ public String getLongitude() {
+ return longitude;
+ }
+
+ public void setLongitude(String longitude) {
+ this.longitude = longitude;
+ }
+
+ @Column(name = "LAT")
+ public String getLatitude() {
+ return latitude;
+ }
+
+ public void setLatitude(String latitude) {
+ this.latitude = latitude;
+ }
+
+ @Column(name = "LOGTIME")
+ public Date getLogtime() {
+ return logtime;
+ }
+ public void setLogtime(Date logtime) {
+ this.logtime = logtime;
+ }
+
+ @Column(name = "UPTIME")
+ public Date getUpTime() {
+ return upTime;
+ }
+
+ public void setUpTime(Date upTime) {
+ this.upTime = upTime;
+ }
+ @Column(name = "WELL_CODE")
+ public String getWellCode() {
+ return wellCode;
+ }
+
+ public void setWellCode(String wellCode) {
+ this.wellCode = wellCode;
+ }
+
+ public Locator(String devCode, String wellCode,String longitude, String latitude) {
+ this.devCode = devCode;
+ this.wellCode = wellCode;
+ this.latitude = latitude;
+ this.longitude = longitude;
+ this.logtime = new Date();
+ }
+}
diff --git a/src/main/java/org/well/well/domain/SysUser.java b/src/main/java/org/well/well/domain/SysUser.java
index 7021434..c70febb 100644
--- a/src/main/java/org/well/well/domain/SysUser.java
+++ b/src/main/java/org/well/well/domain/SysUser.java
@@ -5,7 +5,7 @@
/**
*
- * 部门表
+ * 人员表
*
*
*/
diff --git a/src/main/java/org/well/well/manager/AlarmRuleManager.java b/src/main/java/org/well/well/manager/AlarmRuleManager.java
index fb58dd7..7f62c9b 100644
--- a/src/main/java/org/well/well/manager/AlarmRuleManager.java
+++ b/src/main/java/org/well/well/manager/AlarmRuleManager.java
@@ -10,6 +10,9 @@
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
@Service
public class AlarmRuleManager extends HibernateEntityDao {
@@ -29,8 +32,8 @@
// criteria.createAlias("device", "device");
// criteria.add(Restrictions.eq("device.devCode", devCode));
criteria.add(Restrictions.eq("devCode", devCode));
- if(null!=sensorType)
- criteria.add(Restrictions.eq("sensorType", sensorType));
+ if (null != sensorType)
+ criteria.add(Restrictions.eq("sensorType", sensorType));
AlarmRule alarmRule = (AlarmRule) criteria.uniqueResult();
return alarmRule;
}
@@ -62,7 +65,7 @@
ruleStr += (null != alarmRule ? (String.valueOf(alarmRule.getHighValue()) + ",") : ",");
ruleStr += (null != alarmRule2 ? (String.valueOf(alarmRule2.getHighValue()) + ",") : ",");
ruleStr += (null != alarmRule3 ? (String.valueOf(alarmRule3.getHighValue()) +
- "^"+String.valueOf(alarmRule.getLowValue())) : "");
+ "^" + String.valueOf(alarmRule.getLowValue())) : "");
} else if (DeviceTypeEnum.Methane.toString().equals(devTypeName)) {
ruleStr += "50,25";
} else if (DeviceTypeEnum.WasteGas.toString().equals(devTypeName)) {
@@ -79,4 +82,34 @@
return ruleStr;
}
+ public Long getTenantIdBydep(String depId) {
+ try {
+ String sql = "SELECT TENANT_ID FROM sys_dept_detail s WHERE s.id=" + depId;
+ List