From 98ceb6bd2021f9ff136cda27eef28676dd7b5d92 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期四, 21 五月 2020 13:24:02 +0800 Subject: [PATCH] 最后的版本 --- ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/ChooseKeyModePage.cs | 175 ++++++++++++++++++++++++++++++++++------------------------ 1 files changed, 103 insertions(+), 72 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/ChooseKeyModePage.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/ChooseKeyModePage.cs index 953f73e..730ce66 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/ChooseKeyModePage.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/ChooseKeyModePage.cs @@ -5,19 +5,8 @@ using static ZigBee.Device.BindObj; namespace Shared.Phone.UserCenter.DeviceBind { - public class ChooseKeyModePage : BindCommonLayout, ZigBee.Common.IStatus + public class ChooseKeyModePage : BindCommonLayout { - /// <summary> - /// 鎸夐敭妯″紡鎺ユ敹 - /// </summary> - /// <param name="common">Common.</param> - public void Changed(CommonDevice common) - { - Shared.Application.RunOnMainThread(() => - { - }); - } - /// 鏋勯�犲嚱鏁� /// </summary> /// <param name="doorLock"></param> @@ -29,23 +18,46 @@ this.targetList = targetSelectList; } - #region 鈼� 鍙橀噺鐢虫槑__________________________ - ZigBee.Device.Panel currentKey;//褰撳墠鎸夐敭 - //鏄剧ず琚粦瀹氳澶囨垨鍦烘櫙鐨剉iew - VerticalScrolViewLayout midVerticalScrolViewLayout;//涓儴鍒锋柊鍒楄〃 - HorizontalScrolViewLayout btnHorizontalScrolViewLayout;//鎴块棿鍒楄〃宸﹀彸婊戝姩甯冨眬 + #region 鍙橀噺鐢虫槑 + /// <summary> + /// 褰撳墠鎸夐敭 + /// </summary> + ZigBee.Device.Panel currentKey; + /// <summary> + /// 涓儴鍒锋柊鍒楄〃 + /// </summary> + VerticalScrolViewLayout midVerticalScrolViewLayout; + /// <summary> + /// 鎴块棿鍒楄〃宸﹀彸婊戝姩甯冨眬 + /// </summary> + HorizontalScrolViewLayout btnHorizontalScrolViewLayout; /// <summary> /// 鎸夐敭閰嶇疆鐨勭洰鏍囧垪琛� /// </summary> - List<CommonDevice> targetList = new List<CommonDevice>();//鏈湴涓存椂閫変腑鍒楄〃 + List<CommonDevice> targetList = new List<CommonDevice>(); /// <summary> - /// 鏂扮殑鎸夐敭閰嶇疆鐩爣鍒楄〃涓紝鐩爣瀹為檯瀛樺湪鎸夐敭涓紝姝ゆ椂瑕佸垹鎺夌殑鏁版嵁 + /// 鏈湴鏃х殑閫変腑鍒楄〃 /// </summary> - List<CommonDevice> oldTargetList = new List<CommonDevice>();//鏈湴鏃х殑閫変腑鍒楄〃 - int currentClusterID = 6;//褰撳墠绨嘔D - public Action<List<BindListResponseObj>> action;//鍥炶皟缁戝畾鐩爣椤甸潰鍒锋柊 - int currentModeID = 0;//褰撳墠妯″紡ID - string curDeviceBindType = "";//褰撳墠璁惧缁戝畾绫诲瀷 + List<CommonDevice> oldTargetList = new List<CommonDevice>(); + /// <summary> + /// 褰撳墠绨嘔D + /// </summary> + int currentClusterID = 6; + /// <summary> + /// 鍥炶皟缁戝畾鐩爣椤甸潰鍒锋柊 + /// </summary> + public Action<List<BindListResponseObj>> action; + /// <summary> + /// 褰撳墠妯″紡ID + /// </summary> + int currentModeID = 0; + /// <summary> + /// 褰撳墠璁惧缁戝畾绫诲瀷 + /// </summary> + string curDeviceBindType = ""; + /// <summary> + /// 绫诲瀷鐨勫叿浣撴ā寮忓垪琛� + /// </summary> List<int> typeDetailModeList = new List<int> { }; #endregion @@ -115,7 +127,7 @@ //1銆佹竻绌烘墍鏈夌洰鏍� if (currentKey.bindList != null) { - var bindResult = await currentKey.ClearBindInfoAsync(); + var bindResult = HdlDeviceBindLogic.Current.ClearBindInfoAsync(currentKey); if (bindResult != null && bindResult.clearBindInfoResponseData != null) { if (bindResult.clearBindInfoResponseData.Result != 0) @@ -152,43 +164,43 @@ switch (currentModeID) { case 100: - temp = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.OnOff_On); + temp = HdlDeviceBindLogic.Current.ConfigureHdlKeyValueAsync(currentKey, Panel.KeyMode.OnOff_On); break; case 101: - temp = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.OnOff_oFF); + temp = HdlDeviceBindLogic.Current.ConfigureHdlKeyValueAsync(currentKey, Panel.KeyMode.OnOff_oFF); break; case 102: - temp = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.OnOff_OnOff); + temp = HdlDeviceBindLogic.Current.ConfigureHdlKeyValueAsync(currentKey, Panel.KeyMode.OnOff_OnOff); break; case 200: - temp = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.Level_Step_Up); + temp = HdlDeviceBindLogic.Current.ConfigureHdlKeyValueAsync(currentKey, Panel.KeyMode.Level_Step_Up); break; case 201: - temp = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.Level_Step_Down); + temp = HdlDeviceBindLogic.Current.ConfigureHdlKeyValueAsync(currentKey, Panel.KeyMode.Level_Step_Down); break; case 203: - temp = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.Level_Up); + temp = HdlDeviceBindLogic.Current.ConfigureHdlKeyValueAsync(currentKey, Panel.KeyMode.Level_Up); break; case 204: - temp = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.Level_Down); + temp = HdlDeviceBindLogic.Current.ConfigureHdlKeyValueAsync(currentKey, Panel.KeyMode.Level_Down); break; case 205: - temp = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.Level_Up_Down); + temp = HdlDeviceBindLogic.Current.ConfigureHdlKeyValueAsync(currentKey, Panel.KeyMode.Level_Up_Down); break; case 300: - temp = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.Wcd_Up); + temp = HdlDeviceBindLogic.Current.ConfigureHdlKeyValueAsync(currentKey, Panel.KeyMode.Wcd_Up); break; case 301: - temp = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.Wcd_Down); + temp = HdlDeviceBindLogic.Current.ConfigureHdlKeyValueAsync(currentKey, Panel.KeyMode.Wcd_Down); break; case 302: - temp = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.Wcd_Stop); + temp = HdlDeviceBindLogic.Current.ConfigureHdlKeyValueAsync(currentKey, Panel.KeyMode.Wcd_Stop); break; case 303: - temp = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.Wcd_Up_Stop); + temp = HdlDeviceBindLogic.Current.ConfigureHdlKeyValueAsync(currentKey, Panel.KeyMode.Wcd_Up_Stop); break; case 304: - temp = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.Wcd_Down_Stop); + temp = HdlDeviceBindLogic.Current.ConfigureHdlKeyValueAsync(currentKey, Panel.KeyMode.Wcd_Down_Stop); break; } if (temp != null && temp.setWritableValueResponData != null) @@ -231,19 +243,8 @@ } var dev = new AddedDeviceBindResponseAllData(); - dev = await currentKey.AddDeviceBindAsync(addBindeDev); - if (dev.addedDeviceBindResponseData == null) - { - Application.RunOnMainThread(() => - { - CommonPage.Loading.Hide(); - new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(btnFinifh); - }); - btnFinifh.Enable = true; - btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack; - return; - } - else + dev = HdlDeviceBindLogic.Current.AddDeviceBindAsync(addBindeDev); + if (dev != null && dev.addedDeviceBindResponseData != null) { if (dev.addedDeviceBindResponseData.Result == 0) { @@ -305,6 +306,17 @@ btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack; return; } + } + else + { + Application.RunOnMainThread(() => + { + CommonPage.Loading.Hide(); + new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(btnFinifh); + }); + btnFinifh.Enable = true; + btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack; + return; } } else @@ -398,6 +410,13 @@ { return System.Threading.Tasks.Task.Run(async () => { + //濡傛灉褰撳墠鏄櫄鎷熶綇瀹� + if (Common.Config.Instance.Home.IsVirtually == true) + { + typeDetailModeList.Clear(); + return new List<int>() { 100, 101, 102 }; + } + Application.RunOnMainThread(() => { CommonPage.Loading.Start(); @@ -454,6 +473,13 @@ { return System.Threading.Tasks.Task.Run(async () => { + //濡傛灉褰撳墠鏄櫄鎷熶綇瀹� + if (Common.Config.Instance.Home.IsVirtually == true) + { + typeDetailModeList.Clear(); + return new List<int>() { 200, 201, 203, 204, 205 }; + } + Application.RunOnMainThread(() => { CommonPage.Loading.Start(); @@ -525,6 +551,17 @@ return System.Threading.Tasks.Task.Run(async () => { typeDetailModeList.Clear(); + //濡傛灉褰撳墠鏄櫄鎷熶綇瀹� + if (Common.Config.Instance.Home.IsVirtually == true) + { + Application.RunOnMainThread(() => + { + CommonPage.Loading.Hide(); + }); + typeDetailModeList.Clear(); + return new List<int>() { 300, 301, 302, 303, 304 }; + } + List<int> result3 = new List<int> { }; try { @@ -578,6 +615,9 @@ }); } + /// <summary> + /// 娣诲姞寮�鍏虫ā寮� + /// </summary> async private void AddSwitchMode() { if (typeDetailModeList == null) @@ -619,8 +659,8 @@ var btnChoose = new Button() { - Width = Application.GetRealWidth(60), - Height = Application.GetRealHeight(60), + Width = Application.GetMinReal(60), + Height = Application.GetMinReal(60), X = Application.GetRealWidth(861 + 81), Y = Application.GetRealHeight(35), SelectedImagePath = "DoorLock/SelectedIcon.png", @@ -697,7 +737,6 @@ oldMode = btnChoose; oldMode.IsSelected = true; oldMode.Visible = true; - currentKey.CurrentSwitchMode = btnModeText.Text; if (btnModeText.Text == Language.StringByID(R.MyInternationalizationString.OnOffOn)) { currentModeID = 100; @@ -723,6 +762,9 @@ } } + /// <summary> + /// 娣诲姞璋冨厜妯″紡 + /// </summary> async private void AddDimmerMode() { if (typeDetailModeList == null) @@ -775,8 +817,8 @@ var btnChoose = new Button() { - Width = Application.GetRealWidth(60), - Height = Application.GetRealHeight(60), + Width = Application.GetMinReal(60), + Height = Application.GetMinReal(60), X = Application.GetRealWidth(861 + 81), Y = Application.GetRealHeight(35), SelectedImagePath = "DoorLock/SelectedIcon.png", @@ -870,7 +912,6 @@ oldMode = btnChoose; oldMode.IsSelected = true; oldMode.Visible = true; - currentKey.CurrentSwitchMode = btnModeText.Text; if (btnModeText.Text == Language.StringByID(R.MyInternationalizationString.DimmerMode1)) { currentModeID = 200; @@ -905,6 +946,9 @@ } } + /// <summary> + /// 娣诲姞绐楀笜妯″紡 + /// </summary> async private void AddCurtainMode() { if (typeDetailModeList == null) @@ -946,8 +990,8 @@ var btnChoose = new Button() { - Width = Application.GetRealWidth(60), - Height = Application.GetRealHeight(60), + Width = Application.GetMinReal(60), + Height = Application.GetMinReal(60), X = Application.GetRealWidth(861 + 81), Y = Application.GetRealHeight(35), SelectedImagePath = "DoorLock/SelectedIcon.png", @@ -1041,7 +1085,6 @@ oldMode = btnChoose; oldMode.IsSelected = true; oldMode.Visible = true; - currentKey.CurrentSwitchMode = btnModeText.Text; if (btnModeText.Text == Language.StringByID(R.MyInternationalizationString.WcdUp)) { currentModeID = 300; @@ -1074,18 +1117,6 @@ btnChoose.MouseUpEventHandler += hander; i++; } - } - - public void DeviceInfoChange(CommonDevice common, string typeTag) - { - } - - public void ChangedILogicStatus(ZigBee.Device.Logic logic) - { - } - - public void ChangedISceneStatus(Scene scene) - { } } } -- Gitblit v1.8.0