| | |
| | |
|
| | | /**
|
| | | * 基于dom4j的工具包
|
| | | * |
| | | * |
| | | *
|
| | | *
|
| | | */
|
| | | public class XmlUtil {
|
| | | /**
|
| | |
| | |
|
| | | /**
|
| | | * 解析XML为Document对象
|
| | | * |
| | | *
|
| | | * @param xml 被解析的XMl
|
| | | * |
| | | *
|
| | | * @return Document
|
| | | */
|
| | | public static Element parseXml(String xml) {
|
| | |
| | |
|
| | | /**
|
| | | * 获取element对象的text的值
|
| | | * |
| | | *
|
| | | * @param em 节点的对象
|
| | | * @param tag 节点的tag
|
| | | * @return 节点
|
| | |
| | | }
|
| | | Element e = em.element(tag);
|
| | | //
|
| | | return null == e ? null : e.getText();
|
| | | return null == e ? null : e.getText().trim();
|
| | | }
|
| | |
|
| | | /**
|
| | | * 递归解析xml节点,适用于 多节点数据
|
| | | * |
| | | *
|
| | | * @param node node
|
| | | * @param nodeName nodeName
|
| | | * @return List<Map<String, Object>>
|
| | |
| | |
|
| | | /**
|
| | | * xml转json
|
| | | * |
| | | *
|
| | | * @param element
|
| | | * @param json
|
| | | */
|
| | |
| | | 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")) {
|
| | |
| | | } 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")));
|
| | | }
|