From 9508510f0b27da3278fa1161eb2ba3dd1e3e2030 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期三, 26 七月 2023 13:14:00 +0800 Subject: [PATCH] 2023年07月26日13:12:21 --- HDL_ON/UI/UI2/1-HomePage/HomePage.cs | 1192 ++++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 774 insertions(+), 418 deletions(-) diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs index 90bf91a..255f9f7 100644 --- a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs +++ b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Text; using HDL_ON.DAL; +using HDL_ON.DAL.Server; using HDL_ON.DriverLayer; using HDL_ON.Entity; using HDL_ON.UI.CSS; @@ -11,7 +12,11 @@ namespace HDL_ON.UI { - public partial class HomePage : VerticalRefreshLayout +#if __IOS__ + public partial class HomePage : VerticalRefreshLayout +#else + public partial class HomePage : VerticalScrolViewLayout +#endif { #region 鎺т欢鍒楄〃 @@ -65,15 +70,20 @@ /// <summary> /// 鍒囨崲鏄剧ず鍔熻兘绫诲瀷鍖哄煙 /// </summary> - FrameLayout changeView; - /// <summary> - /// 鍒囨崲鏄剧ず璁惧鍔熻兘鎸夐挳 - /// </summary> - Button btnChangeFunction; - /// <summary> - /// 鍒囨崲鏄剧ず鍦烘櫙鍔熻兘鎸夐挳 - /// </summary> - Button btnChangeScene; + FrameLayout changeBaseView; + //FrameLayout changeView; + ///// <summary> + ///// 鍒囨崲鏄剧ず璁惧鍔熻兘鎸夐挳 + ///// </summary> + //Button btnChangeFunction; + ///// <summary> + ///// 鍒囨崲鏄剧ず鍦烘櫙鍔熻兘鎸夐挳 + ///// </summary> + //Button btnChangeScene; + ///// <summary> + ///// 鍒囨崲鏄剧ず鍦虹粍鎺ф寜閽� + ///// </summary> + //Button btnChangeGroupControl; /// <summary> /// 鍔熻兘鏄剧ず鍖哄煙 /// </summary> @@ -87,22 +97,29 @@ /// </summary> VerticalScrolViewLayout sceneFunctionView; /// <summary> + /// 缁勬帶鎺у埗鍖哄煙 + /// </summary> + VerticalScrolViewLayout gcFunctionView; + /// <summary> /// 鍔熻兘鍖哄煙闆嗗悎 /// </summary> List<FrameLayout> functionViews; - #endregion +#endregion - #region 鍖哄煙鍙橀噺 +#region 鍖哄煙鍙橀噺 /// <summary> /// 褰撳墠鏄剧ず瀵规帶鍒剁被鍨嬫槸鍚︽槸璁惧鍔熻兘鎺у埗 + /// 0 鍔熻兘 + /// 1 鍦烘櫙 + /// 2 缇ゆ帶 /// </summary> - bool CurShowTypeIsFunction = true; - #endregion + int CurShowTypeContent = 0; +#endregion - #region 鎶ヨ淇℃伅 - Button btnMsgBg; - Button btnMsgTime; - Button btnMsg; +#region 鎶ヨ淇℃伅 + //Button btnMsgBg; + //Button btnMsgTime; + //Button btnMsg; Button btnMsgIcon; #endregion @@ -112,6 +129,11 @@ bodyView.BackgroundColor = CSS_Color.BackgroundColor; this.VerticalScrollBarEnabled = false; + +#if DEBUG + DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl = true; +#endif + #if __IOS__ //鑷姩鍋忕Щ鍙栨秷 if (UIKit.UIDevice.CurrentDevice.CheckSystemVersion(11, 0)) @@ -132,27 +154,44 @@ MainPage.CurPageIndex = 0; try { - this.BeginHeaderRefreshingAction = () => + bodyView.RemoveAll(); +#if __IOS__ + bodyView.BeginHeaderRefreshingAction = () => { - this.EndHeaderRefreshing(); + bodyView.EndHeaderRefreshing(); Common.ApiUtlis.Ins.DownloadData(); LoadContentView(); - if(!CurShowTypeIsFunction) - { - contentView.PageIndex = 1; - } + contentView.PageIndex = CurShowTypeContent; }; - - #region topView - - bodyView.RemoveAll(); - topView = new FrameLayout() { - Height = Application.GetRealHeight(216), + Height = Application.GetRealHeight(113),//216), BackgroundImagePath = DB_ResidenceData.Instance.residenceImage, }; bodyView.AddChidren(topView); +#else + VerticalRefreshLayout refreshLayout = new VerticalRefreshLayout() + { + Height = Application.GetRealHeight(113),//216), + BackgroundImagePath = DB_ResidenceData.Instance.residenceImage, + }; + bodyView.AddChidren(refreshLayout); + refreshLayout.BeginHeaderRefreshingAction = () => + { + refreshLayout.EndHeaderRefreshing(); + Common.ApiUtlis.Ins.DownloadData(); + LoadContentView(); + contentView.PageIndex = CurShowTypeContent; + }; + topView = new FrameLayout() + { + Height = Application.GetRealHeight(113),//216), + }; + refreshLayout.AddChidren(topView); +#endif + #region topView + + Button btnTop; btnTop = new Button() @@ -179,7 +218,7 @@ //X = Application.GetRealWidth(16), Y = btnResidenceName.Bottom, Height = Application.GetRealWidth(14), - BackgroundColor = CSS_Color.LinkTipFail, + //BackgroundColor = CSS_Color.LinkTipFail, TextAlignment = TextAlignment.Center, TextSize = CSS_FontSize.PromptFontSize_FirstLevel, TextColor = CSS_Color.MainBackgroundColor, @@ -189,23 +228,51 @@ //鏇存柊閾炬帴鐘舵�乮con棰滆壊 - int ddd = 0; #if DEBUG + int ddd = 0; btnResidenceName.MouseUpEventHandler = (sender, e) => { - - //if (UserInfo.Current.VerOpenDoorPw || string.IsNullOrEmpty(UserInfo.Current.doorPasswordString)) + //827a98c98da7469b8bc19bb6a3c7651906 + //St_00009073b431d8b2490c9df0c5cb0e73 + //Com.Hdl.HdlToLc.InitData(Shared.Application.Activity,false, "827a98c98da7469b8bc19bb6a3c7651906"); + //Com.Hdl.HdlToLc.OpenActivity(); + //new System.Threading.Thread(() => //{ - // var page = new DoorLockUnlockPage(new Function()); - // MainPage.BasePageView.AddChidren(page); - // page.LoadView(); - // MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; - //} - //else - //{ - // Control.Ins.OneKeyUnlocking(new Function(), UserInfo.Current.doorPasswordString); - //} - + // var http = new HttpServerRequest(); + // var pack = http.GetLcSubAccountToken(); + // if (pack.Code == StateCode.SUCCESS) + // { + // if(pack.Data == null || string.IsNullOrEmpty(pack.Data.ToString())) + // { + // Application.RunOnMainThread(() => + // { + // new PublicAssmebly().TipMsg(Language.StringByID(StringId.Tip), Language.StringByID(StringId.huoqushujushibao)); + // }); + // } + // Com.Utils.HdlToLcUtils.Instance.HomeId = DB_ResidenceData.Instance.CurrentRegion.id; + // Com.Utils.HdlToLcUtils.Instance.Token = UserInfo.Current.AccessToken; + // Com.Utils.HdlToLcUtils.Instance.SubAccessToken = pack.Data.ToString(); + // Application.RunOnMainThread(() => + // { + // //Com.Utils.HdlToLcUtils.Instance.OpenActivity(); + // //Com.Utils.HdlToLcUtils.Instance.Play() + // var backTemp = new AddLcCam(); + // backTemp.backAction = () => + // { + // //Load3tyBrandDeviceList(); + // }; + // Com.Utils.HdlToLcUtils.Instance.AddCamera(backTemp); + // }); + // } + // else + // { + // Application.RunOnMainThread(() => + // { + // new PublicAssmebly().TipMsg(Language.StringByID(StringId.Tip), Language.StringByID(StringId.huoqushujushibao) + $"({pack.Code})"); + // }); + // } + //}) + //{ IsBackground = true }.Start(); }; #endif @@ -217,7 +284,7 @@ topView.AddChidren(environmentalView); CheckLinkStatus();//2020-12-22 - #region 鐜鏁版嵁 +#region 鐜鏁版嵁 var tempSensorList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => obj.spk == SPK.SensorTemperature); var humiSensorList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => obj.spk == SPK.SensorHumidity); var enviList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => SPK.EvironmentSensorList().Contains(obj.spk)); @@ -233,7 +300,7 @@ deviceId = enviTemp.deviceId, attributes = new List<FunctionAttributes> { new FunctionAttributes { key = "value", state = humiAttr.state, curValue = humiAttr.curValue } }, }; - humiSensorList.Add(newTemp); + humiSensorList.Add(newTemp);//020103CF594C3E00051F0001051F// 1650546588519424001 } var tempAttr = enviTemp.attributes.Find((obj) => obj.key == "temperature"); if (tempAttr != null) @@ -245,7 +312,7 @@ deviceId = enviTemp.deviceId, attributes = new List<FunctionAttributes> { new FunctionAttributes { key = "value", state = tempAttr.state, curValue = tempAttr.curValue } }, }; - tempSensorList.Add(newTemp); + tempSensorList.Add(newTemp);//020103CF594C3E00051F0001051F } } @@ -303,7 +370,10 @@ foreach (var temp in tempSensorList) { double tempValue = 0; - double.TryParse(temp.GetAttrState("temperature"), out tempValue); + if (temp.GetAttribute("temperature") != null) + double.TryParse(temp.GetAttrState("temperature"), out tempValue); + else + double.TryParse(temp.GetAttrState("value"), out tempValue); if (tempValue > 0) { tempTotalValues += tempValue; @@ -357,7 +427,10 @@ foreach (var humi in humiSensorList) { double humiValue = 0; - double.TryParse(humi.GetAttrState("humidity"), out humiValue); + if (humi.GetAttribute("temperature") != null) + double.TryParse(humi.GetAttrState("humidity"), out humiValue); + else + double.TryParse(humi.GetAttrState("value"), out humiValue); if (humiValue > 0) { humiTotalValues += humiValue; @@ -394,6 +467,7 @@ btnPm25Values.Width = btnPm25Values.GetTextWidth(); environmentalView.AddChidren(btnPm25Values); #endregion + btnSecurityStatus = new Button() { @@ -434,83 +508,132 @@ } - #region msg - FrameLayout msgView; - msgView = new FrameLayout() - { - Y = Application.GetRealHeight(164), - Gravity = Gravity.CenterHorizontal, - Width = Application.GetRealWidth(343), - Height = Application.GetRealHeight(28), - }; - topView.AddChidren(msgView); +#region msg + //FrameLayout msgView; + //msgView = new FrameLayout() + //{ + // Y = Application.GetRealHeight(164), + // Gravity = Gravity.CenterHorizontal, + // Width = Application.GetRealWidth(343), + // Height = Application.GetRealHeight(28), + //}; + //topView.AddChidren(msgView); - btnMsgBg = new Button() - { - BackgroundColor = CSS_Color.MainColor,//0x3F4484F4, - Alpha = 0.4f, - }; - msgView.AddChidren(btnMsgBg); + //btnMsgBg = new Button() + //{ + // BackgroundColor = CSS_Color.MainColor,//0x3F4484F4, + // Alpha = 0.4f, + //}; + //msgView.AddChidren(btnMsgBg); btnMsgIcon = new Button() { - X = Application.GetRealWidth(12), - Gravity = Gravity.CenterVertical, + X = Application.GetRealWidth(290), + Y = Application.GetRealHeight(35), Width = Application.GetMinRealAverage(24), Height = Application.GetMinRealAverage(24), UnSelectedImagePath = "Collection/MsgIcon.png", SelectedImagePath = "Collection/MsgIconTip.png", }; - msgView.AddChidren(btnMsgIcon); + topView.AddChidren(btnMsgIcon); - btnMsg = new Button() - { - X = Application.GetRealWidth(10) + btnMsgIcon.Right, - Width = Application.GetRealWidth(240), - Text = "...", - TextColor = CSS_Color.MainBackgroundColor, - TextSize = CSS_FontSize.PromptFontSize_FirstLevel, - TextAlignment = TextAlignment.CenterLeft, - }; - msgView.AddChidren(btnMsg); + //btnMsg = new Button() + //{ + // X = Application.GetRealWidth(10) + btnMsgIcon.Right, + // Width = Application.GetRealWidth(240), + // Text = "...", + // TextColor = CSS_Color.MainBackgroundColor, + // TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + // TextAlignment = TextAlignment.CenterLeft, + //}; + //msgView.AddChidren(btnMsg); - btnMsgTime = new Button() - { - X = Application.GetRealWidth(299), - Width = Application.GetRealWidth(44), - Text = "00:00", - TextSize = CSS_FontSize.PromptFontSize_FirstLevel, - TextAlignment = TextAlignment.CenterLeft, - }; - msgView.AddChidren(btnMsgTime); + //btnMsgTime = new Button() + //{ + // X = Application.GetRealWidth(299), + // Width = Application.GetRealWidth(44), + // Text = "00:00", + // TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + // TextAlignment = TextAlignment.CenterLeft, + //}; + //msgView.AddChidren(btnMsgTime); LoadEvent_GotoMessageCenterPage(); - #endregion +#endregion - #endregion +#endregion - #region 鍔熻兘鍦烘櫙鍒囨崲 +#region 鍔熻兘鍦烘櫙鍒囨崲 bodyView.AddChidren(new Button() { Height = Application.GetRealHeight(20), BackgroundColor = 0x00000000 }); - changeView = new FrameLayout() + loadNavView(); + + #endregion + + #region ContextView + + + functionViews = new List<FrameLayout>(); + + LoadContentView(); + + #endregion + } + catch (Exception ex) + { + MainPage.Log($"HomePage LoadPage Error : {ex.Message}"); + } + + + } + + void loadNavView() + { + if(changeBaseView == null) + { + changeBaseView = new FrameLayout() + { + Gravity = Gravity.CenterHorizontal, + Height = Application.GetRealHeight(62), + }; + bodyView.AddChidren(changeBaseView); + } + else + { + changeBaseView.RemoveAll(); + } + + if (contentView == null) + { + contentView = new PageLayout() + { + Height = Application.GetRealHeight(310 + 30 + 10 + 100), //20涓鸿秴鍑洪儴鍒� + IsShowPoint = false, + }; + bodyView.AddChidren(contentView); + } + + if (DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl && FunctionList.List.groupControls.Count > 0) + { + var changeView = new FrameLayout() { //Y = Application.GetRealHeight(20) + topView.Bottom, Gravity = Gravity.CenterHorizontal, - Width = Application.GetRealWidth(230), + Width = Application.GetRealWidth(334), Height = Application.GetRealHeight(62), BackgroundImagePath = "Collection/ChangeViewbg.png", }; - bodyView.AddChidren(changeView); + changeBaseView.AddChidren(changeView); - btnChangeFunction = new Button() + var btnChangeFunction = new Button() { X = Application.GetRealWidth(10), - Width = Application.GetRealWidth(114-10), + Width = Application.GetRealWidth(114 - 10), TextID = StringId.Functions, SelectedTextColor = CSS_Color.MainColor, TextColor = CSS_Color.PromptingColor1, @@ -531,10 +654,10 @@ }; changeView.AddChidren(btnLine); - btnChangeScene = new Button() + var btnChangeScene = new Button() { X = btnLine.Right, - Width = Application.GetRealWidth(114-10), + Width = Application.GetRealWidth(114 - 10), TextID = StringId.Scenes, SelectedTextColor = CSS_Color.MainColor, TextColor = CSS_Color.PromptingColor1, @@ -542,250 +665,228 @@ TextAlignment = TextAlignment.Center, }; changeView.AddChidren(btnChangeScene); - #endregion - #region ContextView - contentView = new PageLayout() + Button btnLine2 = new Button() { - //Y = changeView.Bottom, - Height = Application.GetRealHeight(310 + 30 + 10), //20涓鸿秴鍑洪儴鍒� - IsShowPoint = false, + X = btnChangeScene.Right, + Gravity = Gravity.CenterVertical, + Width = Application.GetRealWidth(1), + Height = Application.GetRealHeight(14), + BackgroundColor = CSS_Color.PromptingColor1, }; - bodyView.AddChidren(contentView); + changeView.AddChidren(btnLine2); - functionViews = new List<FrameLayout>(); - - LoadContentView(); - - #endregion - } - catch (Exception ex) - { - MainPage.Log($"HomePage LoadPage Error : {ex.Message}"); - } - - -#if DEBUG - - //FunctionList.List.Functions.Add(new Function - //{ - // name = "闂ㄩ攣", - // spk = SPK.DoorLock, - // sid = "12345", - // attributes = new List<FunctionAttributes> { - // new FunctionAttributes(){ key = "door_status",curValue= "open",state = "open" }, - // new FunctionAttributes(){ key = "normal_open",curValue= "true",state = "true" }, - // new FunctionAttributes(){ key = "normal_open_countdown",curValue= "10",state = "10" }, - // new FunctionAttributes(){ key = "local_id",curValue= "10",state = "10" }, - // new FunctionAttributes(){ key = "door_volume",curValue= "10",state = "10" }, - // new FunctionAttributes(){ key = "door_volume_step",curValue= "up",state = "up" }, - // new FunctionAttributes(){ key = "battery_value",curValue= "100",state = "100" }, - // new FunctionAttributes(){ key = "battery_percentage",curValue= "100",state = "100" }, - // new FunctionAttributes(){ key = "battery_state",curValue= "high",state = "high" }, - // } - //}); - //FunctionList.List.Functions.Add(new Function - //{ - // name = "闂ㄩ攣1", - // spk = SPK.DoorLock, - // sid = "123", - // attributes = new List<FunctionAttributes> { - // new FunctionAttributes(){ key = "door_status",curValue= "open",state = "open" }, - // new FunctionAttributes(){ key = "normal_open",curValue= "true",state = "true" }, - // new FunctionAttributes(){ key = "normal_open_countdown",curValue= "10",state = "10" }, - // new FunctionAttributes(){ key = "local_id",curValue= "10",state = "10" }, - // new FunctionAttributes(){ key = "door_volume",curValue= "10",state = "10" }, - // new FunctionAttributes(){ key = "door_volume_step",curValue= "up",state = "up" }, - // new FunctionAttributes(){ key = "battery_value",curValue= "100",state = "100" }, - // new FunctionAttributes(){ key = "battery_percentage",curValue= "100",state = "100" }, - // new FunctionAttributes(){ key = "battery_state",curValue= "high",state = "high" }, - // } - //}); - - //FunctionList.List.Functions.Add(new Function() - //{ - // spk = SPK.PanelSocket, - // name = "闈㈡澘鎻掑骇", - // attributes = new List<FunctionAttributes> - // { - // new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" }, - // new FunctionAttributes(){ key = "on_off_usb",curValue= "on",state = "on" }, - // new FunctionAttributes(){ key = "active_power",curValue= "220",state = "220" }, - // new FunctionAttributes(){ key = "voltage",curValue= "5",state = "5" }, - // new FunctionAttributes(){ key = "current",curValue= "110",state = "110" }, - // new FunctionAttributes(){ key = "total_electricity",curValue= "123.33",state = "123.33" }, - // } - //}); - - //FunctionList.List.Functions.Add(new Function() - //{ - // spk = SPK.SensorDryContact, - // name = "骞叉帴鐐�", - // attributes = new List<FunctionAttributes>() - // { - // new FunctionAttributes(){ key = "status",curValue= "on",state = "on" }, - // }, - //}); - - //FunctionList.List.Functions.Add(new Function() - //{ - // spk = SPK.AirSwitch, - // name = "鏅鸿兘绌哄紑", - // attributes = new List<FunctionAttributes>() - // { - // new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" }, - // }, - //}); - - //FunctionList.List.Functions.Add(new Function() - //{ - // spk = SPK.AirFreshStandard, - // name = "娴嬭瘯鏂伴", - // attributes = new List<FunctionAttributes>() - // { - // new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" }, - // new FunctionAttributes(){ key = "fan",curValue= "low",state = "low" ,value = new List<string>(){ "high", "medium", "low" } }, - // }, - //}); - - - FunctionList.List.Functions.Add(new Function() - { - spk = SPK.HvacCac, - name = "娴嬭瘯閲戣寕娓╂帶鏋告潪", - attributes = new List<FunctionAttributes>() + var btnChangeGroupControl = new Button() { - new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" }, - new FunctionAttributes(){ key = "mode",curValue= "cool",state = "cool" ,value = new List<string>(){ "cool", "heat" } }, - new FunctionAttributes(){ key = "set_temp",curValue= "22",state = "22" ,value = new List<string>(){},min = 0,max = 30 }, - //new FunctionAttributes(){ key = "set_temp_step",curValue= "low",state = "low" ,value = new List<string>(){ "high", "medium", "low", "auto", "stop" } }, - new FunctionAttributes(){ key = "humidity",curValue= "0",state = "0" ,value = new List<string>(){ },min = 0,max = 100 }, - new FunctionAttributes(){ key = "room_temp",curValue= "26",state = "26" ,value = new List<string>(){ },min = 0,max = 100 }, - new FunctionAttributes(){ key = "dew_point_temp",curValue= "20",state = "20" ,value = new List<string>(){ },min = 0,max = 100 }, - new FunctionAttributes(){ key = "room_humidity",curValue= "20",state = "20" ,value = new List<string>(){ },min = 0,max = 1000 }, - //new FunctionAttributes(){ key = "tvoc",curValue= "20",state = "20" ,value = new List<string>(){ },min = 0,max = 100 }, - }, - }); + X = btnLine2.Right, + Width = Application.GetRealWidth(114 - 10), + TextID = StringId.GroupControl, + SelectedTextColor = CSS_Color.MainColor, + TextColor = CSS_Color.PromptingColor1, + TextSize = CSS_FontSize.TextFontSize, + TextAlignment = TextAlignment.Center, + }; + changeView.AddChidren(btnChangeGroupControl); - //FunctionList.List.Functions.Add(new Function() - //{ - // spk = SPK.HvacAirFreshJinmao, - // name = "娴嬭瘯閲戣寕鏂伴", - // attributes = new List<FunctionAttributes>() - // { - // new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" }, - // new FunctionAttributes(){ key = "mode",curValue= "humidification",state = "humidification" ,value = new List<string>(){ "humidification", "fan" } }, - // new FunctionAttributes(){ key = "energy",curValue= "true",state = "true" ,value = new List<string>(){ "true", "false" } }, - // new FunctionAttributes(){ key = "fan",curValue= "level_1",state = "level_1" ,value = new List<string>(){ "level_1", "level_2", "level_3","auto" } }, - // new FunctionAttributes(){ key = "humidity",curValue= "0",state = "0" ,value = new List<string>(){ },min = 0,max = 100 }, - // new FunctionAttributes(){ key = "indoor_temp",curValue= "26",state = "26" ,value = new List<string>(){ },min = 0,max = 100 }, - // new FunctionAttributes(){ key = "indoor_humidity",curValue= "0",state = "0" ,value = new List<string>(){ },min = 0,max = 100 }, - // new FunctionAttributes(){ key = "filter_remain",curValue= "0",state = "0" ,value = new List<string>(){ },min = 0,max = 100 }, - // new FunctionAttributes(){ key = "filter_timeout",curValue= "false",state = "false" ,value = new List<string>(){ "true", "false" }}, - // }, - //}); - //FunctionList.List.Functions.Add(new Function() - //{ - // spk = SPK.SensorGas, - // name = "鐕冩皵浼犳劅鍣�", - // attributes = new List<FunctionAttributes>() - // { - // new FunctionAttributes(){ key = "enable",curValue= "true",state = "true" ,value = new List<string>(){ "true", "false" } }, - // new FunctionAttributes(){ key = "status",curValue= "normal",state = "normal" ,value = new List<string>(){ "alarm", "normal" } }, - // }, - //}); + btnChangeGroupControl.MouseUpEventHandler = (sender, e) => { + btnChangeFunction.IsSelected = false; + btnChangeFunction.TextSize = CSS.CSS_FontSize.TextFontSize; + btnChangeFunction.IsBold = false; + btnChangeScene.TextSize = CSS.CSS_FontSize.TextFontSize; + btnChangeScene.IsSelected = false; + btnChangeScene.IsBold = false; + btnChangeGroupControl.IsSelected = true; + btnChangeGroupControl.TextSize = CSS.CSS_FontSize.HeadlineFontSize; + btnChangeGroupControl.IsBold = true; + CurShowTypeContent = 2; + contentView.PageIndex = 2; + }; - //FunctionList.List.Functions.Add(new Function() { spk = SPK.PjtIr, name = "娴嬭瘯鎶曞奖浠�", - // attributes = new List<FunctionAttributes>() { - // new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" }, - // new FunctionAttributes(){ key = "computer",value = new List<string>(){"鐢佃剳" } }, - // new FunctionAttributes(){ key = "video",value = new List<string>(){"瑙嗛" } }, - // new FunctionAttributes(){ key = "source",value = new List<string>(){"淇″彿婧�" } }, - // new FunctionAttributes(){ key = "zoom+",value = new List<string>(){"鍙樼劍+" } }, - // new FunctionAttributes(){ key = "zoom-",value = new List<string>(){"鍙樼劍-" } }, - // new FunctionAttributes(){ key = "page+",value = new List<string>(){"鐢婚潰+" } }, - // new FunctionAttributes(){ key = "page-",value = new List<string>(){"鐢婚潰-" } }, - // new FunctionAttributes(){ key = "menu",value = new List<string>(){"鑿滃崟" } }, - // new FunctionAttributes(){ key = "ok",value = new List<string>(){"纭" } }, - // new FunctionAttributes(){ key = "up",value = new List<string>(){"涓�" } }, - // new FunctionAttributes(){ key = "left",value = new List<string>(){"宸�" } }, - // new FunctionAttributes(){ key = "right",value = new List<string>(){"鍙�" } }, - // new FunctionAttributes(){ key = "down",value = new List<string>(){"涓�" } }, - // new FunctionAttributes(){ key = "exit",value = new List<string>(){"閫�鍑�" } }, - // new FunctionAttributes(){ key = "volume+",value = new List<string>(){"闊抽噺+" } }, - // new FunctionAttributes(){ key = "volume-",value = new List<string>(){"闊抽噺-" } }, - // new FunctionAttributes(){ key = "mute",value = new List<string>(){"闈欓煶" } }, - // new FunctionAttributes(){ key = "auto",value = new List<string>(){"鑷姩" } }, - // new FunctionAttributes(){ key = "pause",value = new List<string>(){"鏆傚仠" } }, - // } - //}); + btnChangeFunction.MouseUpEventHandler = (sender, e) => { + btnChangeFunction.IsSelected = true; + btnChangeFunction.TextSize = CSS.CSS_FontSize.HeadlineFontSize; + btnChangeFunction.IsBold = true; + btnChangeScene.TextSize = CSS.CSS_FontSize.TextFontSize; + btnChangeScene.IsSelected = false; + btnChangeScene.IsBold = false; + CurShowTypeContent = 0; + contentView.PageIndex = 0; - //FunctionList.List.Functions.Add(new Function() - //{ - // spk = SPK.StbIr, - // name = "娴嬭瘯鏈洪《鐩�", - // attributes = new List<FunctionAttributes>() { - // new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" }, - // new FunctionAttributes(){ key = "computer",value = new List<string>(){"鐢佃剳" } }, - // new FunctionAttributes(){ key = "video",value = new List<string>(){"瑙嗛" } }, - // new FunctionAttributes(){ key = "source",value = new List<string>(){"淇″彿婧�" } }, - // new FunctionAttributes(){ key = "zoom+",value = new List<string>(){"鍙樼劍+" } }, - // new FunctionAttributes(){ key = "zoom-",value = new List<string>(){"鍙樼劍-" } }, - // new FunctionAttributes(){ key = "page+",value = new List<string>(){"鐢婚潰+" } }, - // new FunctionAttributes(){ key = "page-",value = new List<string>(){"鐢婚潰-" } }, - // new FunctionAttributes(){ key = "menu",value = new List<string>(){"鑿滃崟" } }, - // new FunctionAttributes(){ key = "ok",value = new List<string>(){"纭" } }, - // new FunctionAttributes(){ key = "up",value = new List<string>(){"涓�" } }, - // new FunctionAttributes(){ key = "left",value = new List<string>(){"宸�" } }, - // new FunctionAttributes(){ key = "right",value = new List<string>(){"鍙�" } }, - // new FunctionAttributes(){ key = "down",value = new List<string>(){"涓�" } }, - // new FunctionAttributes(){ key = "exit",value = new List<string>(){"閫�鍑�" } }, - // new FunctionAttributes(){ key = "volume+",value = new List<string>(){"闊抽噺+" } }, - // new FunctionAttributes(){ key = "volume-",value = new List<string>(){"闊抽噺-" } }, - // new FunctionAttributes(){ key = "mute",value = new List<string>(){"闈欓煶" } }, - // new FunctionAttributes(){ key = "auto",value = new List<string>(){"鑷姩" } }, - // new FunctionAttributes(){ key = "pause",value = new List<string>(){"鏆傚仠" } }, - // } - //}); + btnChangeGroupControl.IsSelected = false; + btnChangeGroupControl.TextSize = CSS.CSS_FontSize.TextFontSize; + btnChangeGroupControl.IsBold = false; + }; + btnChangeScene.MouseUpEventHandler = (sender, e) => { + btnChangeScene.IsSelected = true; + btnChangeScene.TextSize = CSS.CSS_FontSize.HeadlineFontSize; + btnChangeScene.IsBold = true; + btnChangeFunction.TextSize = CSS.CSS_FontSize.TextFontSize; + btnChangeFunction.IsSelected = false; + btnChangeFunction.IsBold = false; + CurShowTypeContent = 1; + contentView.PageIndex = 1; - //FunctionList.List.Functions.Add(new Function() - //{ - // spk = SPK.TvIr, - // name = "娴嬭瘯鐢佃", - // attributes = new List<FunctionAttributes>() { - // new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" }, - // new FunctionAttributes(){ key = "computer",value = new List<string>(){"鐢佃剳" } }, - // new FunctionAttributes(){ key = "video",value = new List<string>(){"瑙嗛" } }, - // new FunctionAttributes(){ key = "source",value = new List<string>(){"淇″彿婧�" } }, - // new FunctionAttributes(){ key = "zoom+",value = new List<string>(){"鍙樼劍+" } }, - // new FunctionAttributes(){ key = "zoom-",value = new List<string>(){"鍙樼劍-" } }, - // new FunctionAttributes(){ key = "page+",value = new List<string>(){"鐢婚潰+" } }, - // new FunctionAttributes(){ key = "page-",value = new List<string>(){"鐢婚潰-" } }, - // new FunctionAttributes(){ key = "menu",value = new List<string>(){"鑿滃崟" } }, - // new FunctionAttributes(){ key = "ok",value = new List<string>(){"纭" } }, - // new FunctionAttributes(){ key = "up",value = new List<string>(){"涓�" } }, - // new FunctionAttributes(){ key = "left",value = new List<string>(){"宸�" } }, - // new FunctionAttributes(){ key = "right",value = new List<string>(){"鍙�" } }, - // new FunctionAttributes(){ key = "down",value = new List<string>(){"涓�" } }, - // new FunctionAttributes(){ key = "exit",value = new List<string>(){"閫�鍑�" } }, - // new FunctionAttributes(){ key = "volume+",value = new List<string>(){"闊抽噺+" } }, - // new FunctionAttributes(){ key = "volume-",value = new List<string>(){"闊抽噺-" } }, - // new FunctionAttributes(){ key = "mute",value = new List<string>(){"闈欓煶" } }, - // new FunctionAttributes(){ key = "auto",value = new List<string>(){"鑷姩" } }, - // new FunctionAttributes(){ key = "pause",value = new List<string>(){"鏆傚仠" } }, - // } - //}); -#endif + btnChangeGroupControl.IsSelected = false; + btnChangeGroupControl.TextSize = CSS.CSS_FontSize.TextFontSize; + btnChangeGroupControl.IsBold = false; + }; + + contentView.PageChange = (sender, e) => + { + if (contentView.PageIndex == 0) + { + btnChangeFunction.IsSelected = true; + btnChangeFunction.TextSize = CSS.CSS_FontSize.HeadlineFontSize; + btnChangeFunction.IsBold = true; + btnChangeScene.TextSize = CSS.CSS_FontSize.TextFontSize; + btnChangeScene.IsSelected = false; + btnChangeScene.IsBold = false; + btnChangeGroupControl.IsSelected = false; + btnChangeGroupControl.TextSize = CSS.CSS_FontSize.TextFontSize; + btnChangeGroupControl.IsBold = false; + } + else if (contentView.PageIndex == 1) + { + btnChangeScene.IsSelected = true; + btnChangeScene.TextSize = CSS.CSS_FontSize.HeadlineFontSize; + btnChangeScene.IsBold = true; + btnChangeFunction.TextSize = CSS.CSS_FontSize.TextFontSize; + btnChangeFunction.IsSelected = false; + btnChangeFunction.IsBold = false; + btnChangeGroupControl.IsSelected = false; + btnChangeGroupControl.TextSize = CSS.CSS_FontSize.TextFontSize; + btnChangeGroupControl.IsBold = false; + } + else if (contentView.PageIndex == 2) + { + btnChangeFunction.IsSelected = false; + btnChangeFunction.TextSize = CSS.CSS_FontSize.TextFontSize; + btnChangeFunction.IsBold = false; + btnChangeScene.TextSize = CSS.CSS_FontSize.TextFontSize; + btnChangeScene.IsSelected = false; + btnChangeScene.IsBold = false; + btnChangeGroupControl.IsSelected = true; + btnChangeGroupControl.TextSize = CSS.CSS_FontSize.HeadlineFontSize; + btnChangeGroupControl.IsBold = true; + } + }; + + + } + else + { + var changeView = new FrameLayout() + { + //Y = Application.GetRealHeight(20) + topView.Bottom, + Gravity = Gravity.CenterHorizontal, + Width = Application.GetRealWidth(230), + Height = Application.GetRealHeight(62), + BackgroundImagePath = "Collection/ChangeViewbg.png", + }; + changeBaseView.AddChidren(changeView); + + var btnChangeFunction = new Button() + { + X = Application.GetRealWidth(10), + Width = Application.GetRealWidth(114 - 10), + TextID = StringId.Functions, + SelectedTextColor = CSS_Color.MainColor, + TextColor = CSS_Color.PromptingColor1, + TextSize = CSS_FontSize.HeadlineFontSize, + TextAlignment = TextAlignment.Center, + IsSelected = true, + IsBold = true, + }; + changeView.AddChidren(btnChangeFunction); + + Button btnLine = new Button() + { + X = btnChangeFunction.Right, + Gravity = Gravity.CenterVertical, + Width = Application.GetRealWidth(1), + Height = Application.GetRealHeight(14), + BackgroundColor = CSS_Color.PromptingColor1, + }; + changeView.AddChidren(btnLine); + + var btnChangeScene = new Button() + { + X = btnLine.Right, + Width = Application.GetRealWidth(114 - 10), + TextID = StringId.Scenes, + SelectedTextColor = CSS_Color.MainColor, + TextColor = CSS_Color.PromptingColor1, + TextSize = CSS_FontSize.TextFontSize, + TextAlignment = TextAlignment.Center, + }; + changeView.AddChidren(btnChangeScene); + + + btnChangeFunction.MouseUpEventHandler = (sender, e) => + { + + btnChangeFunction.IsSelected = true; + btnChangeFunction.TextSize = CSS.CSS_FontSize.HeadlineFontSize; + btnChangeFunction.IsBold = true; + btnChangeScene.TextSize = CSS.CSS_FontSize.TextFontSize; + btnChangeScene.IsSelected = false; + btnChangeScene.IsBold = false; + CurShowTypeContent = 0; + contentView.PageIndex = 0; + }; + + btnChangeScene.MouseUpEventHandler = (sender, e) => + { + btnChangeScene.IsSelected = true; + btnChangeScene.TextSize = CSS.CSS_FontSize.HeadlineFontSize; + btnChangeScene.IsBold = true; + btnChangeFunction.TextSize = CSS.CSS_FontSize.TextFontSize; + btnChangeFunction.IsSelected = false; + btnChangeFunction.IsBold = false; + CurShowTypeContent = 1; + contentView.PageIndex = 1; + }; + + contentView.PageChange = (sender, e) => + { + if (contentView.PageIndex == 0) + { + btnChangeFunction.IsSelected = true; + btnChangeFunction.TextSize = CSS.CSS_FontSize.HeadlineFontSize; + btnChangeFunction.IsBold = true; + btnChangeScene.TextSize = CSS.CSS_FontSize.TextFontSize; + btnChangeScene.IsSelected = false; + btnChangeScene.IsBold = false; + } + else if (contentView.PageIndex == 1) + { + btnChangeScene.IsSelected = true; + btnChangeScene.TextSize = CSS.CSS_FontSize.HeadlineFontSize; + btnChangeScene.IsBold = true; + btnChangeFunction.TextSize = CSS.CSS_FontSize.TextFontSize; + btnChangeFunction.IsSelected = false; + btnChangeFunction.IsBold = false; + } + }; + + + + } + + + contentView.PageIndex = CurShowTypeContent; } + /// <summary> /// 鍔犺浇鍐呭鍖哄煙 /// </summary> void LoadContentView() { - if (!Common.ApiUtlis.Ins.DownloadDataComplete) + + if (!Common.ApiUtlis.Ins.DownloadDataComplete && !MainPage.NoLoginMode) { var waitPage = new Loading(); MainPage.BaseView.AddChidren(waitPage); @@ -803,8 +904,10 @@ { if (contentView == null) { + waitPage.Hide(); return; } + loadNavView(); contentView.RemoveAll(); deviceFunctionView = new VerticalScrolViewLayout(); contentView.AddChidren(deviceFunctionView); @@ -812,12 +915,11 @@ sceneFunctionView = new VerticalScrolViewLayout(); contentView.AddChidren(sceneFunctionView); LoadSceneFunctionControlZone(); - if (CurShowTypeIsFunction) + if (DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl) { - contentView.PageIndex = 0; - }else - { - contentView.PageIndex = 1; + gcFunctionView = new VerticalScrolViewLayout(); + contentView.AddChidren(gcFunctionView); + LoadGroupControlFunctionControlZone(); } LoadEvent_ChangeShowedFunctionType(); @@ -826,6 +928,7 @@ GetUnreadPushMessages(); RegisterGetPushMessageAction(); + contentView.PageIndex = CurShowTypeContent; if (waitPage != null) { waitPage.RemoveFromParent(); @@ -849,15 +952,13 @@ sceneFunctionView = new VerticalScrolViewLayout(); contentView.AddChidren(sceneFunctionView); LoadSceneFunctionControlZone(); - - if (CurShowTypeIsFunction) + if (DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl) { - contentView.PageIndex = 0; + gcFunctionView = new VerticalScrolViewLayout(); + contentView.AddChidren(gcFunctionView); + LoadGroupControlFunctionControlZone(); } - else - { - contentView.PageIndex = 1; - } + contentView.PageIndex = CurShowTypeContent; LoadEvent_ChangeShowedFunctionType(); @@ -882,47 +983,20 @@ try { int index = 0; - var list = FunctionList.List.GetDeviceFunctionList(); + var list = new List<Function>(); + list.AddRange(FunctionList.List.GetDeviceFunctionList()); + //list.AddRange(FunctionList.List.groupControls);//鍔犲叆缇ゆ帶 foreach (var function in list) { //闊充箰妯″潡鏈変富浠庡叧绯伙紝闇�瑕佺壒娈婂鐞� - if (SPK.MusicSpkList().Contains( function.spk)) - { - continue; - //var music = function as Music.A31MusicModel; - //var music = Music.A31MusicModel.A31MusicModelList.Find((obj) => obj.sid == function.sid); - //if (music == null) - //{ - // continue; - //} - //if (music.ServerClientType == -1) - //{ - // continue; - //} - //else if (music.ServerClientType == 1) - //{ - // if (!music.MainPlayCollection) - // { - // continue; - // } - //} - //else - //{ - // if (!music.collect) - // { - // continue; - // } - //} - } - else + //if (SPK.MusicSpkList().Contains( function.spk)) + //{ + // continue; + //} + //else { if (!function.collect) continue; - //if (function.roomIdList.Count == 0)//濡備綍鍦ㄦ埧闂村凡缁忕Щ闄や簡杩欎釜鍔熻兘锛屽垯鏀惰棌鐣岄潰涔熶笉浼氬啀鏄剧ず - //{ - // function.collection = false; - // continue; - //} } if (index % 2 == 0) { @@ -946,23 +1020,30 @@ Tag = function.sid }; rowView.AddChidren(functionView); - - var btnbg = new Button() - { - UnSelectedImagePath = "Collection/Functionbg.png", - SelectedImagePath = "Collection/FunctionOnbg.png", - Tag = function.sid - }; - functionView.AddChidren(btnbg); functionViews.Add(functionView); - LoadDeviceFunctionDiv(functionView, function); + //缁垮缓浜哄眳鐜锛岀鎶�绯荤粺 + if (function.spk == SPK.AcstParent) + { + LoadAcstDiv(functionView, function); + } + else //鍏朵粬璁惧 + { + var btnbg = new Button() + { + UnSelectedImagePath = "Collection/Functionbg.png", + SelectedImagePath = "Collection/FunctionOnbg.png", + Tag = function.sid + }; + functionView.AddChidren(btnbg); + LoadDeviceFunctionDiv(functionView, function); + + if (SPK.ArmSensorSpkList().Contains(function.spk)) + { + btnbg.UnSelectedImagePath = "Collection/FunctionOnbg.png"; + btnbg.SelectedImagePath = "Collection/FunctionArmOnbg.png"; + } + } index++; - - - //if (!function.online) - //{ - // btnbg.UnSelectedImagePath = "Collection/FunctionOfflineBg.png"; - //} } if (index == 0) @@ -998,8 +1079,94 @@ } deviceFunctionView.AddChidren(new Button { Height = Application.GetRealHeight(30) }); #endregion - } + + + /// <summary> + /// 鍔犺浇缇ゆ帶鍔熻兘鏄剧ず鍖哄煙 + /// </summary> + void LoadGroupControlFunctionControlZone() + { + + #region ContextView + gcFunctionView.RemoveAll(); + functionViews.Clear(); + var rowView = new FrameLayout(); + try + { + int index = 0; + foreach (var function in FunctionList.List.groupControls) + { + if (index % 2 == 0) + { + rowView = new FrameLayout() + { + Height = Application.GetRealWidth(140), + }; + gcFunctionView.AddChidren(rowView); + } + var functionView_X = Application.GetRealWidth((182 + 7) * (index % 2)); + if (index % 2 == 0) + { + functionView_X += Application.GetRealWidth(7); + } + var functionView = new FrameLayout() + { + X = functionView_X, + Width = Application.GetRealWidth(182), + Height = Application.GetRealWidth(140), + Radius = (uint)Application.GetRealWidth(12), + Tag = function.sid + }; + rowView.AddChidren(functionView); + functionViews.Add(functionView); + var btnbg = new Button() + { + UnSelectedImagePath = "Collection/Functionbg.png", + SelectedImagePath = "Collection/FunctionOnbg.png", + Tag = function.sid + }; + functionView.AddChidren(btnbg); + LoadDeviceFunctionDiv(functionView, function); + + index++; + } + + if (index == 0) + { + var view = new FrameLayout(); + gcFunctionView.AddChidren(view); + + var btnNoCollectionBg = new Button() + { + Y = Application.GetRealHeight(20), + Gravity = Gravity.CenterHorizontal, + Width = Application.GetRealWidth(180), + Height = Application.GetRealWidth(180), + UnSelectedImagePath = "Collection/NoCollectionBg.png", + }; + view.AddChidren(btnNoCollectionBg); + + var btnNoCollectionTip = new Button() + { + Height = Application.GetRealHeight(42), + Y = btnNoCollectionBg.Bottom, + TextAlignment = TextAlignment.Center, + TextColor = CSS_Color.PromptingColor1, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + //TextID = StringId.TipNoFunctionCollcetion, + }; + view.AddChidren(btnNoCollectionTip); + } + } + catch (Exception ex) + { + MainPage.Log("homepage error : " + ex.Message); + } + gcFunctionView.AddChidren(new Button { Height = Application.GetRealHeight(30) }); + #endregion + } + /// <summary> /// 鍔犺浇鍦烘櫙鍔熻兘鏄剧ず鍖哄煙 /// </summary> @@ -1100,11 +1267,6 @@ }; view.AddChidren(btnIcon); - - btnIcon.UnSelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_blue.png"; - btnIcon.SelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_white.png"; - - Button btnName; btnName = new Button() { @@ -1135,6 +1297,7 @@ }; view.AddChidren(btnZone); + Button btnState; btnState = new Button() { @@ -1149,6 +1312,70 @@ Tag = "state", Text = function.lastState }; + + + if (function.spk == SPK.SenesorMegahealth || function.spk == SPK.SensorMmvPose) + { + btnIcon.UnSelectedImagePath = "FunctionIcon/Icon/HomeIcon/sensormegahealth.png"; + btnIcon.SelectedImagePath = "FunctionIcon/Icon/HomeIcon/sensormegahealth.png"; + btnName.TextColor = CSS_Color.MainBackgroundColor; + btnZone.TextColor = CSS_Color.MainBackgroundColor; + btnState.TextColor = CSS_Color.MainBackgroundColor; + + var tempStatus = function.attributes.Find((sta) => sta.key == FunctionAttributeKey.TargetStatus); + if (tempStatus != null) + { + switch (tempStatus.state) + {//0绌猴紝1璧帮紝2璺戯紝3鍧愶紝4璺屽�掞紝5绔� + case "0": + function.lastState = Language.StringByID(StringId.SensorNormalState); + break; + case "1": + function.lastState = Language.StringByID(StringId.SomeoneIn); + break; + case "2": + if (function.extSet.labModel) + { + function.lastState = Language.StringByID(StringId.SomeoneRunning); + } + else + { + function.lastState = Language.StringByID(StringId.Someone); + } + break; + case "3": + if (function.extSet.labModel) + { + function.lastState = Language.StringByID(StringId.SomeoneSitting); + } + else + { + function.lastState = Language.StringByID(StringId.Someone); + } + break; + case "4": + function.lastState = Language.StringByID(StringId.SomeoneFell); + break; + case "5": + if (function.extSet.labModel) + { + function.lastState = Language.StringByID(StringId.SomeoneStanding); + } + else + { + function.lastState = Language.StringByID(StringId.Someone); + } + break; + } + btnState.Text = function.lastState; + } + } + + else + { + btnIcon.UnSelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_blue.png"; + btnIcon.SelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_white.png"; + } if (function.spk != SPK.LightSwitch) { @@ -1165,7 +1392,8 @@ SelectedImagePath = "Collection/CollectionWhiteIcon.png", UnSelectedImagePath = "Collection/CollectionIcon.png", }; - view.AddChidren(btnCollection); + if (function.spk != SPK.GroupControl)//缇ゆ帶榛樿鏄剧ず + view.AddChidren(btnCollection); //2020-12-16 濡傛灉鏄垚鍛橀殣钘忔敹钘忓姛鑳� //if (!DB_ResidenceData.Instance.CurrentRegion.isOtherShare) //{ @@ -1175,7 +1403,8 @@ LoadEvent_FunctionCollection(btnCollection, function); if (//SPK.CurtainSpkList().Contains(function.spk)) function.spk == SPK.CurtainRoller || function.spk == SPK.CurtainShades || - function.spk == SPK.CurtainSwitch || function.spk == SPK.CurtainTrietex ) + function.spk == SPK.CurtainDream || + function.spk == SPK.CurtainSwitch || function.spk == SPK.CurtainTrietex) { btnIcon.UnSelectedImagePath = "FunctionIcon/Curtain/CurtainIcon.png"; btnIcon.SelectedImagePath = "FunctionIcon/Curtain/CurtainOnIcon.png"; @@ -1226,7 +1455,7 @@ { btnIcon.UnSelectedImagePath = "FunctionIcon/Music/MusicIcon.png"; btnIcon.SelectedImagePath = "FunctionIcon/Music/MusicOnIcon.png"; - btnCollection.Visible = false; + //btnCollection.Visible = false; Button btnPower; btnPower = new Button() { @@ -1260,10 +1489,10 @@ btnPower.IsSelected = true; status = "on"; } - function.SetAttrState("on_off", status); + function.SetAttrState("on_off", status); Dictionary<string, string> dic = new Dictionary<string, string>(); dic.Add("on_off", status); - Music.SendMethod.mMethod.SendControlCommand(function, dic); + Music.SendMethod.Current.SendControlCommand(function, dic); }; } @@ -1274,7 +1503,7 @@ Button btnUp; btnUp = new Button() { - X = Application.GetRealWidth(84+3), + X = Application.GetRealWidth(84 + 3), Y = Application.GetRealWidth(89), Width = Application.GetRealWidth(38), Height = Application.GetRealWidth(38), @@ -1300,6 +1529,38 @@ } + else if (function.spk == SPK.SenesorMegahealth || function.spk == SPK.SensorMmvPose) + { + //btnIcon.UnSelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}.png"; + //btnIcon.SelectedImagePath = "FunctionIcon/Icon/HomeIcon/sensormegahealth.png"; + //btnIcon.IsSelected = true; + btnState.SelectedTextColor = CSS_Color.MainBackgroundColor; + btnState.TextColor = CSS_Color.MainColor;//PromptingColor1 + } + + //绱ф�ユ眰鍔� + else if (function.spk == SPK.SensorHelp) + { + btnName.TextColor = CSS_Color.MainBackgroundColor; + btnName.SelectedTextColor = CSS_Color.MainBackgroundColor; + btnIcon.UnSelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_white.png"; + btnIcon.SelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_white.png"; + } + else if (function.spk == SPK.IpCam_Imou) + { + btnIcon.UnSelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_blue.png"; + btnIcon.SelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_blue.png"; + } + else if (function.spk == SPK.VideoDoorLock) + { + btnIcon.UnSelectedImagePath = UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.GetVideoDoorLockIcon(UI2.FuntionControlView.VideoDoorLock.CommonMethod.Comerom.collect); + //btnIcon.SelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_blue.png"; + } + //else if (function.spk == SPK.GroupControl) + //{ + // btnIcon.UnSelectedImagePath = $"FunctionIcon/Icon/HomeIcon/lightswitch_blue.png"; + // btnIcon.SelectedImagePath = $"FunctionIcon/Icon/HomeIcon/lightswitch_white.png"; + //} else { Button btnSwitch; @@ -1313,7 +1574,6 @@ SelectedImagePath = "Public/SwitchOn.png", }; view.AddChidren(btnSwitch); - btnIcon.UnSelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_blue.png"; btnIcon.SelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_white.png"; LoadEvent_SwitchFunction(function, btnSwitch); @@ -1335,30 +1595,32 @@ }; - var skipControlPageEvent = new PublicAssmebly().LoadEvent_SkipFunctionControlPage(function, btnCollection, btnName, btnZone); + var skipControlPageEvent = new PublicAssmebly().LoadEvent_SkipFunctionControlPage(function, btnCollection, btnName, btnZone, UI2.FuntionControlView.VideoDoorLock.CommonMethod.Comerom.collect,()=> { + this.LoadDeviceFunctionControlZone();//鍒犻櫎璁惧鍚庨噸鏂板埛鏂癠I + }); view.MouseUpEventHandler = skipControlPageEvent; btnName.MouseUpEventHandler = skipControlPageEvent; btnIcon.MouseUpEventHandler = skipControlPageEvent; btnState.MouseUpEventHandler = skipControlPageEvent; - //涓嶉渶瑕佹洿鏂扮姸鎬佺殑鍔ㄨ兘鍒楄〃 - if(!SPK.NotStatusSpkList.Contains(function.spk)) + //涓嶉渶瑕佹洿鏂扮姸鎬佺殑鍔熻兘鍒楄〃 + if(!SPK.NotStatusSpkList.Contains(function.spk) || function.spk != SPK.IpCam_Imou) { UpdataFunctionStates(function); } - //var btnOffline = new Button() - //{ - // X = btnIcon.Right, - // Y = Application.GetRealWidth(16), - // Height = Application.GetMinRealAverage(32), - // TextID = StringId.DeviceOffline, - // TextColor = CSS_Color.WarningColor, - // TextSize = CSS_FontSize.PromptFontSize_FirstLevel, - // TextAlignment = TextAlignment.CenterLeft, - // Tag = "OnlineTag", - // Visible = !function.online - //}; - //view.AddChidren(btnOffline); + var btnOffline = new Button() + { + X = btnIcon.Right, + Y = Application.GetRealWidth(16), + Height = Application.GetMinRealAverage(32), + TextID = StringId.DeviceOffline, + TextColor = CSS_Color.WarningColor, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + TextAlignment = TextAlignment.CenterLeft, + Tag = "OnlineTag", + Visible = !function.online + }; + view.AddChidren(btnOffline); } catch (Exception ex) @@ -1366,6 +1628,97 @@ MainPage.Log("homepage LoadControlView error : " + ex.Message); } } + /// <summary> + /// 鍔犺浇缁垮缓绉戞妧绯荤粺鍗$墖 + /// </summary> + void LoadAcstDiv(FrameLayout view1, Function function) + { + var view = new FrameLayout() + { + X = Application.GetRealWidth(10), + Y = Application.GetRealHeight(5), + Width = Application.GetRealWidth(160), + Height = Application.GetRealHeight(105), + BackgroundColor = CSS_Color.MainBackgroundColor, + Radius = (uint)Application.GetRealWidth(15), + }; + view1.AddChidren(view); + + Button btnName; + btnName = new Button() + { + X = Application.GetRealWidth(11), + Y = Application.GetRealWidth(10), + TextID = StringId.Acst, + IsBold = true, + TextColor = CSS_Color.FirstLevelTitleColor, + TextSize = CSS_FontSize.TextFontSize, + Height = Application.GetRealWidth(24), + Width = Application.GetRealWidth(140), + TextAlignment = TextAlignment.CenterLeft, + }; + view.AddChidren(btnName); + + var btnLogo = new Button() + { + Y = Application.GetRealHeight(65), + UnSelectedImagePath = "FunctionIcon/Acst/LvJianLogo.png", + SelectedImagePath = "FunctionIcon/Acst/LvJianLogo.png", + Width = Application.GetRealWidth(80), + Height = Application.GetRealHeight(37), + }; + view.AddChidren(btnLogo); + + Button btnFunctionViewBg; + btnFunctionViewBg = new Button() + { + Height = Application.GetRealWidth(100), + Width = Application.GetRealWidth(102), + UnSelectedImagePath = "FunctionIcon/FunctionBg/AcstFunctionBg.png", + }; + view.AddChidren(btnFunctionViewBg); + btnFunctionViewBg.MouseUpEventHandler = (sender, e) => { + var page = new AcstParentPage(); + MainPage.BasePageView.AddChidren(page); + page.LoadPage(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + + + //Button btnAcstPower = new Button() + //{ + // X = Application.GetRealWidth(115), + // Y = Application.GetRealHeight(70), + // Width = Application.GetRealWidth(32), + // Height = Application.GetRealWidth(32), + // SelectedImagePath = "Public/PowerOpen.png", + // UnSelectedImagePath = "Public/PowerClose.png", + // IsSelected = function.trait_on_off.curValue.ToString() == "on", + //}; + //view.AddChidren(btnAcstPower); + //btnAcstPower.MouseUpEventHandler = (sender, e) => { + // btnAcstPower.IsSelected = !btnAcstPower.IsSelected; + // new System.Threading.Thread(() => + // { + // string onoff = btnAcstPower.IsSelected ? "on" : "off"; + // Dictionary<string, string> d = new Dictionary<string, string>(); + // d.Add(FunctionAttributeKey.OnOff, onoff); + // foreach (var temp in FunctionList.List.GetAcstParentList()) + // { + // Control.Ins.SendWriteCommand(temp, d); + // } + // }) + // { IsBackground = true }.Start(); + //}; + + + + + } + + + + /// <summary> /// 鍔犺浇鍦烘櫙鎺у埗鍗$墖 @@ -1458,11 +1811,14 @@ LoadEvent_ControlScene(btnCoverd, btnName, btnZone, btnShowDelay, scene); - btnSettingIcon.MouseUpEventHandler = (sender, e) => { - Action backAction = () => { + btnSettingIcon.MouseUpEventHandler = (sender, e) => + { + Action backAction = () => + { //LoadSceneFunctionControlZone(); }; - Action refreshAction = () => { + Action refreshAction = () => + { btnName.Text = scene.name; btnZone.Text = scene.GetRoomListName(); //view.BackgroundImagePath = (scene as Scene).ImagePath; @@ -1471,7 +1827,7 @@ }; var aep = new SceneEditPage(scene, backAction); MainPage.BasePageView.AddChidren(aep); - aep.LoadPage( refreshAction); + aep.LoadPage(refreshAction); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; }; //鍦烘櫙姝e湪鍊掕鏃舵墽琛屼腑 -- Gitblit v1.8.0