From 8c28c3f43f91510e3a99189243c17717bdee1a0e Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期四, 20 七月 2023 08:58:04 +0800 Subject: [PATCH] 群控功能迭代 --- HDL_ON/Entity/Function/Scene.cs | 4 HDL_ON/UI/UI2/1-HomePage/HomePage.cs | 294 ++++++++++++++++++++------ HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/groupControl_blue.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/groupControl_blue.png | 0 HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs | 17 + HDL-ON_iOS/HDL-ON_iOS.csproj | 4 HDL-ON_Android/HDL-ON_Android.csproj | 2 HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs | 100 ++++++++ HDL_ON/Entity/Function/Function.cs | 31 ++ HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs | 1 HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/AddGroupControlPage.cs | 6 HDL_ON/UI/UI2/FuntionControlView/Light/GroupControlPage_V2.cs | 10 HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/groupControl_white.png | 0 HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs | 42 ++- HDL_ON/UI/MainPage.cs | 90 ++++--- HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/groupControl_white.png | 0 HDL_ON/UI/UI1-Login/LoginPage.cs | 1 17 files changed, 450 insertions(+), 152 deletions(-) diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/GroupControl_blue.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/groupControl_blue.png similarity index 100% rename from HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/GroupControl_blue.png rename to HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/groupControl_blue.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/GroupControl_white.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/groupControl_white.png similarity index 100% rename from HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/GroupControl_white.png rename to HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/groupControl_white.png Binary files differ diff --git a/HDL-ON_Android/HDL-ON_Android.csproj b/HDL-ON_Android/HDL-ON_Android.csproj index 048f6fb..f619aa0 100644 --- a/HDL-ON_Android/HDL-ON_Android.csproj +++ b/HDL-ON_Android/HDL-ON_Android.csproj @@ -400,7 +400,7 @@ <AndroidAsset Include="Assets\Phone\FunctionIcon\DoorLock\VideoDoorLockOpen1.png" /> <AndroidAsset Include="Assets\Phone\LogicIcon\selectlocation.png" /> <AndroidAsset Include="Assets\Phone\FunctionIcon\Light\ColorfulBar.png" /> - <AndroidAsset Include="Assets\Phone\FunctionIcon\Icon\HomeIcon\GroupControl_blue.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Icon\HomeIcon\groupControl_blue.png" /> <AndroidAsset Include="Assets\Phone\FunctionIcon\Icon\HomeIcon\GroupControl_white.png" /> <AndroidAsset Include="Assets\h5\index.html" /> <AndroidAsset Include="Assets\h5\static\index.63b34199.css" /> diff --git a/HDL-ON_iOS/HDL-ON_iOS.csproj b/HDL-ON_iOS/HDL-ON_iOS.csproj index 69c4f82..e2c88cf 100644 --- a/HDL-ON_iOS/HDL-ON_iOS.csproj +++ b/HDL-ON_iOS/HDL-ON_iOS.csproj @@ -1560,8 +1560,8 @@ <BundleResource Include="Resources\Phone\FunctionIcon\DoorLock\VideoDoorlockClose1.png" /> <BundleResource Include="Resources\Phone\FunctionIcon\DoorLock\VideoDoorLockOpen1.png" /> <BundleResource Include="Resources\Phone\FunctionIcon\Light\ColorfulBar.png" /> - <BundleResource Include="Resources\Phone\FunctionIcon\Icon\HomeIcon\GroupControl_blue.png" /> - <BundleResource Include="Resources\Phone\FunctionIcon\Icon\HomeIcon\GroupControl_white.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Icon\HomeIcon\groupControl_blue.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Icon\HomeIcon\groupControl_white.png" /> <BundleResource Include="Resources\h5\index.html" /> <BundleResource Include="Resources\h5\static\index.63b34199.css" /> <BundleResource Include="Resources\h5\static\images\coal-save-ic.png" /> diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/GroupControl_blue.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/groupControl_blue.png similarity index 100% rename from HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/GroupControl_blue.png rename to HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/groupControl_blue.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/GroupControl_white.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/groupControl_white.png similarity index 100% rename from HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/GroupControl_white.png rename to HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/groupControl_white.png Binary files differ diff --git a/HDL_ON/Entity/Function/Function.cs b/HDL_ON/Entity/Function/Function.cs index 8b52231..8f4f3c3 100644 --- a/HDL_ON/Entity/Function/Function.cs +++ b/HDL_ON/Entity/Function/Function.cs @@ -100,7 +100,7 @@ /// <returns></returns> public FunctionAttributes GetAttribute(string key) { - var attr = attributes.Find((a) => a.key == key); + var attr = GetFunctionAttributes().Find((a) => a.key == key); return attr; } @@ -799,11 +799,36 @@ public SceneFunction ConvertSceneFunction() { var sFunc = new SceneFunction(); - if(spk == SPK.GroupControl) + + var list = new List<FunctionAttributes>(); + if (spk == SPK.GroupControl) { + var gc = FunctionList.List.groupControls.Find((obj) => obj.sid == sid); + if (gc != null) + { + foreach (var temp in gc.sids) + { + var light = FunctionList.List.GetLightList().Find((obj) => obj.sid == temp.sid); + if (light != null) + { + foreach (var attr in light.attributes) + { + if (list.Find((obj) => obj.key == attr.key) == null) + { + list.Add(attr); + } + } + } + } + } } - foreach (var attr in attributes) + else + { + list.AddRange(attributes); + } + + foreach (var attr in list) { //绐楀笜鍚屾椂鍙戦�佸紑鍏宠窡鐧惧垎姣斾細鏈夐棶棰橈紝 if(spk == SPK.CurtainRoller || spk == SPK.CurtainTrietex || spk == SPK.CurtainDream) diff --git a/HDL_ON/Entity/Function/Scene.cs b/HDL_ON/Entity/Function/Scene.cs index 1e6d11d..fdf195b 100644 --- a/HDL_ON/Entity/Function/Scene.cs +++ b/HDL_ON/Entity/Function/Scene.cs @@ -560,6 +560,10 @@ private Function ConvertFunctionObject() { var localFunction = FunctionList.List.GetDeviceFunctionList().Find((obj) => obj.sid == sid); + if(localFunction == null) + { + localFunction = FunctionList.List.groupControls.Find((obj) => obj.sid == sid); + } return localFunction; } diff --git a/HDL_ON/UI/MainPage.cs b/HDL_ON/UI/MainPage.cs index e71ce0f..9ba4beb 100644 --- a/HDL_ON/UI/MainPage.cs +++ b/HDL_ON/UI/MainPage.cs @@ -530,72 +530,82 @@ public static int LoadEvent_BackAction() { int result = 0; + Application.RunOnMainThread(() => { - if (Inverter.Ins.H5Page.Parent != null) + try { - if (Inverter.Ins.PageIndex != "1") + if (Inverter.Ins.H5Page.Parent != null) { - Inverter.Ins.PageIndex = "1"; - var status = new Dictionary<string, object> { ["method"] = "backPrePage", ["data"] = "" }; - Inverter.Ins.H5Page.CallJS($"nativeToJs(\'{Newtonsoft.Json.JsonConvert.SerializeObject(status)}\')"); - StartX = 0; - BtnBackIcon.X = -Application.GetRealWidth(100); - return; - } - else - { - Inverter.Ins.PageIndex = "1"; - } - } - - - if (BasePageView == null || BasePageView.ChildrenCount <= 1) - { - result = 2;//鏃犳硶鍐嶅悗閫�锛屽彲浠ユ墽琛岄��鍒版闈� - } - if (BasePageView.ChildrenCount > 1) - { - int index = BasePageView.ChildrenCount - 1; - var view = BasePageView.GetChildren(index); - if (view.GetType() == typeof(Loading)) - { - var loading = view as Loading; - if (loading.CurStatus == false)//鏈変竴浜涚瓑寰呯晫闈㈤殣钘忎簡锛屼絾鏄病鏈夌Щ闄ゅ埌锛岄渶瑕佸厛绉婚櫎 + if (Inverter.Ins.PageIndex != "1") { - loading.RemoveFromParent(); - result = LoadEvent_BackAction(); + Inverter.Ins.PageIndex = "1"; + var status = new Dictionary<string, object> { ["method"] = "backPrePage", ["data"] = "" }; + Inverter.Ins.H5Page.CallJS($"nativeToJs(\'{Newtonsoft.Json.JsonConvert.SerializeObject(status)}\')"); + StartX = 0; + BtnBackIcon.X = -Application.GetRealWidth(100); + return; } else { - result = 1;//姝e湪绛夊緟鏌愪簺鎿嶄綔 + Inverter.Ins.PageIndex = "1"; } + } + + + if (BasePageView == null || BasePageView.ChildrenCount <= 1) + { + result = 2;//鏃犳硶鍐嶅悗閫�锛屽彲浠ユ墽琛岄��鍒版闈� } else { - if (view != null) + if (BasePageView.ChildrenCount > 1) { - if (view.Tag != null) + int index = BasePageView.ChildrenCount - 1; + var view = BasePageView.GetChildren(index); + if (view.GetType() == typeof(Loading)) { - if (view.Tag.ToString() != "unlockpage") + var loading = view as Loading; + if (loading.CurStatus == false)//鏈変竴浜涚瓑寰呯晫闈㈤殣钘忎簡锛屼絾鏄病鏈夌Щ闄ゅ埌锛岄渶瑕佸厛绉婚櫎 { - view.RemoveFromParent(); + loading.RemoveFromParent(); + result = LoadEvent_BackAction(); } else { - result = 2; + result = 1;//姝e湪绛夊緟鏌愪簺鎿嶄綔 } } else { - view.RemoveFromParent(); + if (view != null) + { + if (view.Tag != null) + { + if (view.Tag.ToString() != "unlockpage") + { + view.RemoveFromParent(); + } + else + { + result = 2; + } + } + else + { + view.RemoveFromParent(); + } + } } } + else + { + result = 2;//鏃犳硶鍐嶅悗閫�锛屽彲浠ユ墽琛岄��鍒版闈� + } } - } - else + }catch(Exception ex) { - result = 2;//鏃犳硶鍐嶅悗閫�锛屽彲浠ユ墽琛岄��鍒版闈� + MainPage.Log($"鍔犺浇瀹夊崜鍚庨��寮傚父:{ex.Message}"); } }); return result; diff --git a/HDL_ON/UI/UI1-Login/LoginPage.cs b/HDL_ON/UI/UI1-Login/LoginPage.cs index a2afca1..1200b13 100644 --- a/HDL_ON/UI/UI1-Login/LoginPage.cs +++ b/HDL_ON/UI/UI1-Login/LoginPage.cs @@ -931,6 +931,7 @@ { name = "缇ゆ帶娴嬭瘯", collect = true, + sid = "234567876545678765", uids = new List<string>() { "1405771024583090178", diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs index 49647e1..a7fd938 100644 --- a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs +++ b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs @@ -80,6 +80,10 @@ /// </summary> Button btnChangeScene; /// <summary> + /// 鍒囨崲鏄剧ず鍦虹粍鎺ф寜閽� + /// </summary> + Button btnChangeGroupControl; + /// <summary> /// 鍔熻兘鏄剧ず鍖哄煙 /// </summary> PageLayout contentView; @@ -92,6 +96,10 @@ /// </summary> VerticalScrolViewLayout sceneFunctionView; /// <summary> + /// 缁勬帶鎺у埗鍖哄煙 + /// </summary> + VerticalScrolViewLayout gcFunctionView; + /// <summary> /// 鍔熻兘鍖哄煙闆嗗悎 /// </summary> List<FrameLayout> functionViews; @@ -100,8 +108,11 @@ #region 鍖哄煙鍙橀噺 /// <summary> /// 褰撳墠鏄剧ず瀵规帶鍒剁被鍨嬫槸鍚︽槸璁惧鍔熻兘鎺у埗 + /// 0 鍔熻兘 + /// 1 鍦烘櫙 + /// 2 缇ゆ帶 /// </summary> - bool CurShowTypeIsFunction = true; + int CurShowTypeContent = 0; #endregion #region 鎶ヨ淇℃伅 @@ -149,10 +160,7 @@ bodyView.EndHeaderRefreshing(); Common.ApiUtlis.Ins.DownloadData(); LoadContentView(); - if (!CurShowTypeIsFunction) - { - contentView.PageIndex = 1; - } + contentView.PageIndex = CurShowTypeContent; }; topView = new FrameLayout() { @@ -172,10 +180,7 @@ refreshLayout.EndHeaderRefreshing(); Common.ApiUtlis.Ins.DownloadData(); LoadContentView(); - if(!CurShowTypeIsFunction) - { - contentView.PageIndex = 1; - } + contentView.PageIndex = CurShowTypeContent; }; topView = new FrameLayout() { @@ -565,51 +570,124 @@ bodyView.AddChidren(new Button() { Height = Application.GetRealHeight(20), BackgroundColor = 0x00000000 }); - changeView = new FrameLayout() + if (DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl) { - //Y = Application.GetRealHeight(20) + topView.Bottom, - Gravity = Gravity.CenterHorizontal, - Width = Application.GetRealWidth(230), - Height = Application.GetRealHeight(62), - BackgroundImagePath = "Collection/ChangeViewbg.png", - }; - bodyView.AddChidren(changeView); + changeView = new FrameLayout() + { + //Y = Application.GetRealHeight(20) + topView.Bottom, + Gravity = Gravity.CenterHorizontal, + Width = Application.GetRealWidth(334), + Height = Application.GetRealHeight(62), + BackgroundImagePath = "Collection/ChangeViewbg.png", + }; + bodyView.AddChidren(changeView); - 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); + 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); + 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); - btnChangeScene = new Button() + 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); + + Button btnLine2 = new Button() + { + X = btnChangeScene.Right, + Gravity = Gravity.CenterVertical, + Width = Application.GetRealWidth(1), + Height = Application.GetRealHeight(14), + BackgroundColor = CSS_Color.PromptingColor1, + }; + changeView.AddChidren(btnLine2); + + btnChangeGroupControl = new Button() + { + 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); + } + else { - 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); + changeView = new FrameLayout() + { + //Y = Application.GetRealHeight(20) + topView.Bottom, + Gravity = Gravity.CenterHorizontal, + Width = Application.GetRealWidth(230), + Height = Application.GetRealHeight(62), + BackgroundImagePath = "Collection/ChangeViewbg.png", + }; + bodyView.AddChidren(changeView); + + 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); + + 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); + } #endregion #region ContextView @@ -667,12 +745,12 @@ sceneFunctionView = new VerticalScrolViewLayout(); contentView.AddChidren(sceneFunctionView); LoadSceneFunctionControlZone(); - if (CurShowTypeIsFunction) + contentView.PageIndex = CurShowTypeContent; + if (DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl) { - contentView.PageIndex = 0; - }else - { - contentView.PageIndex = 1; + gcFunctionView = new VerticalScrolViewLayout(); + contentView.AddChidren(gcFunctionView); + LoadGroupControlFunctionControlZone(); } LoadEvent_ChangeShowedFunctionType(); @@ -704,15 +782,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(); @@ -730,7 +806,7 @@ /// </summary> void LoadDeviceFunctionControlZone() { -#region ContextView + #region ContextView deviceFunctionView.RemoveAll(); functionViews.Clear(); var rowView = new FrameLayout(); @@ -739,7 +815,7 @@ int index = 0; var list = new List<Function>(); list.AddRange(FunctionList.List.GetDeviceFunctionList()); - list.AddRange(FunctionList.List.groupControls);//鍔犲叆缇ゆ帶 + //list.AddRange(FunctionList.List.groupControls);//鍔犲叆缇ゆ帶 foreach (var function in list) { //闊充箰妯″潡鏈変富浠庡叧绯伙紝闇�瑕佺壒娈婂鐞� @@ -832,9 +908,94 @@ MainPage.Log("homepage error : " + ex.Message); } deviceFunctionView.AddChidren(new Button { Height = Application.GetRealHeight(30) }); -#endregion - + #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(); + 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) + { + MainPage.Log("homepage error : " + ex.Message); + } + gcFunctionView.AddChidren(new Button { Height = Application.GetRealHeight(30) }); + #endregion + } + /// <summary> /// 鍔犺浇鍦烘櫙鍔熻兘鏄剧ず鍖哄煙 /// </summary> @@ -1060,7 +1221,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) //{ diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs b/HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs index fbadb7f..7fc68a1 100644 --- a/HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs +++ b/HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs @@ -334,16 +334,9 @@ btnChangeScene.TextSize = CSS.CSS_FontSize.TextFontSize; btnChangeScene.IsSelected = false; btnChangeScene.IsBold = false; - CurShowTypeIsFunction = true; + CurShowTypeContent = 0; contentView.PageIndex = 0; }; - - //var client = new BlufiClient(); - //client.PostPackageLengthLimit = 128; - //client.RequestDeviceScan(); - //client.RequestDeviceStatus(); - //client.BlufiDelegate.Blufi_DidReceiveDeviceScanResponse(); - btnChangeScene.MouseUpEventHandler = (sender, e) => { @@ -353,7 +346,7 @@ btnChangeFunction.TextSize = CSS.CSS_FontSize.TextFontSize; btnChangeFunction.IsSelected = false; btnChangeFunction.IsBold = false; - CurShowTypeIsFunction = false; + CurShowTypeContent = 1; contentView.PageIndex = 1; }; @@ -368,7 +361,7 @@ btnChangeScene.IsSelected = false; btnChangeScene.IsBold = false; } - else + else if (contentView.PageIndex == 1) { btnChangeScene.IsSelected = true; btnChangeScene.TextSize = CSS.CSS_FontSize.HeadlineFontSize; @@ -378,6 +371,93 @@ btnChangeFunction.IsBold = false; } }; + + if (DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl) + { + 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; + }; + + 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; + + 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; + + 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; + } + }; + + } } /// <summary> diff --git a/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs b/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs index 5f3b656..31d59cd 100644 --- a/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs +++ b/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs @@ -446,6 +446,7 @@ }; if ( !SPK.ArmSensorSpkList().Contains(function.spk) && function.spk != SPK.DoorLock + && function.spk != SPK.GroupControl && !SPK.EnvironDeviceSpkList().Contains( function.spk))//!DB_ResidenceData.Instance.CurrentRegion.isOtherShare && { bodyDiv.AddChidren(btnCollectionIcon); diff --git a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs index a85c1ea..74a8d34 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs @@ -485,11 +485,18 @@ scene.functions.Remove(scenefunction); continue; } - //灏唖pk瀹炰綋閲岄潰鐨刴in max鍊兼斁鍏ュ満鏅姛鑳藉疄浣撻噷锛岃涓嶇劧鏁版嵁浼氫涪澶� 2022-06-21 16:06:45 - foreach (var tt in scenefunction.status) { - tt.min = scenefunction.localFunction.GetAttribute(tt.key).min; - tt.max = scenefunction.localFunction.GetAttribute(tt.key).max; - tt.valueList = scenefunction.localFunction.GetAttribute(tt.key).value; + try + { + //灏唖pk瀹炰綋閲岄潰鐨刴in max鍊兼斁鍏ュ満鏅姛鑳藉疄浣撻噷锛岃涓嶇劧鏁版嵁浼氫涪澶� 2022-06-21 16:06:45 + foreach (var tt in scenefunction.status) + { + tt.min = scenefunction.localFunction.GetAttribute(tt.key).min; + tt.max = scenefunction.localFunction.GetAttribute(tt.key).max; + tt.valueList = scenefunction.localFunction.GetAttribute(tt.key).value; + } + }catch(Exception ex) + { + MainPage.Log($"鍦烘櫙鍔犺浇鍔熻兘鍒楄〃寮傚父:{ex.Message}"); } i++; diff --git a/HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs b/HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs index 670beb1..3593598 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs @@ -1903,7 +1903,7 @@ } LoadFunctionRow(onOffStatus); - if (sceneFunction.localFunction.spk == SPK.LightRGB) + if (sceneFunction.localFunction.spk == SPK.LightRGB || sceneFunction.localFunction.spk == SPK.GroupControl) { var colorfulStatus = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Colorful); if (colorfulStatus != null) @@ -1982,30 +1982,32 @@ btnConfrim.MouseUpEventHandler = (sender, e) => { - if (isOnStatus) + if (sceneFunction.localFunction.spk == SPK.GroupControl) { } + else { - if (isColorful) + if (isOnStatus) { - sceneFunction.status.Clear(); - sceneFunction.status.Add(new SceneFunctionStatus() { key = FunctionAttributeKey.OnOff, value = "on" }); - sceneFunction.status.Add(new SceneFunctionStatus() { key = FunctionAttributeKey.Colorful, value = "on" }); + if (isColorful) + { + sceneFunction.status.Clear(); + sceneFunction.status.Add(new SceneFunctionStatus() { key = FunctionAttributeKey.OnOff, value = "on" }); + sceneFunction.status.Add(new SceneFunctionStatus() { key = FunctionAttributeKey.Colorful, value = "on" }); + } + else + { + var isHasColorful = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Colorful); + if (isHasColorful != null) + { + sceneFunction.status.Remove(isHasColorful); + } + } } else { - var isHasColorful = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Colorful); - if (isHasColorful != null) - { - sceneFunction.status.Remove(isHasColorful); - } + sceneFunction.status.Clear(); + sceneFunction.status.Add(new SceneFunctionStatus() { key = FunctionAttributeKey.OnOff, value = "off" }); } } - else - { - if (isColorful) { } else { } - sceneFunction.status.Clear(); - sceneFunction.status.Add(new SceneFunctionStatus() { key = FunctionAttributeKey.OnOff, value = "off" }); - } - var temp = scene.functions.Find((obj) => obj.sid == sceneFunction.sid); if (temp != null) @@ -2051,7 +2053,7 @@ void UpdataFunctionRow() { - for(var i =0;i< functionRowList.Count; i++) + for (var i =0;i< functionRowList.Count; i++) { try { @@ -2066,7 +2068,7 @@ { if (view.Tag.ToString() != FunctionAttributeKey.OnOff) { - if (isColorful) + if (isColorful && sceneFunction.localFunction.spk == SPK.LightRGB) { if(view.Tag.ToString() != FunctionAttributeKey.Colorful) { diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/AddGroupControlPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/AddGroupControlPage.cs index 4a6070a..3d6cb2f 100644 --- a/HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/AddGroupControlPage.cs +++ b/HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/AddGroupControlPage.cs @@ -549,6 +549,12 @@ var groupControlTypes = Newtonsoft.Json.JsonConvert.DeserializeObject<List<GroupControlType>>(pack.Data.ToString()); if (groupControlTypes != null && groupControlTypes.Count > 0) { + //groupControlType = new GroupControlType { + // type = "LIGHT", + // typeName ="鐏厜鎺у埗", + // spks = new List<string> { "light.switch" }, + // spkAttrs = new List<string> { "on_off" } + //}; groupControlType = groupControlTypes[0]; Application.RunOnMainThread(() => { LoadLightRow(lightList); diff --git a/HDL_ON/UI/UI2/FuntionControlView/Light/GroupControlPage_V2.cs b/HDL_ON/UI/UI2/FuntionControlView/Light/GroupControlPage_V2.cs index 029d47a..5ecba87 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Light/GroupControlPage_V2.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Light/GroupControlPage_V2.cs @@ -84,11 +84,11 @@ UnSelectedImagePath = "Collection/CollectionGrayIcon.png", IsSelected = function.collect }; - controlView.AddChidren(btnCollection); - btnCollection.MouseUpEventHandler += (sender, e) => { - btnCollection.IsSelected = function.collect = btnCollection_Out.IsSelected = !btnCollection.IsSelected; - function.CollectFunction(); - }; + //controlView.AddChidren(btnCollection); + //btnCollection.MouseUpEventHandler += (sender, e) => { + // btnCollection.IsSelected = function.collect = btnCollection_Out.IsSelected = !btnCollection.IsSelected; + // function.CollectFunction(); + //}; -- Gitblit v1.8.0