From a9d1161b1df96e7ddad566335989a1444e433ef5 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期二, 28 三月 2023 11:54:45 +0800 Subject: [PATCH] 2023年03月28日11:52:02 --- HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs | 176 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 168 insertions(+), 8 deletions(-) diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs b/HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs index d99c409..850ab99 100644 --- a/HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs +++ b/HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs @@ -10,6 +10,52 @@ public partial class HomePage { /// <summary> + /// 鏇存柊璁惧鍦ㄧ嚎鐘舵�� + /// </summary> + public static void LoadEvent_RefreshDevcieOnline(Function function) + { + Application.RunOnMainThread(() => + { + if (bodyView != null) + { + foreach (var view in bodyView.functionViews) + { + if (view.Tag.ToString() == function.sid) + { + for (int i = 0; i < view.ChildrenCount; i++) + { + if (view.GetChildren(i).GetType() == typeof(Button)) + { + var btn = view.GetChildren(i) as Button; + if(btn.Tag == null) + { + continue; + } + if (btn.Tag.ToString() == function.sid) + { + if (function.online) + { + btn.UnSelectedImagePath = "Collection/Functionbg.png"; + btn.IsSelected = false; + } + else + { + btn.UnSelectedImagePath = "Collection/FunctionOfflineBg.png"; + btn.IsSelected = false; + } + } + else if (btn.Tag.ToString() == "OnlineTag") + { + btn.Visible = !function.online; + } + } + } + } + } + } + }); + } + /// <summary> /// 鏇存柊涓婚〉澶╂皵 /// </summary> public static void LoadEvent_RefreshAir() @@ -208,11 +254,6 @@ bodyView.btnLinkStateTip.TextID = StringId.NetworkAnomaly; bodyView.environmentalView.Y = Application.GetRealHeight(8) + btnResidenceName.Bottom; } - else if (Control.Ins.GatewayOnline_Local) - { - bodyView.btnLinkStateTip.BackgroundColor = CSS.CSS_Color.LinkTipLocal; - bodyView.environmentalView.Y = Application.GetRealHeight(8) + btnResidenceName.Bottom; - } else { bodyView.btnLinkStateTip.BackgroundColor = 0x00000000; @@ -347,18 +388,70 @@ { if (view.Tag.ToString() == function.sid) { + //if (!function.online) + //{ + // view.UnSelectedImagePath = "Collection/FunctionOfflineBg.png"; + //} + var state = false; if (function.spk == SPK.CurtainRoller || function.spk == SPK.CurtainShades || function.spk == SPK.CurtainTrietex || - function.spk == SPK.CurtainSwitch)//绐楀笜璁惧鏍规嵁鐧惧垎姣斿垽鏂紑鍏崇姸鎬� + function.spk == SPK.CurtainSwitch || function.spk == SPK.CurtainDream)//绐楀笜璁惧鏍规嵁鐧惧垎姣斿垽鏂紑鍏崇姸鎬� { if (function.GetAttribute(FunctionAttributeKey.Percent) != null) { state = function.GetAttrState(FunctionAttributeKey.Percent) != "0"; - }else + } + else { if (function.GetAttrState(FunctionAttributeKey.OnOff) == "stop") return; state = function.trait_on_off.curValue.ToString() == "on"; + } + } + else if (function.spk == SPK.SenesorMegahealth || function.spk == SPK.SensorMmvPose) + { + + var tempStatus = function.attributes.Find((sta) => sta.key == FunctionAttributeKey.TargetStatus); + if (tempStatus != null) + { + switch (tempStatus.state) + {//0绌猴紝1璧帮紝2璺戯紝3鍧愶紝4璺屽�掞紝5绔� + case "0": + state = false; + break; + case "1": + state = true; + break; + case "2": + if (function.extSet.labModel) + { + state = true; + } + break; + case "3": + if (function.extSet.labModel) + { + state = true; + } + break; + case "4": + state = true; + break; + case "5": + if (function.extSet.labModel) + { + state = true; + } + break; + } + } + } + else if(function.spk == SPK.SensorHelp) + { + var tempStatus = function.attributes.Find((sta) => sta.key == FunctionAttributeKey.AlarmStatus); + if(tempStatus != null) + { + state = tempStatus.curValue.ToString() == "alarm"; } } else @@ -381,7 +474,14 @@ { if (function.spk != SPK.LightSwitch) { - btn.Text = function.lastState; + if (function.spk == SPK.SensorHelp) + { + btn.TextID = StringId.InAlarming; + } + else + { + btn.Text = function.lastState; + } } } } @@ -468,6 +568,16 @@ { btnSwitch.MouseUpEventHandler = (sender, e) => { + if (!function.online)//绂荤嚎涓嶅厑璁告搷浣� + { + new Tip() + { + CloseTime = 1, + Text = Language.StringByID(StringId.DeviceOfflineCannotOption), + Direction = AMPopTipDirection.None, + }.Show(MainPage.BaseView); + return; + } btnSwitch.IsSelected = !btnSwitch.IsSelected; new System.Threading.Thread(() => { @@ -521,6 +631,16 @@ { btnSwitch.MouseUpEventHandler = (sender, e) => { + if (!function.online)//绂荤嚎涓嶅厑璁告搷浣� + { + new Tip() + { + CloseTime = 1, + Text = Language.StringByID(StringId.DeviceOfflineCannotOption), + Direction = AMPopTipDirection.None, + }.Show(MainPage.BaseView); + return; + } if (DB_ResidenceData.Instance.GatewayType == 1) { btnSwitch.IsSelected = !btnSwitch.IsSelected; @@ -555,6 +675,16 @@ { btnClose.MouseUpEventHandler = (sender, e) => { + if (!curtain.online)//绂荤嚎涓嶅厑璁告搷浣� + { + new Tip() + { + CloseTime = 1, + Text = Language.StringByID(StringId.DeviceOfflineCannotOption), + Direction = AMPopTipDirection.None, + }.Show(MainPage.BaseView); + return; + } btnClose.IsSelected = true; curtain.trait_on_off.curValue = "off"; curtain.SetAttrState(FunctionAttributeKey.Percent, 0); @@ -565,6 +695,16 @@ btnOpen.MouseUpEventHandler = (sender, e) => { + if (!curtain.online)//绂荤嚎涓嶅厑璁告搷浣� + { + new Tip() + { + CloseTime = 1, + Text = Language.StringByID(StringId.DeviceOfflineCannotOption), + Direction = AMPopTipDirection.None, + }.Show(MainPage.BaseView); + return; + } btnOpen.IsSelected = true; curtain.trait_on_off.curValue = "on"; curtain.SetAttrState(FunctionAttributeKey.Percent, 100); @@ -585,6 +725,16 @@ }; btnUp.MouseUpEventHandler = (sender, e) => { + if (!function.online)//绂荤嚎涓嶅厑璁告搷浣� + { + new Tip() + { + CloseTime = 1, + Text = Language.StringByID(StringId.DeviceOfflineCannotOption), + Direction = AMPopTipDirection.None, + }.Show(MainPage.BaseView); + return; + } new System.Threading.Thread(() => { System.Threading.Thread.Sleep(2000); @@ -606,6 +756,16 @@ }; btnDown.MouseUpEventHandler = (sender, e) => { + if (!function.online)//绂荤嚎涓嶅厑璁告搷浣� + { + new Tip() + { + CloseTime = 1, + Text = Language.StringByID(StringId.DeviceOfflineCannotOption), + Direction = AMPopTipDirection.None, + }.Show(MainPage.BaseView); + return; + } new System.Threading.Thread(() => { System.Threading.Thread.Sleep(2000); -- Gitblit v1.8.0