From b4312dc4fc0b37955322058937fea6a1845de3bf Mon Sep 17 00:00:00 2001 From: WJC <wjc@hdlchina.com.cn> Date: 星期五, 25 十月 2019 17:53:45 +0800 Subject: [PATCH] 2019-10-25-3 --- ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/LockLogicList.cs | 105 ++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 93 insertions(+), 12 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/LockLogicList.cs b/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/LockLogicList.cs index bfbff84..3a1040d 100644 --- a/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/LockLogicList.cs +++ b/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/LockLogicList.cs @@ -3,11 +3,16 @@ using Shared.Common; using Shared.R; -namespace Shared.Phone.Logic.DoorLockLogic +namespace Shared.Phone.Device.Logic.DoorLockLogic { public class LockLogicList : FrameLayout { + public LockLogicList() + { + Tag = "LockLogicList"; + } + VerticalScrolViewLayout middle; public async void Show() { @@ -87,7 +92,7 @@ }; #endregion - var middle = new VerticalScrolViewLayout + middle = new VerticalScrolViewLayout { Y = topRowLayout.Bottom, Height = Application.GetRealHeight(1920 - 184), @@ -98,26 +103,43 @@ CommonPage.Loading.Start(); if (Common.Logic.LockLogicList.Count == 0) { - var Idlist = await Device.Logic.Send.GetLogicId(); + var Idlist = await Send.GetLogicId(1); if (Idlist.Count != 0) { - var listlogic = await Device.Logic.Send.ReadList(Idlist.Count); - for (int i = 0; i < Idlist.Count; i++) + var listlogic = await Send.ReadList(Idlist.Count, 1); + //foreach鍙兘闆嗗悎宸茶淇敼,鏋氫妇鎿嶄綔鍙兘涓嶄細鎵ц,鍙兘鍑虹幇宕╂簝(寤鸿for)銆� + for (int j = 0; j < listlogic.Count; j++) { - var LogicId = Idlist[i]; - //foreach鍙兘闆嗗悎宸茶淇敼,鏋氫妇鎿嶄綔鍙兘涓嶄細鎵ц,鍙兘鍑虹幇宕╂簝(寤鸿for)銆� - for (int j = 0; j < listlogic.Count; j++) + var logic = listlogic[j]; + if (logic.LogicType == 0) { - var logic = listlogic[j]; - if (logic.LogicId == LogicId) + continue; + } + bool yes = false; + for (int a = 0; a < logic.Accounts.Count; a++) + { + if (logic.Accounts[a]["Account"].ToString() == Config.Instance.Guid) { - Common.Logic.LockLogicList.Add(logic); + //鏌ユ壘鑷繁璐﹀彿涓嬬殑鍒涘缓鑱斿姩浜嬩欢锛� + yes = true; + break; } + } + if (yes) + { + Common.Logic.LockLogicList.Add(listlogic[j]); } } } } //鑷姩鍖� + Automationview(); + CommonPage.Loading.Hide(); + } + + void Automationview() + { + middle.RemoveAll(); for (int i = 0; i < Common.Logic.LockLogicList.Count; i++) { var logic = Common.Logic.LockLogicList[i]; @@ -155,8 +177,67 @@ }; logicRowlayout.AddChidren(logicswitchBtn); + logicswitchBtn.MouseUpEventHandler += (sender, e) => + { + logicswitchBtn.IsSelected = !logicswitchBtn.IsSelected; + if (logicswitchBtn.IsSelected) + { + //閫昏緫寮� + logic.IsEnable = 1; + } + else + { + //閫昏緫鍏� + logic.IsEnable = 0; + } + Logic.Send.LogicControlSwitch(logic); + + }; + ///缂栬緫 + var edit = new Button + { + BackgroundColor = ZigbeeColor.Current.LogicEditBlackColor1, + Text = Language.StringByID(MyInternationalizationString.edit), + TextColor = ZigbeeColor.Current.LogicBtnSaveTextColor, + }; + logicRowlayout.AddRightView(edit); + edit.MouseUpEventHandler += (sender, e) => + { + Common.Logic.CurrentLogic = logic; + var lockLogicCommunalPage = new LockLogicCommunalPage(); + UserView.HomePage.Instance.AddChidren(lockLogicCommunalPage); + UserView.HomePage.Instance.PageIndex += 1; + lockLogicCommunalPage.Show(() => { logicnameBtn.Text = logic.LogicName; Automationview(); }); + + }; + + + ///鍒犻櫎 + var del = new Button + { + BackgroundColor = ZigbeeColor.Current.LogicDelBlackColor1, + Text = Language.StringByID(MyInternationalizationString.del), + TextColor = ZigbeeColor.Current.LogicBtnSaveTextColor, + }; + logicRowlayout.AddRightView(del); + del.MouseUpEventHandler += (sender, e) => + { + var alert = new Alert(Language.StringByID(MyInternationalizationString.tip), Language.StringByID(MyInternationalizationString.doyouwanttodelete), + Language.StringByID(MyInternationalizationString.cancel), Language.StringByID(MyInternationalizationString.confrim)); + alert.ResultEventHandler += (sender1, e1) => + { + if (e1) + { + Common.Logic.LogicList.Remove(logic); + Automationview(); + Send.DelLogic(logic.LogicId); + } + }; + alert.Show(); + + }; } - CommonPage.Loading.Hide(); + } } } -- Gitblit v1.8.0