From cc63a52884ca3c56df66b74aa508803ff91c20e0 Mon Sep 17 00:00:00 2001
From: chenjialing <595168663@qq.com>
Date: 星期五, 06 五月 2022 17:44:56 +0800
Subject: [PATCH] 开发----增加预置位查询接口开发

---
 src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/CatalogResponseMessageHandler.java |   23 ++++++++++++++++-------
 1 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/CatalogResponseMessageHandler.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/CatalogResponseMessageHandler.java
index 2ec8047..910524d 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/CatalogResponseMessageHandler.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/CatalogResponseMessageHandler.java
@@ -12,6 +12,7 @@
 import com.genersoft.iot.vmp.gb28181.transmit.event.request.SIPRequestProcessorParent;
 import com.genersoft.iot.vmp.gb28181.transmit.event.request.impl.message.IMessageHandler;
 import com.genersoft.iot.vmp.gb28181.transmit.event.request.impl.message.response.ResponseMessageHandler;
+import com.genersoft.iot.vmp.gb28181.utils.Coordtransform;
 import com.genersoft.iot.vmp.gb28181.utils.NumericUtil;
 import com.genersoft.iot.vmp.gb28181.utils.XmlUtil;
 import com.genersoft.iot.vmp.storager.IRedisCatchStorage;
@@ -118,8 +119,8 @@
                         channelList.add(deviceChannel);
                     }
                     int sn = Integer.parseInt(snElement.getText());
-                    logger.info("鏀跺埌鏉ヨ嚜璁惧銆恵}銆戠殑閫氶亾: {}涓紝{}/{}", device.getDeviceId(), channelList.size(), catalogDataCatch.get(key) == null ? 0 :catalogDataCatch.get(key).size(), sumNum);
                     catalogDataCatch.put(device.getDeviceId(), sn, sumNum, device, channelList);
+                    logger.info("鏀跺埌鏉ヨ嚜璁惧銆恵}銆戠殑閫氶亾: {}涓紝{}/{}", device.getDeviceId(), channelList.size(), catalogDataCatch.get(device.getDeviceId()) == null ? 0 :catalogDataCatch.get(device.getDeviceId()).size(), sumNum);
                     if (catalogDataCatch.get(device.getDeviceId()).size() == sumNum) {
                         // 鏁版嵁宸茬粡瀹屾暣鎺ユ敹
                         boolean resetChannelsResult = storager.resetChannels(device.getDeviceId(), catalogDataCatch.get(device.getDeviceId()));
@@ -199,12 +200,12 @@
                 mobilePosition.setAltitude(0.0);
             }
             mobilePosition.setReportSource("Mobile Position");
-            BaiduPoint bp = new BaiduPoint();
-            bp = GpsUtil.Wgs84ToBd09(String.valueOf(mobilePosition.getLongitude()), String.valueOf(mobilePosition.getLatitude()));
-            logger.info("鐧惧害鍧愭爣锛�" + bp.getBdLng() + ", " + bp.getBdLat());
-            mobilePosition.setGeodeticSystem("BD-09");
-            mobilePosition.setCnLng(bp.getBdLng());
-            mobilePosition.setCnLat(bp.getBdLat());
+            // 榛樿鏉ユ簮鍧愭爣绯讳负WGS-84澶勭悊
+            Double[] gcj02Point = Coordtransform.WGS84ToGCJ02(mobilePosition.getLongitude(), mobilePosition.getLatitude());
+            logger.info("GCJ02鍧愭爣锛�" + gcj02Point[0] + ", " + gcj02Point[1]);
+            mobilePosition.setGeodeticSystem("GCJ-02");
+            mobilePosition.setCnLng(gcj02Point[0] + "");
+            mobilePosition.setCnLat(gcj02Point[1] + "");
             if (!userSetting.getSavePositionHistory()) {
                 storager.clearMobilePositionsByDeviceId(deviceId);
             }
@@ -223,6 +224,14 @@
         }
     }
 
+    public boolean isSyncRunning(String deviceId) {
+        if (catalogDataCatch.get(deviceId) == null) {
+            return false;
+        }else {
+            return catalogDataCatch.isSyncRunning(deviceId);
+        }
+    }
+
     public void setChannelSyncReady(Device device, int sn) {
         catalogDataCatch.addReady(device, sn);
     }

--
Gitblit v1.8.0