From 320d7cc8feb394d0ce3db2ec1d01593b554d990f Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期三, 23 十二月 2020 10:57:13 +0800 Subject: [PATCH] 2020-12-23 1.更新 --- HDL_ON/UI/UI2/1-HomePage/HomePage.cs | 250 ++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 180 insertions(+), 70 deletions(-) diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs index 565f759..6ef3602 100644 --- a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs +++ b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs @@ -1,7 +1,8 @@ -锘縰sing System; +锘縰sing System; using System.Collections.Generic; using System.Text; using HDL_ON.DAL; +using HDL_ON.DriverLayer; using HDL_ON.Entity; using HDL_ON.UI.CSS; using Newtonsoft.Json; @@ -20,6 +21,10 @@ /// </summary> FrameLayout topView; /// <summary> + /// 杩炴帴鐘舵�佹彁绀� + /// </summary> + Button btnLinkStateTip; + /// <summary> ///浣忓畢鍚嶇О鏄剧ず /// </summary> Button btnResidenceName; @@ -30,15 +35,15 @@ /// <summary> /// 褰撳墠娓╁害淇℃伅 /// </summary> - Button btnTempValues; + TextButton btnTempValues; /// <summary> /// 褰撳墠婀垮害淇℃伅 /// </summary> - Button btnHumidityValues; + TextButton btnHumidityValues; /// <summary> /// 褰撳墠pm2.5鐘舵�� /// </summary> - Button btnPm25Values; + TextButton btnPm25Values; /// <summary> /// 鍒囨崲鏄剧ず鍔熻兘绫诲瀷鍖哄煙 /// </summary> @@ -76,10 +81,23 @@ bool CurShowTypeIsFunction = true; #endregion + #region 鎶ヨ淇℃伅 + Button btnMsgBg; + Button btnMsgTime; + Button btnMsg; + Button btnMsgIcon; + #endregion + public HomePage() { bodyView = this; bodyView.BackgroundColor = CSS_Color.BackgroundColor; + } + + public override void RemoveFromParent() + { + UnregisterGetPushMessageAction(); + base.RemoveFromParent(); } public void LoadPage() @@ -90,7 +108,7 @@ topView = new FrameLayout() { Height = Application.GetRealHeight(216), - BackgroundImagePath = DB_ResidenceData.residenceData.residenceImage, + BackgroundImagePath = DB_ResidenceData.Instance.residenceImage, }; bodyView.AddChidren(topView); @@ -101,26 +119,44 @@ }; topView.AddChidren(btnTop); - btnResidenceName = new Button() + btnLinkStateTip = new Button() { X = Application.GetRealWidth(16), + Y = Application.GetRealHeight(46), + Width = Application.GetRealWidth(6), + Height = Application.GetRealWidth(6), + BackgroundColor = CSS_Color.LinkTipFail, + Radius = (uint)Application.GetRealWidth(3), + }; + topView.AddChidren(btnLinkStateTip); + //鏇存柊閾炬帴鐘舵�乮con棰滆壊 + CheckLinkStatus();//2020-12-22 + //LoadEvent_CheckLinkStatus(); + + btnResidenceName = new Button() + { + X = Application.GetRealWidth(26), Y = Application.GetRealHeight(32), - Width = Application.GetRealWidth(400), + Width = Application.GetRealWidth(300), Height = Application.GetRealHeight(33), TextColor = CSS_Color.MainBackgroundColor, TextSize = CSS_FontSize.EmphasisFontSize_FirstLevel, TextAlignment = TextAlignment.CenterLeft, - Text = DB_ResidenceData.residenceData.residecenInfo.Name, + Text = DB_ResidenceData.Instance.CurrentRegion.Name, IsBold = true }; topView.AddChidren(btnResidenceName); -#if DEBUG11 +#if DEBUG + //鎼滅储缃戝叧 btnResidenceName.MouseUpEventHandler = (sender, e) => { - System.Threading.Tasks.Task.Run( - async () => { await DAL.Net.MqttCommon.StartMqtt(); - }); + System.Threading.Tasks.Task.Run(() => + { + //DriverLayer.Control.Ins.SearchLoaclGateway(); + //MainPage.InitializationData(); + //DriverLayer.Control.Ins.IsRemote = true; + }); }; #endif @@ -141,7 +177,7 @@ }; environmentalView.AddChidren(btnTempIcon); - btnTempValues = new Button() + btnTempValues = new TextButton() { X = btnTempIcon.Right + Application.GetRealWidth(4), Width = Application.GetRealWidth(30), @@ -163,7 +199,7 @@ }; environmentalView.AddChidren(btnHumidityIcon); - btnHumidityValues = new Button() + btnHumidityValues = new TextButton() { X = btnHumidityIcon.Right + Application.GetRealWidth(4), Width = Application.GetRealWidth(30), @@ -185,10 +221,10 @@ }; environmentalView.AddChidren(btnPm25Icon); - btnPm25Values = new Button() + btnPm25Values = new TextButton() { X = btnPm25Icon.Right + Application.GetRealWidth(4), - Width = Application.GetRealWidth(30), + Width = Application.GetRealWidth(130), Gravity = Gravity.CenterVertical, TextColor = CSS_Color.MainBackgroundColor, TextSize = CSS_FontSize.PromptFontSize_FirstLevel, @@ -209,14 +245,14 @@ }; topView.AddChidren(msgView); - var btngb = new Button() + btnMsgBg = new Button() { BackgroundColor = CSS_Color.MainColor,//0x3F4484F4, Alpha = 0.4f, }; - msgView.AddChidren(btngb); + msgView.AddChidren(btnMsgBg); - Button btnMsgIcon; + btnMsgIcon = new Button() { X = Application.GetRealWidth(12), @@ -228,19 +264,19 @@ }; msgView.AddChidren(btnMsgIcon); - Button btnMsg; + btnMsg = new Button() { X = Application.GetRealWidth(10) + btnMsgIcon.Right, Width = Application.GetRealWidth(240), - Text = "鏃�", + Text = "...", TextColor = CSS_Color.MainBackgroundColor, TextSize = CSS_FontSize.PromptFontSize_FirstLevel, TextAlignment = TextAlignment.CenterLeft, }; msgView.AddChidren(btnMsg); - Button btnMsgTime; + btnMsgTime = new Button() { X = Application.GetRealWidth(299), @@ -250,6 +286,9 @@ TextAlignment = TextAlignment.CenterLeft, }; msgView.AddChidren(btnMsgTime); + + LoadEvent_GotoMessageCenterPage(); + #endregion #endregion @@ -320,14 +359,23 @@ contentView.PageIndex = 0; #endregion - bodyView.AddChidren(new Button() { Y = changeView.Bottom, Height = Application.GetRealHeight(4), BackgroundColor = 0xAAF2F3F7 }); LoadEvent_ChangeShowedFunctionType(); + + // 鏌ヨ鏈娑堟伅骞舵樉绀� + GetUnreadPushMessages(); + RegisterGetPushMessageAction(); } catch (Exception ex) { MainPage.Log($"HomePage LoadPage Error : {ex.Message}"); } + + + System.Threading.Tasks.Task.Run(() => + { + //DriverLayer.Control.Ins.SearchLoaclGateway(); + }); } /// <summary> @@ -342,7 +390,7 @@ try { int index = 0; - foreach (var function in DB_ResidenceData.residenceData.functionList.GetAllDeviceFunctionList()) + foreach (var function in FunctionList.List.GetDeviceFunctionList()) { //闊充箰妯″潡鏈変富浠庡叧绯伙紝闇�瑕佺壒娈婂鐞� if (function.functionCategory == FunctionCategory.Music) @@ -361,7 +409,7 @@ } else { - if (!music.collection) + if (!music.collect) { continue; } @@ -369,13 +417,13 @@ } else { - if (!function.collection) + if (!function.collect) continue; - if (function.roomIdList.Count == 0)//濡備綍鍦ㄦ埧闂村凡缁忕Щ闄や簡杩欎釜鍔熻兘锛屽垯鏀惰棌鐣岄潰涔熶笉浼氬啀鏄剧ず - { - function.collection = false; - continue; - } + //if (function.roomIdList.Count == 0)//濡備綍鍦ㄦ埧闂村凡缁忕Щ闄や簡杩欎釜鍔熻兘锛屽垯鏀惰棌鐣岄潰涔熶笉浼氬啀鏄剧ず + //{ + // function.collection = false; + // continue; + //} } if (index % 2 == 0) { @@ -457,15 +505,15 @@ try { int index = 0; - foreach (var function in DB_ResidenceData.residenceData.functionList.scenes) + foreach (var scene in FunctionList.List.scenes) { - if (!function.collection) + if (!scene.collect) continue; - if (function.roomIdList.Count == 0)//濡備綍鍦ㄦ埧闂村凡缁忕Щ闄や簡杩欎釜鍔熻兘锛屽垯鏀惰棌鐣岄潰涔熶笉浼氬啀鏄剧ず - { - function.collection = false; - continue; - } + //if (scene.roomIds.Count == 0)//濡備綍鍦ㄦ埧闂村凡缁忕Щ闄や簡杩欎釜鍔熻兘锛屽垯鏀惰棌鐣岄潰涔熶笉浼氬啀鏄剧ず + //{ + // scene.collect = false; + // continue; + //} if (index % 2 == 0) { sceneFunctionView.AddChidren(new Button() { Height = Application.GetRealHeight(7) }); @@ -483,12 +531,15 @@ X = functionView_X, Width = Application.GetRealWidth(164), Height = Application.GetRealWidth(122), - Tag = function.sid, - BackgroundImagePath = (function as Scene).ImagePath, + Tag = scene.sid, + BackgroundImagePath = scene.ImagePath, }; rowView.AddChidren(functionView); - LoadSceneFunctionDiv( functionView, function); + //2020-12-03 淇敼鍥剧墖鍔犺浇鏂规硶 + ImageUtlis.Current.LoadLocalOrNetworkImages((scene as Scene).ImagePath, functionView); + + LoadSceneFunctionDiv( functionView, scene); index++; } @@ -600,8 +651,14 @@ SelectedImagePath = "Collection/CollectionWhiteIcon.png", UnSelectedImagePath = "Collection/CollectionIcon.png", }; - view.AddChidren(btnCollection); - LoadEvent_FunctionCollection(btnCollection, function, true); + //view.AddChidren(btnCollection); + //2020-12-16 濡傛灉鏄垚鍛橀殣钘忔敹钘忓姛鑳� + if (!DB_ResidenceData.Instance.CurrentRegion.IsOthreShare) + { + view.AddChidren(btnCollection); + } + + LoadEvent_FunctionCollection(btnCollection, function); if (function.functionCategory == FunctionCategory.Curtain) { @@ -679,14 +736,14 @@ btnPower.IsSelected = false; Music.SendMethod.Pause(a31player); a31player.A31PlayStatus.status = "pause"; - a31player.on_off = "off"; + a31player.trait_on_off.curValue = "off"; } else { btnPower.IsSelected = true; Music.SendMethod.Play(a31player); a31player.A31PlayStatus.status = "play"; - a31player.on_off = "on"; + a31player.trait_on_off.curValue = "on"; } UpdataFunctionStates(a31player); }; @@ -753,7 +810,23 @@ } LoadEvent_SwitchFunction(function, btnSwitch); } - var skipControlPageEvent = new PublicAssmebly().LoadEvent_SkipFunctionControlPage(function, new Button(), new Button(), new Button()); + //鍙栨秷鏀惰棌浜嬩欢 + Action cannelCollect = () => { + function.collect = false; + if (function.functionCategory == FunctionCategory.Music)//澶勭悊闊充箰涓讳粠鍏崇郴 + { + if ((function as Music.A31MusicModel).ServerClientType == 1) + { + (function as Music.A31MusicModel).MainPlayCollection = false; + Music.A31MusicModel.Save(); + } + } + string msg = function.name + Language.StringByID(StringId.CollectionCancelled); + LoadDeviceFunctionControlZone(); + function.SaveFunctionData(true); + }; + + var skipControlPageEvent = new PublicAssmebly().LoadEvent_SkipFunctionControlPage(function, btnCollection, btnName, btnZone); view.MouseUpEventHandler = skipControlPageEvent; btnName.MouseUpEventHandler = skipControlPageEvent; btnIcon.MouseUpEventHandler = skipControlPageEvent; @@ -770,14 +843,43 @@ } } - /// <summary> /// 鍔犺浇鍦烘櫙鎺у埗鍗$墖 /// </summary> - void LoadSceneFunctionDiv(FrameLayout view, Function function) + void LoadSceneFunctionDiv(FrameLayout view, Scene scene) { try { + Button btnCoverd = new Button() + { + UnSelectedImagePath = "Collection/SceneCovered.png", + }; + view.AddChidren(btnCoverd); + + Button btnShowDelay; + btnShowDelay = new Button() + { + X = Application.GetRealWidth(40), + Y = Application.GetRealWidth(4), + Height = Application.GetRealWidth(32), + Width = Application.GetRealWidth(100), + TextColor = CSS_Color.AuxiliaryColor1, + TextAlignment = TextAlignment.CenterLeft, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + }; + view.AddChidren(btnShowDelay); + + Button btnSettingIcon; + btnSettingIcon = new Button() + { + X = Application.GetRealWidth(4), + Y = Application.GetRealWidth(4), + Height = Application.GetRealWidth(32), + Width = Application.GetRealWidth(32), + UnSelectedImagePath = "Public/FuncInfoSetIcon_white.png", + }; + view.AddChidren(btnSettingIcon); + Button btnName; btnName = new Button() { @@ -785,7 +887,7 @@ Y = Application.GetRealWidth(68), Width = Application.GetRealWidth(150), Height = Application.GetRealHeight(24), - Text = function.name, + Text = scene.name, TextSize = CSS_FontSize.TextFontSize, TextColor = CSS_Color.MainBackgroundColor, TextAlignment = TextAlignment.CenterLeft, @@ -803,26 +905,10 @@ TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel, TextAlignment = TextAlignment.CenterLeft, SelectedTextColor = CSS_Color.MainBackgroundColor, - Text = function.GetRoomListName(), + Text = scene.GetRoomListName(), }; view.AddChidren(btnZone); - Button btnCoverd = new Button() - { - UnSelectedImagePath = "Collection/SceneCovered.png", - }; - view.AddChidren(btnCoverd); - - Button btnDelayIcon; - btnDelayIcon = new Button() - { - X = Application.GetRealWidth(12), - Y = Application.GetRealWidth(12), - Height = Application.GetRealWidth(24), - Width = Application.GetRealWidth(24), - UnSelectedImagePath = "FunctionIcon/Scene/DelayIcon.png" - }; - view.AddChidren(btnDelayIcon); Button btnCollection; btnCollection = new Button() @@ -834,11 +920,35 @@ SelectedImagePath = "Collection/CollectionWhiteIcon.png", UnSelectedImagePath = "Collection/CollectionIcon.png", }; - view.AddChidren(btnCollection); - LoadEvent_FunctionCollection(btnCollection, function, false); - - LoadEvent_ControlScene(btnCoverd, function); + //view.AddChidren(btnCollection); + //2020-12-16 濡傛灉鏄垚鍛橀殣钘忔敹钘忓姛鑳� + if (!DB_ResidenceData.Instance.CurrentRegion.IsOthreShare) + { + view.AddChidren(btnCollection); + } + LoadEvent_SceneCollection(btnCollection, scene); + + LoadEvent_ControlScene(btnCoverd, btnName, btnZone, btnShowDelay, scene); + + btnSettingIcon.MouseUpEventHandler = (sender, e) => { + Action backAction = () => { + //LoadSceneFunctionControlZone(); + }; + Action refreshAction = () => { + btnName.Text = scene.name; + btnZone.Text = scene.GetRoomListName(); + //view.BackgroundImagePath = (scene as Scene).ImagePath; + //2020-12-03 淇敼鍥剧墖鍔犺浇鏂规硶 + ImageUtlis.Current.LoadLocalOrNetworkImages((scene as Scene).ImagePath, view); + }; + var aep = new SceneEditPage(scene, backAction); + MainPage.BasePageView.AddChidren(aep); + aep.LoadPage( refreshAction); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + //鍦烘櫙姝e湪鍊掕鏃舵墽琛屼腑 + scene.SceneCountDown(btnShowDelay); } catch (Exception ex) { -- Gitblit v1.8.0