| | |
| | | deviceChannel.setCivilCode(XmlUtil.getText(itemDevice, "CivilCode"));
|
| | | deviceChannel.setBlock(XmlUtil.getText(itemDevice, "Block"));
|
| | | deviceChannel.setAddress(XmlUtil.getText(itemDevice, "Address"));
|
| | | String businessGroupID = XmlUtil.getText(itemDevice, "BusinessGroupID");
|
| | | if (XmlUtil.getText(itemDevice, "Parental") == null
|
| | | || XmlUtil.getText(itemDevice, "Parental") == "") {
|
| | | deviceChannel.setParental(0);
|
| | | || XmlUtil.getText(itemDevice, "Parental").equals("")) {
|
| | | if (deviceChannel.getChannelId().length() <= 10
|
| | | || (deviceChannel.getChannelId().length() == 20 && (
|
| | | Integer.parseInt(deviceChannel.getChannelId().substring(10, 13)) == 215
|
| | | || Integer.parseInt(deviceChannel.getChannelId().substring(10, 13)) == 216
|
| | | )
|
| | | )
|
| | | ) {
|
| | | deviceChannel.setParental(1);
|
| | | }else {
|
| | | deviceChannel.setParental(0);
|
| | | }
|
| | | } else {
|
| | | deviceChannel.setParental(Integer.parseInt(XmlUtil.getText(itemDevice, "Parental")));
|
| | | // 由于海康会错误的发送65535作为这里的取值,所以这里除非是0否则认为是1
|
| | | deviceChannel.setParental(Integer.parseInt(XmlUtil.getText(itemDevice, "Parental")) == 1?1:0);
|
| | | }
|
| | | deviceChannel.setParentId(XmlUtil.getText(itemDevice, "ParentID"));
|
| | | String parentId = XmlUtil.getText(itemDevice, "ParentID");
|
| | | if (parentId != null) {
|
| | | if (parentId.contains("/")) {
|
| | | String lastParentId = parentId.substring(parentId.lastIndexOf("/") + 1);
|
| | | deviceChannel.setParentId(lastParentId);
|
| | | }else {
|
| | | deviceChannel.setParentId(parentId);
|
| | | }
|
| | | }else {
|
| | | if (deviceChannel.getChannelId().length() <= 10) { // 此时为行政区划, 上下级行政区划使用DeviceId关联
|
| | | deviceChannel.setParentId(deviceChannel.getChannelId().substring(0, deviceChannel.getChannelId().length() - 2));
|
| | | }else if (deviceChannel.getChannelId().length() == 20) {
|
| | | if (Integer.parseInt(deviceChannel.getChannelId().substring(10, 13)) == 216) { // 虚拟组织
|
| | | deviceChannel.setParentId(businessGroupID);
|
| | | }else if (deviceChannel.getCivilCode() != null) {
|
| | | // 设备, 无parentId的20位是使用CivilCode表示上级的设备,
|
| | | // 注:215 业务分组是需要有parentId的
|
| | | deviceChannel.setParentId(deviceChannel.getCivilCode());
|
| | | }
|
| | | }else {
|
| | | deviceChannel.setParentId(deviceChannel.getDeviceId());
|
| | | }
|
| | | }
|
| | |
|
| | | if (XmlUtil.getText(itemDevice, "SafetyWay") == null
|
| | | || XmlUtil.getText(itemDevice, "SafetyWay") == "") {
|
| | | deviceChannel.setSafetyWay(0);
|
| | |
| | | deviceChannel.setHasAudio(true); // 默认含有音频,播放时再检查是否有音频及是否AAC
|
| | | return deviceChannel;
|
| | | }
|
| | | }
|
| | | } |