From e6a26ee148587327478d9a82624a820c907b6e16 Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期三, 04 十一月 2020 14:58:15 +0800 Subject: [PATCH] 20201104 --- HDL_ON/UI/UI2/1-HomePage/HomePage.cs | 334 ++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 269 insertions(+), 65 deletions(-) diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs index be8e5ec..8749ff5 100644 --- a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs +++ b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs @@ -1,7 +1,11 @@ 锘縰sing System; using System.Collections.Generic; +using System.Text; +using HDL_ON.DAL; using HDL_ON.Entity; using HDL_ON.UI.CSS; +using Newtonsoft.Json; +using Newtonsoft.Json.Linq; using Shared; namespace HDL_ON.UI @@ -15,6 +19,10 @@ /// 椤堕儴淇℃伅鍖哄煙 /// </summary> FrameLayout topView; + /// <summary> + /// 杩炴帴鐘舵�佹彁绀� + /// </summary> + Button btnLinkStateTip; /// <summary> ///浣忓畢鍚嶇О鏄剧ず /// </summary> @@ -97,19 +105,42 @@ }; 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.MainColor, + Radius = (uint)Application.GetRealWidth(3), + }; + topView.AddChidren(btnLinkStateTip); + + btnResidenceName = new Button() + { + X = Application.GetRealWidth(26), Y = Application.GetRealHeight(32), - Width = Application.GetRealWidth(200), + Width = Application.GetRealWidth(400), Height = Application.GetRealHeight(33), - TextColor = CSS.CSS_Color.MainBackgroundColor, - TextSize = CSS.CSS_FontSize.EmphasisFontSize_FirstLevel, + TextColor = CSS_Color.MainBackgroundColor, + TextSize = CSS_FontSize.EmphasisFontSize_FirstLevel, TextAlignment = TextAlignment.CenterLeft, Text = DB_ResidenceData.residenceData.residecenInfo.Name, IsBold = true }; topView.AddChidren(btnResidenceName); + +#if DEBUG + //鎼滅储缃戝叧 + btnResidenceName.MouseUpEventHandler = (sender, e) => + { + System.Threading.Tasks.Task.Run(() => + { + DriverLayer.Control.ins.ChangeCommunicationMode(DriverLayer.CommunicationMode.local_BusUdp); + DriverLayer.Control.ins.myUdp.ReadGatewayIP(); + }); + }; +#endif environmentalView = new FrameLayout() { @@ -133,9 +164,9 @@ X = btnTempIcon.Right + Application.GetRealWidth(4), Width = Application.GetRealWidth(30), Gravity = Gravity.CenterVertical, - TextColor = CSS.CSS_Color.MainBackgroundColor, - TextSize = CSS.CSS_FontSize.PromptFontSize_FirstLevel, - Text = MainPage.cityInfo.temperature, + TextColor = CSS_Color.MainBackgroundColor, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + Text = MainPage.cityInfo.temperature + "掳", TextAlignment = TextAlignment.CenterLeft, }; environmentalView.AddChidren(btnTempValues); @@ -155,9 +186,9 @@ X = btnHumidityIcon.Right + Application.GetRealWidth(4), Width = Application.GetRealWidth(30), Gravity = Gravity.CenterVertical, - TextColor = CSS.CSS_Color.MainBackgroundColor, - TextSize = CSS.CSS_FontSize.PromptFontSize_FirstLevel, - Text = MainPage.cityInfo.humidity, + TextColor = CSS_Color.MainBackgroundColor, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + Text = MainPage.cityInfo.humidity + "%", TextAlignment = TextAlignment.CenterLeft, }; environmentalView.AddChidren(btnHumidityValues); @@ -175,10 +206,10 @@ btnPm25Values = new Button() { X = btnPm25Icon.Right + Application.GetRealWidth(4), - Width = Application.GetRealWidth(30), + Width = Application.GetRealWidth(130), Gravity = Gravity.CenterVertical, - TextColor = CSS.CSS_Color.MainBackgroundColor, - TextSize = CSS.CSS_FontSize.PromptFontSize_FirstLevel, + TextColor = CSS_Color.MainBackgroundColor, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, Text = MainPage.cityInfo.pm25, TextAlignment = TextAlignment.CenterLeft, }; @@ -198,7 +229,7 @@ var btngb = new Button() { - BackgroundColor = CSS.CSS_Color.MainColor,//0x3F4484F4,// + BackgroundColor = CSS_Color.MainColor,//0x3F4484F4, Alpha = 0.4f, }; msgView.AddChidren(btngb); @@ -221,8 +252,8 @@ X = Application.GetRealWidth(10) + btnMsgIcon.Right, Width = Application.GetRealWidth(240), Text = "鏃�", - TextColor = CSS.CSS_Color.MainBackgroundColor, - TextSize = CSS.CSS_FontSize.PromptFontSize_FirstLevel, + TextColor = CSS_Color.MainBackgroundColor, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, TextAlignment = TextAlignment.CenterLeft, }; msgView.AddChidren(btnMsg); @@ -233,7 +264,7 @@ X = Application.GetRealWidth(299), Width = Application.GetRealWidth(44), Text = "00:00", - TextSize = CSS.CSS_FontSize.PromptFontSize_FirstLevel, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, TextAlignment = TextAlignment.CenterLeft, }; msgView.AddChidren(btnMsgTime); @@ -256,9 +287,9 @@ { Width = Application.GetRealWidth(114), TextID = StringId.Functions, - SelectedTextColor = CSS.CSS_Color.MainColor, - TextColor = CSS.CSS_Color.PromptingColor1, - TextSize = CSS.CSS_FontSize.HeadlineFontSize, + SelectedTextColor = CSS_Color.MainColor, + TextColor = CSS_Color.PromptingColor1, + TextSize = CSS_FontSize.HeadlineFontSize, TextAlignment = TextAlignment.Center, IsSelected = true, IsBold = true @@ -271,7 +302,7 @@ Gravity = Gravity.CenterVertical, Width = Application.GetRealWidth(1), Height = Application.GetRealHeight(14), - BackgroundColor = CSS.CSS_Color.PromptingColor1, + BackgroundColor = CSS_Color.PromptingColor1, }; changeView.AddChidren(btnLine); @@ -280,22 +311,19 @@ X = btnLine.Right, Width = Application.GetRealWidth(114), TextID = StringId.Scenes, - SelectedTextColor = CSS.CSS_Color.MainColor, - TextColor = CSS.CSS_Color.PromptingColor1, - TextSize = CSS.CSS_FontSize.TextFontSize, + SelectedTextColor = CSS_Color.MainColor, + TextColor = CSS_Color.PromptingColor1, + TextSize = CSS_FontSize.TextFontSize, TextAlignment = TextAlignment.Center, }; changeView.AddChidren(btnChangeScene); #endregion - //bodyView.AddChidren(new Button() { Y = changeView.Bottom, Height = Application.GetRealHeight(10), BackgroundColor = 0xAAF2F3F7 }); - - #region ContextView contentView = new PageLayout() { Y = changeView.Bottom , - Height = Application.GetRealHeight(310 + 30), //20涓鸿秴鍑洪儴鍒� + Height = Application.GetRealHeight(310 + 30 + 10), //20涓鸿秴鍑洪儴鍒� }; bodyView.AddChidren(contentView); @@ -310,7 +338,6 @@ contentView.PageIndex = 0; #endregion - bodyView.AddChidren(new Button() { Y = changeView.Bottom, Height = Application.GetRealHeight(7), BackgroundColor = 0xAAF2F3F7 }); LoadEvent_ChangeShowedFunctionType(); } @@ -332,14 +359,40 @@ try { int index = 0; - foreach (var function in DB_ResidenceData.residenceData.functionList.GetAllDeviceFunctionList()) + foreach (var function in DB_ResidenceData.functionList.GetAllDeviceFunctionList()) { - if (!function.collection) - continue; - if (function.roomIdList.Count == 0)//濡備綍鍦ㄦ埧闂村凡缁忕Щ闄や簡杩欎釜鍔熻兘锛屽垯鏀惰棌鐣岄潰涔熶笉浼氬啀鏄剧ず + //闊充箰妯″潡鏈変富浠庡叧绯伙紝闇�瑕佺壒娈婂鐞� + if (function.functionCategory == FunctionCategory.Music) { - function.collection = false; - continue; + var music = function as Music.A31MusicModel; + if (music.ServerClientType == -1) + { + continue; + } + else if (music.ServerClientType == 1) + { + if (!music.MainPlayCollection) + { + continue; + } + } + else + { + if (!music.collection) + { + continue; + } + } + } + else + { + if (!function.collection) + continue; + //if (function.roomIdList.Count == 0)//濡備綍鍦ㄦ埧闂村凡缁忕Щ闄や簡杩欎釜鍔熻兘锛屽垯鏀惰棌鐣岄潰涔熶笉浼氬啀鏄剧ず + //{ + // function.collection = false; + // continue; + //} } if (index % 2 == 0) { @@ -363,6 +416,7 @@ Tag = function.sid }; rowView.AddChidren(functionView); + var btnbg = new Button() { UnSelectedImagePath = "Collection/Functionbg.png", @@ -373,6 +427,33 @@ functionViews.Add(functionView); LoadDeviceFunctionDiv(functionView, function); index++; + } + + if (index == 0) + { + var view = new FrameLayout(); + deviceFunctionView.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) @@ -393,7 +474,7 @@ try { int index = 0; - foreach (var function in DB_ResidenceData.residenceData.functionList.scenes) + foreach (var function in DB_ResidenceData.functionList.scenes) { if (!function.collection) continue; @@ -426,6 +507,33 @@ LoadSceneFunctionDiv( functionView, function); index++; + } + + if (index == 0) + { + var view = new FrameLayout(); + sceneFunctionView.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.TipNoSceneCollcetion, + }; + view.AddChidren(btnNoCollectionTip); } } catch (Exception ex) @@ -460,8 +568,8 @@ Y = Application.GetRealWidth(10) + btnIcon.Bottom, Text = function.name, IsBold = true, - TextColor = CSS.CSS_Color.FirstLevelTitleColor, - TextSize = CSS.CSS_FontSize.TextFontSize, + TextColor = CSS_Color.FirstLevelTitleColor, + TextSize = CSS_FontSize.TextFontSize, Height = Application.GetRealWidth(24), Width = Application.GetRealWidth(140), TextAlignment = TextAlignment.CenterLeft, @@ -475,10 +583,10 @@ Y = btnName.Bottom, Height = Application.GetRealWidth(18), Width = Application.GetRealWidth(113), - TextColor = CSS.CSS_Color.PromptingColor1, - TextSize = CSS.CSS_FontSize.PromptFontSize_SecondaryLevel, + TextColor = CSS_Color.PromptingColor1, + TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel, TextAlignment = TextAlignment.CenterLeft, - SelectedTextColor = CSS.CSS_Color.MainBackgroundColor, + SelectedTextColor = CSS_Color.MainBackgroundColor, Text = function.GetRoomListName() }; view.AddChidren(btnZone); @@ -490,9 +598,9 @@ Y = btnZone.Bottom, Height = Application.GetRealWidth(18), Width = Application.GetRealWidth(113), - SelectedTextColor = CSS.CSS_Color.MainBackgroundColor, + SelectedTextColor = CSS_Color.MainBackgroundColor, TextColor = 0x00000000, - TextSize = CSS.CSS_FontSize.PromptFontSize_SecondaryLevel, + TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel, TextAlignment = TextAlignment.CenterLeft, Tag = "state", Text = function.lastState @@ -542,6 +650,65 @@ LoadEvent_ControlCurtain(function as Curtain, btnCurtainClose, btnCurtainOpen); } + + else if (function.functionType == FunctionType.TV) + { + btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/TVIcon.png"; + Button btnPower; + btnPower = new Button() + { + X = Application.GetRealWidth(131), + Y = Application.GetRealHeight(86), + Width = Application.GetRealWidth(32), + Height = Application.GetRealWidth(32), + UnSelectedImagePath = "Public/PowerClose.png", + }; + view.AddChidren(btnPower); + LoadEvent_ControlTV(function as TV, btnPower); + } + + else if (function.functionCategory == FunctionCategory.Music) + { + btnIcon.UnSelectedImagePath = "FunctionIcon/Music/MusicIcon.png"; + btnIcon.SelectedImagePath = "FunctionIcon/Music/MusicOnIcon.png"; + Button btnPower; + btnPower = new Button() + { + X = Application.GetRealWidth(118), + Y = Application.GetRealWidth(83), + Width = Application.GetRealWidth(44), + Height = Application.GetRealWidth(44), + UnSelectedImagePath = "FunctionIcon/Music/MusicPlayIcon.png", + SelectedImagePath = "FunctionIcon/Music/MusicPlayOnIcon.png", + }; + view.AddChidren(btnPower); + var a31player = (function as UI.Music.A31MusicModel); + btnState.Text = a31player.A31PlayStatus.Title; + + btnState.SelectedTextColor = CSS_Color.MainBackgroundColor; + btnState.TextColor = CSS_Color.MainBackgroundColor;//PromptingColor1 + + //Music.SendMethod.ReadStatus(a31player); + + btnPower.MouseUpEventHandler = (sender, e) => { + if (btnPower.IsSelected) + { + btnPower.IsSelected = false; + Music.SendMethod.Pause(a31player); + a31player.A31PlayStatus.status = "pause"; + a31player.trait_on_off.value = "off"; + } + else + { + btnPower.IsSelected = true; + Music.SendMethod.Play(a31player); + a31player.A31PlayStatus.status = "play"; + a31player.trait_on_off.value = "on"; + } + UpdataFunctionStates(a31player); + }; + } + else { Button btnSwitch; @@ -582,6 +749,24 @@ break; } break; + case FunctionCategory.SwitchDevice: + switch (function.functionType) + { + case FunctionType.Socket: + btnIcon.UnSelectedImagePath = "FunctionIcon/Socket/SocketIcon.png"; + btnIcon.SelectedImagePath = "FunctionIcon/Socket/SocketOnIcon.png"; + break; + } + break; + case FunctionCategory.Electrical: + switch (function.functionType) + { + case FunctionType.Fan: + btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/FanIcon.png"; + btnIcon.SelectedImagePath = "FunctionIcon/Electrical/FanOnIcon.png"; + break; + } + break; } LoadEvent_SwitchFunction(function, btnSwitch); } @@ -590,14 +775,17 @@ btnName.MouseUpEventHandler = skipControlPageEvent; btnIcon.MouseUpEventHandler = skipControlPageEvent; btnState.MouseUpEventHandler = skipControlPageEvent; - UpdataFunctionStates(function); + //鐢佃涓嶉渶瑕佹洿鏂扮姸鎬� + if(function.functionType!= FunctionType.TV) + { + UpdataFunctionStates(function); + } } catch (Exception ex) { MainPage.Log("homepage LoadControlView error : " + ex.Message); } } - /// <summary> /// 鍔犺浇鍦烘櫙鎺у埗鍗$墖 @@ -606,6 +794,24 @@ { try { + Button btnCoverd = new Button() + { + UnSelectedImagePath = "Collection/SceneCovered.png", + }; + view.AddChidren(btnCoverd); + + Button btnSettingIcon; + btnSettingIcon = new Button() + { + X = Application.GetRealWidth(4), + Y = Application.GetRealWidth(4), + Height = Application.GetRealWidth(32), + Width = Application.GetRealWidth(32), + //UnSelectedImagePath = "FunctionIcon/Scene/DelayIcon.png", + UnSelectedImagePath = "Public/FuncInfoSetIcon_white.png", + }; + view.AddChidren(btnSettingIcon); + Button btnName; btnName = new Button() { @@ -627,30 +833,14 @@ Y = btnName.Bottom, Height = Application.GetRealWidth(18), Width = Application.GetRealWidth(113), - TextColor = CSS.CSS_Color.MainBackgroundColor, - TextSize = CSS.CSS_FontSize.PromptFontSize_SecondaryLevel, + TextColor = CSS_Color.MainBackgroundColor, + TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel, TextAlignment = TextAlignment.CenterLeft, - SelectedTextColor = CSS.CSS_Color.MainBackgroundColor, + SelectedTextColor = CSS_Color.MainBackgroundColor, Text = function.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() @@ -665,8 +855,22 @@ view.AddChidren(btnCollection); LoadEvent_FunctionCollection(btnCollection, function, false); - LoadEvent_ControlScene(btnCoverd, function); + LoadEvent_ControlScene(btnCoverd,btnName,btnZone, function); + btnSettingIcon.MouseUpEventHandler = (sender, e) => { + Action backAction = () => { + //LoadSceneFunctionControlZone(); + }; + Action refreshAction = () => { + btnName.Text = function.name; + btnZone.Text = function.GetRoomListName(); + view.BackgroundImagePath = (function as Scene).ImagePath; + }; + var aep = new SceneEditPage(function as Scene, backAction); + MainPage.BasePageView.AddChidren(aep); + aep.LoadPage(StringId.EditScene, refreshAction); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; } catch (Exception ex) { -- Gitblit v1.8.0