From a5b3c4bae726ef6770d4bfcbf2f4b50a37ed4a15 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期五, 06 三月 2020 15:31:36 +0800 Subject: [PATCH] 删除了郭雪城的 DeviceUi 这个类 --- ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddDevicePage.cs | 181 ++++++++++++++++++++++++++++++--------------- 1 files changed, 120 insertions(+), 61 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddDevicePage.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddDevicePage.cs index c57bf0f..4c2bb2d 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddDevicePage.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddDevicePage.cs @@ -30,27 +30,68 @@ this.curDeviceBindType = deviceBindType; } - #region 鈼� 鍙橀噺鐢虫槑__________________________ + #region 鍙橀噺鐢虫槑 + /// <summary> + /// 褰撳墠鎸夐敭 + /// </summary> ZigBee.Device.Panel currentKey; - //鏄剧ず琚粦瀹氳澶囨垨鍦烘櫙鐨剉iew + /// <summary> + /// 鏄剧ず琚粦瀹氳澶囨垨鍦烘櫙鐨剉iew + /// </summary> VerticalScrolViewLayout midVerticalScrolViewLayout; + /// <summary> + /// 鏄剧ず鎴块棿鐨剉iew + /// </summary> HorizontalScrolViewLayout btnHorizontalScrolViewLayout; /// <summary> /// 鎸夐敭閰嶇疆鐨勭洰鏍囧垪琛� /// </summary> List<CommonDevice> targetList = new List<CommonDevice>(); + /// <summary> + /// 鎴块棿鍒楄〃 + /// </summary> List<Room> roomList = new List<Room>(); + /// <summary> + /// 娣诲姞璁惧鍚庣殑鍥炶皟 + /// </summary> public Action<List<BindListResponseObj>> actionAddDevicePage; - List<DeviceUI> curTypeDeviceList = new List<DeviceUI> { }; + /// <summary> + /// 褰撳墠璁惧绫诲瀷鍒楄〃 + /// </summary> + List<CommonDevice> curTypeDeviceList = new List<CommonDevice> { }; + /// <summary> + /// 褰撳墠璁惧缁戝畾绫诲瀷 + /// </summary> string curDeviceBindType = ""; + /// <summary> + /// 妤煎眰鏂囨湰 + /// </summary> Button btnFloorText; + /// <summary> + /// 妤煎眰琛� + /// </summary> Dictionary<string, string> dicFloor; + /// <summary> + /// 褰撳墠閫夋嫨鐨勬寜閿ā寮� + /// </summary> Button btnChooseKeyMode; - bool IsInitEntry = false;//鏄惁棣栨杩涘叆璇ラ〉 - List<DeviceUI> currentKeyAllRoomDeviceList = new List<DeviceUI>(); + /// <summary> + /// 鏄惁棣栨杩涘叆璇ラ〉 + /// </summary> + bool IsInitEntry = false; + /// <summary> + /// 褰撳墠鎸夐敭鐨勬墍鏈夋埧闂磋澶囧垪琛� + /// </summary> + List<CommonDevice> currentKeyAllRoomDeviceList = new List<CommonDevice>(); + /// <summary> + /// 涓存椂瀛樺偍鐨勭洰鏍囧垪琛� + /// </summary> Dictionary<string, CommonDevice> oldTargetList = new Dictionary<string, CommonDevice> { }; #endregion + /// <summary> + /// 娣诲姞璁惧鏄剧ず + /// </summary> public void Show() { targetList.Clear(); @@ -126,6 +167,9 @@ MidFrameLayoutContent(btnFloorText); } + /// <summary> + /// 涓儴甯冨眬 + /// </summary> async void MidFrameLayoutContent(Button btnFloorText) { #region UI @@ -177,14 +221,15 @@ #region 鏁版嵁澶勭悊 //鑾峰彇妤煎眰 - dicFloor = Common.Room.CurrentRoom.GetFloorSortList(); + dicFloor = HdlRoomLogic.Current.GetFloorSortList(); currentKey.currentSelectFloorId = BindInfo.GetCurrentSelectFloorId(); btnFloorText.Text = BindInfo.GetCurrentSelectFloorIdName(); if (Common.Config.Instance.Home.FloorDics.Count == 0) { // 鑾峰彇娌℃湁妤煎眰鎴块棿 - foreach (var room in Shared.Common.Room.Lists) + var listAllRoom = HdlRoomLogic.Current.GetAllListRooms(); + foreach (var room in listAllRoom) { if (string.IsNullOrEmpty(room.FloorId)) { @@ -193,9 +238,10 @@ } } else - { - // 鑾峰彇妤煎眰瀵瑰簲瀵规埧闂� - foreach (var room in Shared.Common.Room.Lists) + { + // 鑾峰彇妤煎眰瀵瑰簲瀵规埧闂� + var listAllRoom = HdlRoomLogic.Current.GetAllListRooms(); + foreach (var room in listAllRoom) { if (room.FloorId == currentKey.currentSelectFloorId) { @@ -211,13 +257,13 @@ { foreach (var devA in currentKeyAllRoomDeviceList) { - var id = devA.CommonDevice?.DeviceAddr + devA.CommonDevice?.DeviceEpoint; + var id = devA.DeviceAddr + devA.DeviceEpoint; var dev = currentKey.bindList.Find(obj => (obj != null) && (obj.BindMacAddr + obj.BindEpoint == id)); if (dev != null) { if (!oldTargetList.ContainsKey(id)) { - oldTargetList.Add(id, devA.CommonDevice); + oldTargetList.Add(id, devA); } } } @@ -405,16 +451,20 @@ RefreshDeviceList(curRoom); } - //褰撳墠鎸夐敭鎵�鏈夋樉绀烘埧闂寸殑鎵�鏈夎澶囧鐞� - List<DeviceUI> GetALlDispalyRoomDeviceList() + /// <summary> + /// 褰撳墠鎸夐敭鎵�鏈夋樉绀烘埧闂寸殑鎵�鏈夎澶囧鐞� + /// </summary> + /// <returns></returns> + List<CommonDevice> GetALlDispalyRoomDeviceList() { - currentKeyAllRoomDeviceList.Clear(); + currentKeyAllRoomDeviceList.Clear(); + var listAllRoom = HdlRoomLogic.Current.GetAllListRooms(); switch (curDeviceBindType) { case "AddSwitch": - foreach (var r in Shared.Common.Room.Lists) + foreach (var r in listAllRoom) { - if (r.DeviceUIList.Count == 0) + if (r.ListDevice.Count == 0) { continue; } @@ -422,11 +472,12 @@ { continue; } - foreach (var device in r.DeviceUIList) + foreach (var deviceKeys in r.ListDevice) { - if (device.CommonDevice != null) + var device = LocalDevice.Current.GetDevice(deviceKeys); + if (device != null) { - var dev = device.CommonDevice.InClusterList.Find(obj => (obj != null) && (obj.InCluster == 6)); + var dev = device.InClusterList.Find(obj => (obj != null) && (obj.InCluster == 6)); if (dev != null) { currentKeyAllRoomDeviceList.Add(device); @@ -436,21 +487,22 @@ } break; case "AddDimmer": - foreach (var r in Shared.Common.Room.Lists) + foreach (var r in listAllRoom) { - if (r.DeviceUIList.Count == 0) + if (r.ListDevice.Count == 0) { continue; } if (r.IsLove == true) { continue; - } - foreach (var device in r.DeviceUIList) + } + foreach (var deviceKeys in r.ListDevice) { - if (device.CommonDevice != null) + var device = LocalDevice.Current.GetDevice(deviceKeys); + if (device != null) { - var dev = device.CommonDevice.InClusterList.Find(obj => (obj != null) && (obj.InCluster == 8)); + var dev = device.InClusterList.Find(obj => (obj != null) && (obj.InCluster == 8)); if (dev != null) { currentKeyAllRoomDeviceList.Add(device); @@ -460,9 +512,9 @@ } break; case "AddCurtain": - foreach (var r in Shared.Common.Room.Lists) + foreach (var r in listAllRoom) { - if (r.DeviceUIList.Count == 0) + if (r.ListDevice.Count == 0) { continue; } @@ -470,11 +522,12 @@ { continue; } - foreach (var device in r.DeviceUIList) + foreach (var deviceKeys in r.ListDevice) { - if (device.CommonDevice != null) + var device = LocalDevice.Current.GetDevice(deviceKeys); + if (device != null) { - var dev = device.CommonDevice.InClusterList.Find(obj => (obj != null) && (obj.InCluster == 258)); + var dev = device.InClusterList.Find(obj => (obj != null) && (obj.InCluster == 258)); if (dev != null) { currentKeyAllRoomDeviceList.Add(device); @@ -499,11 +552,12 @@ switch (curDeviceBindType) { case "AddSwitch": - foreach (var device in curRoom.DeviceUIList) - { - if (device.CommonDevice != null) + foreach (var deviceKeys in curRoom.ListDevice) + { + var device = LocalDevice.Current.GetDevice(deviceKeys); + if (device != null) { - var dev = device.CommonDevice.InClusterList.Find(obj => (obj != null) && (obj.InCluster == 6)); + var dev = device.InClusterList.Find(obj => (obj != null) && (obj.InCluster == 6)); if (dev != null) { curTypeDeviceList.Add(device); @@ -511,12 +565,13 @@ } } break; - case "AddDimmer": - foreach (var device in curRoom.DeviceUIList) - { - if (device.CommonDevice != null) + case "AddDimmer": + foreach (var deviceKeys in curRoom.ListDevice) + { + var device = LocalDevice.Current.GetDevice(deviceKeys); + if (device != null) { - var dev = device.CommonDevice.InClusterList.Find(obj => (obj != null) && (obj.InCluster == 8)); + var dev = device.InClusterList.Find(obj => (obj != null) && (obj.InCluster == 8)); if (dev != null) { curTypeDeviceList.Add(device); @@ -524,12 +579,13 @@ } } break; - case "AddCurtain": - foreach (var device in curRoom.DeviceUIList) - { - if (device.CommonDevice != null) + case "AddCurtain": + foreach (var deviceKeys in curRoom.ListDevice) + { + var device = LocalDevice.Current.GetDevice(deviceKeys); + if (device != null) { - var dev = device.CommonDevice.InClusterList.Find(obj => (obj != null) && (obj.InCluster == 258)); + var dev = device.InClusterList.Find(obj => (obj != null) && (obj.InCluster == 258)); if (dev != null) { curTypeDeviceList.Add(device); @@ -542,7 +598,7 @@ foreach (var device in curTypeDeviceList) { curIndex++; - if (device.CommonDevice != null && device.CommonDevice.IsOnline == 0) + if (device != null && device.IsOnline == 0) { continue; } @@ -551,7 +607,7 @@ { Height = Application.GetRealHeight(23 + 127), BackgroundColor = Shared.Common.ZigbeeColor.Current.XMWhite, - Tag = device.CommonDevice?.DeviceEpointName, + Tag = device.DeviceEpointName, }; midVerticalScrolViewLayout.AddChidren(rowLayout); @@ -562,7 +618,7 @@ Width = Application.GetMinRealAverage(81), Height = Application.GetMinRealAverage(81), UnSelectedImagePath = device.IconPath, - Tag = device.CommonDevice?.DeviceEpointName, + Tag = device.DeviceEpointName, }; rowLayout.AddChidren(devicePic); @@ -572,7 +628,7 @@ X = devicePic.Right + Application.GetRealWidth(20), TextColor = Shared.Common.ZigbeeColor.Current.TextBlack, TextAlignment = TextAlignment.CenterLeft, - Tag = device.CommonDevice?.DeviceEpointName, + Tag = device.DeviceEpointName, TextSize = 15, }; rowLayout.AddChidren(btnBindName); @@ -586,7 +642,7 @@ SelectedImagePath = "DoorLock/SelectedIcon.png", TextColor = Shared.Common.ZigbeeColor.Current.XMWhite, Visible = false, - Tag = device.CommonDevice?.DeviceEpointName, + Tag = device.DeviceEpointName, }; rowLayout.AddChidren(btnChoose); @@ -612,7 +668,7 @@ if (!btnChoose.IsSelected) { - targetList.Remove(device.CommonDevice); + targetList.Remove(device); btnChoose.IsSelected = false; btnChoose.Visible = false; } @@ -624,7 +680,7 @@ } else { - targetList.Add(device.CommonDevice); + targetList.Add(device); btnChoose.IsSelected = true; btnChoose.Visible = true; } @@ -645,17 +701,17 @@ btnBindName.MouseUpEventHandler += hander; btnChoose.MouseUpEventHandler += hander; - if (string.IsNullOrEmpty(device.CommonDevice?.DeviceEpointName)) + if (string.IsNullOrEmpty(device.DeviceEpointName)) { - btnBindName.Text = device.CommonDevice?.DeviceAddr + "_" + device.CommonDevice?.DeviceEpoint; + btnBindName.Text = device.DeviceAddr + "_" + device.DeviceEpoint; } else { - btnBindName.Text = device.CommonDevice?.DeviceEpointName; + btnBindName.Text = device.DeviceEpointName; } foreach (var bindedDev in targetList) { - var id = device.CommonDevice?.DeviceAddr + device.CommonDevice?.DeviceEpoint; + var id = device.DeviceAddr + device.DeviceEpoint; if (id == bindedDev.DeviceAddr + bindedDev.DeviceEpoint) { btnChoose.IsSelected = true; @@ -675,7 +731,9 @@ } } - // 渚ц竟瀵艰埅鏍� + /// <summary> + /// 閫夋嫨妤煎眰鐨勪晶杈规爮 + /// </summary> void SideslipFramelayout() { var dialog = new Dialog @@ -789,10 +847,11 @@ btnMethodText.IsSelected = true; oldbuttonText.TextColor = Shared.Common.ZigbeeColor.Current.XMBlack; oldbuttonText.IsBold = true; - } - - //鑾峰彇妤煎眰瀵瑰簲鐨勬埧闂� - foreach (var room in Shared.Common.Room.Lists) + } + + //鑾峰彇妤煎眰瀵瑰簲鐨勬埧闂� + var listAllRoom = HdlRoomLogic.Current.GetAllListRooms(); + foreach (var room in listAllRoom) { if (room.FloorId == currentKey.currentSelectFloorId) { -- Gitblit v1.8.0