From f1c3921b08bb22ac6f5db22d620e01d7e8e5c49f Mon Sep 17 00:00:00 2001
From: WJC <wjc@hdlchina.com.cn>
Date: 星期一, 30 十二月 2019 13:32:33 +0800
Subject: [PATCH] 2019-12-30-1
---
ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/LockLogicList.cs | 185 ++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 163 insertions(+), 22 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/LockLogicList.cs b/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/LockLogicList.cs
index bfbff84..7c00eb6 100644
--- a/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/LockLogicList.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/LockLogicList.cs
@@ -3,12 +3,17 @@
using Shared.Common;
using Shared.R;
-namespace Shared.Phone.Logic.DoorLockLogic
+namespace Shared.Phone.Device.Logic.DoorLockLogic
{
public class LockLogicList : FrameLayout
{
- public async void Show()
+ public LockLogicList()
+ {
+ Tag = "LockLogicList";
+ }
+ VerticalRefreshLayout middle;
+ public void Show()
{
#region 鏈�涓婇潰鐨勫竷灞�浠g爜
@@ -22,14 +27,15 @@
var titleName = new Button
{
- TextSize = 16,
+ TextSize = 17,
TextColor = ZigbeeColor.Current.LogicTextBlackColor,
TextAlignment = TextAlignment.CenterLeft,
X = Application.GetRealWidth(176),
- Width = Application.GetRealWidth(400),
+ Width = Application.GetRealWidth(600),
Height = Application.GetRealHeight(69),
Y = Application.GetRealHeight(92),
- TextID = MyInternationalizationString.selection,
+ TextID = MyInternationalizationString.linkageevent,
+ IsBold = true,
};
topRowLayout.AddChidren(titleName);
@@ -75,10 +81,7 @@
Common.Logic.CurrentLogic = new Common.Logic();
Common.Logic.CurrentLogic.IsEnable = 1;//榛樿涓哄紑
Common.Logic.CurrentLogic.LogicType = 1;
- //Config.Instance.Guid鐢ㄦ潵璇嗗埆璐﹀彿韬唤锛�
- var accounts = new System.Collections.Generic.Dictionary<string, string>();
- accounts.Add("Account", Config.Instance.Guid);
- Common.Logic.CurrentLogic.Accounts.Add(accounts);
+ Common.Logic.CurrentLogic.Relationship = 1;
Common.Logic.CurrentLogic.LogicName = Language.StringByID(MyInternationalizationString.automation1);
var lockLogicCommunalPage = new LockLogicCommunalPage();
UserView.HomePage.Instance.AddChidren(lockLogicCommunalPage);
@@ -87,37 +90,107 @@
};
#endregion
- var middle = new VerticalScrolViewLayout
+ middle = new VerticalRefreshLayout
{
Y = topRowLayout.Bottom,
Height = Application.GetRealHeight(1920 - 184),
BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor,
};
this.AddChidren(middle);
+ middle.BeginHeaderRefreshingAction += () =>
+ {
+ //閲嶆柊鍒锋柊logic鍒楄〃
+ Common.Logic.LockLogicList.Clear();
+ Read();
+ //鍏抽棴鍒锋柊View锛�
+ middle.EndHeaderRefreshing();
+ };
+ Read();
+ }
+ /// <summary>
+ /// 璇诲彇鑷姩鍖栨暟鎹�
+ /// </summary>
+ public async void Read()
+ {
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();
+ }
+ /// <summary>
+ /// 鍔犺浇鑷姩鍖栧垪琛ㄧ殑鐣岄潰
+ /// </summary>
+ public void Automationview()
+ {
+ middle.RemoveAll();
+
+ if (Common.Logic.LockLogicList.Count == 0)
+ {
+ //灏辨槸涓轰簡鏄剧ず寮曞娣诲姞鍥炬爣;
+ var noFrameLayout = new FrameLayout
+ {
+ Height = Application.GetRealHeight(434 + 200 + 32 + 320),
+ //BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor,
+ };
+ middle.AddChidren(noFrameLayout);
+
+
+ var noIconBtn = new Button
+ {
+ Y = Application.GetRealHeight(320),
+ Width = Application.GetMinRealAverage(756),
+ Height = Application.GetMinRealAverage(434),
+ UnSelectedImagePath = "Item/NoFunction.png",
+ X = Application.GetRealWidth(162),
+ };
+ noFrameLayout.AddChidren(noIconBtn);
+
+ var noTextBtn = new Button()
+ {
+ Y = noIconBtn.Bottom,
+ Height = Application.GetRealHeight(200) + Application.GetRealHeight(32),
+ Width = Application.GetRealWidth(700),
+ //Gravity = Gravity.CenterHorizontal,
+ Text = Language.StringByID(MyInternationalizationString.automationaddtext).Replace("{\\r\\n}", "\r\n"),
+ TextColor = ZigbeeColor.Current.GXCPlaceHolderTextColor,
+ TextAlignment = TextAlignment.Center,
+ IsMoreLines = true,
+ X = Application.GetRealWidth(190),
+ };
+ noFrameLayout.AddChidren(noTextBtn);
+
+ }
for (int i = 0; i < Common.Logic.LockLogicList.Count; i++)
{
var logic = Common.Logic.LockLogicList[i];
@@ -125,7 +198,7 @@
{
Width = Application.GetRealWidth(1080),
Height = Application.GetRealHeight(190),
- LineColor = ZigbeeColor.Current.LogicBackgroundColor,
+ LineColor = ZigbeeColor.Current.LogicMiddleBackgroundColor,
BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor,
};
@@ -140,6 +213,7 @@
TextAlignment = TextAlignment.CenterLeft,
TextColor = ZigbeeColor.Current.LogicTextBlackColor,
Gravity = Gravity.CenterVertical,
+ TextSize = 15,
};
logicRowlayout.AddChidren(logicnameBtn);
@@ -155,8 +229,75 @@
};
logicRowlayout.AddChidren(logicswitchBtn);
+ logicswitchBtn.MouseUpEventHandler += (sender, e) =>
+ {
+ logicswitchBtn.IsSelected = !logicswitchBtn.IsSelected;
+ if (logicswitchBtn.IsSelected)
+ {
+ //閫昏緫寮�
+ logic.IsEnable = 1;
+ }
+ else
+ {
+ //閫昏緫鍏�
+ logic.IsEnable = 0;
+ }
+ Send.LogicControlSwitch(logic);
+
+ };
+ if (logic.IsEnable == 1)
+ {
+ logicswitchBtn.IsSelected = true;
+ }
+ else if (logic.IsEnable == 0)
+ {
+ logicswitchBtn.IsSelected = false;
+ }
+ ///缂栬緫
+ 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.LockLogicList.Remove(logic);
+ Automationview();
+ Send.DelLogic(logic.LogicId);
+ }
+ };
+ alert.Show();
+
+ };
}
- CommonPage.Loading.Hide();
+
}
}
}
--
Gitblit v1.8.0