From a012007f36ba1ce44e9c932ea33120949835dfb7 Mon Sep 17 00:00:00 2001 From: 648540858 <456panlinlin> Date: 星期一, 25 四月 2022 17:12:29 +0800 Subject: [PATCH] 多级虚拟组织处理修复 --- src/main/java/com/genersoft/iot/vmp/gb28181/utils/XmlUtil.java | 37 +++++++++++++++++++++++++------------ 1 files changed, 25 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/utils/XmlUtil.java b/src/main/java/com/genersoft/iot/vmp/gb28181/utils/XmlUtil.java index 94e0cd8..3da7217 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/utils/XmlUtil.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/utils/XmlUtil.java @@ -20,8 +20,8 @@ /** * 鍩轰簬dom4j鐨勫伐鍏峰寘 - * - * + * + * */ public class XmlUtil { /** @@ -31,9 +31,9 @@ /** * 瑙f瀽XML涓篋ocument瀵硅薄 - * + * * @param xml 琚В鏋愮殑XMl - * + * * @return Document */ public static Element parseXml(String xml) { @@ -51,7 +51,7 @@ /** * 鑾峰彇element瀵硅薄鐨則ext鐨勫�� - * + * * @param em 鑺傜偣鐨勫璞� * @param tag 鑺傜偣鐨則ag * @return 鑺傜偣 @@ -62,12 +62,12 @@ } Element e = em.element(tag); // - return null == e ? null : e.getText(); + return null == e ? null : e.getText().trim(); } /** * 閫掑綊瑙f瀽xml鑺傜偣锛岄�傜敤浜� 澶氳妭鐐规暟鎹� - * + * * @param node node * @param nodeName nodeName * @return List<Map<String, Object>> @@ -106,7 +106,7 @@ /** * xml杞琷son - * + * * @param element * @param json */ @@ -191,7 +191,7 @@ String channelId = channdelIdElement != null ? channdelIdElement.getTextTrim().toString() : ""; deviceChannel.setChannelId(channelId); // ONLINE OFFLINE HIKVISION DS-7716N-E4 NVR鐨勫吋瀹规�у鐞� - if (status.equals("ON") || status.equals("On") || status.equals("ONLINE")) { + if (status.equals("ON") || status.equals("On") || status.equals("ONLINE") || status.equals("OK")) { deviceChannel.setStatus(1); } if (status.equals("OFF") || status.equals("Off") || status.equals("OFFLINE")) { @@ -211,6 +211,14 @@ deviceChannel.setParental(Integer.parseInt(XmlUtil.getText(itemDevice, "Parental"))); } deviceChannel.setParentId(XmlUtil.getText(itemDevice, "ParentID")); + String parentId = XmlUtil.getText(itemDevice, "ParentID"); + if (parentId.contains("/")) { + String lastParentId = parentId.substring(parentId.lastIndexOf("/") + 1); + deviceChannel.setParentId(lastParentId); + }else { + deviceChannel.setParentId(parentId); + } + if (XmlUtil.getText(itemDevice, "SafetyWay") == null || XmlUtil.getText(itemDevice, "SafetyWay") == "") { deviceChannel.setSafetyWay(0); @@ -255,9 +263,14 @@ } else { deviceChannel.setLatitude(0.00); } - if (XmlUtil.getText(itemDevice, "PTZType") == null - || XmlUtil.getText(itemDevice, "PTZType") == "") { - deviceChannel.setPTZType(0); + if (XmlUtil.getText(itemDevice, "PTZType") == null || "".equals(XmlUtil.getText(itemDevice, "PTZType"))) { + //鍏煎INFO涓殑淇℃伅 + Element info = itemDevice.element("Info"); + if(XmlUtil.getText(info, "PTZType") == null || "".equals(XmlUtil.getText(info, "PTZType"))){ + deviceChannel.setPTZType(0); + }else{ + deviceChannel.setPTZType(Integer.parseInt(XmlUtil.getText(info, "PTZType"))); + } } else { deviceChannel.setPTZType(Integer.parseInt(XmlUtil.getText(itemDevice, "PTZType"))); } -- Gitblit v1.8.0