From 34f2832bef490cdce29ebb60c3bf17c3d9160f8a Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期四, 28 七月 2022 11:22:51 +0800
Subject: [PATCH] 优化gps信息存入数据库

---
 src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/CatalogResponseMessageHandler.java |   74 +-----------------------------------
 1 files changed, 3 insertions(+), 71 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 c4e88c5..ff71a92 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
@@ -111,6 +111,7 @@
                         int sumNum = Integer.parseInt(sumNumElement.getText());
 
                         if (sumNum == 0) {
+                            logger.info("[鏀跺埌閫氶亾]璁惧:{}鐨�: 0涓�", take.getDevice().getDeviceId());
                             // 鏁版嵁宸茬粡瀹屾暣鎺ユ敹
                             storager.cleanChannelsForDevice(take.getDevice().getDeviceId());
                             catalogDataCatch.setChannelSyncEnd(take.getDevice().getDeviceId(), null);
@@ -125,18 +126,14 @@
                                     if (channelDeviceElement == null) {
                                         continue;
                                     }
-                                    //by brewswang
-    //                        if (NumericUtil.isDouble(XmlUtil.getText(itemDevice, "Longitude"))) {//濡傛灉鍖呭惈浣嶇疆淇℃伅锛屽氨鏇存柊涓�涓嬩綅缃�
-    //                            processNotifyMobilePosition(evt, itemDevice);
-    //                        }
-                                    DeviceChannel deviceChannel = XmlUtil.channelContentHander(itemDevice, device);
+                                    DeviceChannel deviceChannel = XmlUtil.channelContentHander(itemDevice, device, null);
                                     deviceChannel.setDeviceId(take.getDevice().getDeviceId());
 
                                     channelList.add(deviceChannel);
                                 }
                                 int sn = Integer.parseInt(snElement.getText());
                                 catalogDataCatch.put(take.getDevice().getDeviceId(), sn, sumNum, take.getDevice(), channelList);
-                                logger.info("鏀跺埌鏉ヨ嚜璁惧銆恵}銆戠殑閫氶亾: {}涓紝{}/{}", take.getDevice().getDeviceId(), channelList.size(), catalogDataCatch.get(take.getDevice().getDeviceId()) == null ? 0 :catalogDataCatch.get(take.getDevice().getDeviceId()).size(), sumNum);
+                                logger.info("[鏀跺埌閫氶亾]璁惧: {} -> {}涓紝{}/{}", take.getDevice().getDeviceId(), channelList.size(), catalogDataCatch.get(take.getDevice().getDeviceId()) == null ? 0 :catalogDataCatch.get(take.getDevice().getDeviceId()).size(), sumNum);
                                 if (catalogDataCatch.get(take.getDevice().getDeviceId()).size() == sumNum) {
                                     // 鏁版嵁宸茬粡瀹屾暣鎺ユ敹
                                     boolean resetChannelsResult = storager.resetChannels(take.getDevice().getDeviceId(), catalogDataCatch.get(take.getDevice().getDeviceId()));
@@ -169,71 +166,6 @@
     @Override
     public void handForPlatform(RequestEvent evt, ParentPlatform parentPlatform, Element rootElement) {
 
-    }
-
-    /**
-     * 澶勭悊璁惧浣嶇疆鐨勬洿鏂�
-     *
-     * @param evt, itemDevice
-     */
-    private void processNotifyMobilePosition(RequestEvent evt, Element itemDevice) {
-        try {
-            // 鍥炲 200 OK
-            Element rootElement = getRootElement(evt);
-            MobilePosition mobilePosition = new MobilePosition();
-            Element deviceIdElement = rootElement.element("DeviceID");
-            String deviceId = deviceIdElement.getTextTrim().toString();
-            Device device = redisCatchStorage.getDevice(deviceId);
-            if (device != null) {
-                if (!StringUtils.isEmpty(device.getName())) {
-                    mobilePosition.setDeviceName(device.getName());
-                }
-            }
-            mobilePosition.setDeviceId(XmlUtil.getText(rootElement, "DeviceID"));
-
-            String time = XmlUtil.getText(itemDevice, "Time");
-            if(time==null){
-                time =  XmlUtil.getText(itemDevice, "EndTime");
-            }
-            mobilePosition.setTime(time);
-            String longitude = XmlUtil.getText(itemDevice, "Longitude");
-            if(longitude!=null) {
-                mobilePosition.setLongitude(Double.parseDouble(longitude));
-            }
-            String latitude = XmlUtil.getText(itemDevice, "Latitude");
-            if(latitude!=null) {
-                mobilePosition.setLatitude(Double.parseDouble(latitude));
-            }
-            if (NumericUtil.isDouble(XmlUtil.getText(itemDevice, "Speed"))) {
-                mobilePosition.setSpeed(Double.parseDouble(XmlUtil.getText(itemDevice, "Speed")));
-            } else {
-                mobilePosition.setSpeed(0.0);
-            }
-            if (NumericUtil.isDouble(XmlUtil.getText(itemDevice, "Direction"))) {
-                mobilePosition.setDirection(Double.parseDouble(XmlUtil.getText(itemDevice, "Direction")));
-            } else {
-                mobilePosition.setDirection(0.0);
-            }
-            if (NumericUtil.isDouble(XmlUtil.getText(itemDevice, "Altitude"))) {
-                mobilePosition.setAltitude(Double.parseDouble(XmlUtil.getText(itemDevice, "Altitude")));
-            } else {
-                mobilePosition.setAltitude(0.0);
-            }
-            mobilePosition.setReportSource("Mobile Position");
-            // 榛樿鏉ユ簮鍧愭爣绯讳负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);
-            }
-            storager.insertMobilePosition(mobilePosition);
-            responseAck(evt, Response.OK);
-        } catch (DocumentException | SipException | InvalidArgumentException | ParseException e) {
-            e.printStackTrace();
-        }
     }
 
     public SyncStatus getChannelSyncProgress(String deviceId) {

--
Gitblit v1.8.0