From 7dd4be37cdedaf81ad40990d8cb8dce164d83f4d Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期二, 19 五月 2020 10:31:16 +0800 Subject: [PATCH] 34444444 --- ZigbeeApp/Shared/Common/Device.cs | 31 ++++++++++++++++++++++++++++++- 1 files changed, 30 insertions(+), 1 deletions(-) diff --git a/ZigbeeApp/Shared/Common/Device.cs b/ZigbeeApp/Shared/Common/Device.cs index 75fe150..00c334c 100755 --- a/ZigbeeApp/Shared/Common/Device.cs +++ b/ZigbeeApp/Shared/Common/Device.cs @@ -732,7 +732,7 @@ /// <returns></returns> public bool DeviceIsCanFixedPosition(CommonDevice device) { - if (device.Type == DeviceType.DoorLock) + if (device.Type == DeviceType.DoorLock || device.Type == DeviceType.PMSensor) { //闂ㄩ攣娌℃湁瀹氫綅鍔熻兘 return false; @@ -1982,6 +1982,16 @@ this.dicDeviceRoomId[listDevice[0].DeviceAddr] = roomId; save = true; } + else + { + //2020.05.18杩藉姞:濡傛灉璁板綍鐨勬埧闂碔D鏄笉瀛樺湪鐨勮瘽,鍒欓噸鏂拌鐩� + var room = HdlRoomLogic.Current.GetRoomById(this.dicDeviceRoomId[listDevice[0].DeviceAddr]); + if (room == null) + { + this.dicDeviceRoomId[listDevice[0].DeviceAddr] = roomId; + save = true; + } + } } if (save == true) @@ -2063,6 +2073,25 @@ HdlAutoBackupLogic.AddOrEditorFile(DirNameResourse.DeviceRoomIdFile); } + /// <summary> + /// 鏍规嵁鎴块棿ID,绉婚櫎鎸囧畾鐨勭湡瀹炵墿鐞嗚澶囩殑鎵�灞炴埧闂磋褰� + /// </summary> + /// <param name="i_RoomId"></param> + public void DeleteRealDeviceByRoomId(string i_RoomId) + { + var listDeleteKey = new List<string>(); + foreach (var deviceAddr in this.dicDeviceRoomId.Keys) + { + if (this.dicDeviceRoomId[deviceAddr] == i_RoomId + && listDeleteKey.Contains(deviceAddr) == false) + { + listDeleteKey.Add(deviceAddr); + } + } + //灏嗙湡瀹炵墿鐞嗚澶囦粠鎴块棿涓Щ闄� + this.DeleteRealDeviceFromRoom(listDeleteKey); + } + #endregion #region 鈻� 璁惧鎺掑簭___________________________ -- Gitblit v1.8.0