From eb76239882830f3960b8800bb0f2c90ca7b3f378 Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期四, 04 八月 2022 09:19:10 +0800 Subject: [PATCH] Merge branch 'release0123' --- HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/Iot_BrandFunctionListPage.cs | 333 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 333 insertions(+), 0 deletions(-) diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/Iot_BrandFunctionListPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/Iot_BrandFunctionListPage.cs new file mode 100644 index 0000000..56c39d1 --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/Iot_BrandFunctionListPage.cs @@ -0,0 +1,333 @@ +锘縰sing System; +using System.Collections.Generic; +using HDL_ON.DAL.Server; +using HDL_ON.Entity; +using HDL_ON.UI.CSS; +using Shared; +namespace HDL_ON.UI +{ + public class Iot_BrandFunctionListPage :FrameLayout + { + FrameLayout bodyView; + + FrameLayout contentView; + + + + IntegratedBrand_Iot brand_Iot; + /// <summary> + /// 瑙g粦鍥炶皟 + /// </summary> + public Action unboundAction; + + public Iot_BrandFunctionListPage(IntegratedBrand_Iot brand_Iot) + { + bodyView = this; + this.brand_Iot = brand_Iot; + } + + public void LoadPage() + { + Action action = () => { + var page = new iot_BindTipPage(); + MainPage.BasePageView.AddChidren(page); + page.unboundAction = () => { + this.RemoveFromParent(); + unboundAction?.Invoke(); + }; + page.LoadPage(brand_Iot); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + new TopViewDiv(bodyView, brand_Iot.brandName).LoadTopView_3tyIot(action); + + bodyView.BackgroundColor = CSS_Color.MainBackgroundColor; + + + bodyView.AddChidren(new Button + { + Y = Application.GetRealHeight(64), + Height = Application.GetRealHeight(1), + BackgroundColor = CSS_Color.DividingLineColor, + }); + + Button btnTipText = new Button() + { + Y = Application.GetRealHeight(80), + Width = Application.GetRealWidth(347), + Height = Application.GetRealHeight(65), + Gravity = Gravity.CenterHorizontal, + Radius = (uint)Application.GetRealWidth(5), + BackgroundColor = 0x194484F4, + TextColor = CSS_Color.FirstLevelTitleColor, + Padding = new Padding(12, Application.GetRealWidth(16), 12, Application.GetRealWidth(16)), + TextSize = CSS_FontSize.TextFontSize, + Text = "榛樿灏嗙涓夋柟鍝佺墝鐨勮澶囧叏閮ㄥ叧鑱斿埌On Pro涓�,鎮ㄤ篃鍙互閫氳繃涓嬫柟鐨勫紑鍏虫寜閿紝杩涜閫夋嫨鎬у叧鑱斻��", + IsMoreLines = true, + TextAlignment = TextAlignment.CenterLeft, + }; + bodyView.AddChidren(btnTipText); + + contentView = new FrameLayout() + { + Y = Application.GetRealHeight(150), + Height = Application.GetRealHeight(573), + }; + bodyView.AddChidren(contentView); + + + var waitPage = new Loading(); + contentView.AddChidren(waitPage); + waitPage.Start(""); + new System.Threading.Thread(() => + { + try + { + var pack = http.Get3tyIotDeviceFunctionList(brand_Iot.companyId); + if (pack != null) + { + if (pack.Code == StateCode.SUCCESS) + { + var list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Function>>(pack.Data.ToString()); + Application.RunOnMainThread(() => + { + LoadDeviceFunctionControlZone(list); + }); + } + } + } + catch { } + finally + { + Application.RunOnMainThread(() => { + waitPage.Hide(); + waitPage.RemoveFromParent(); + }); + } + }) { IsBackground = true }.Start(); + + } + + + /// <summary> + /// 鍔犺浇璁惧鍔熻兘鏄剧ず鍖哄煙 + /// </summary> + void LoadDeviceFunctionControlZone(List<Function> list) + { + contentView.RemoveAll(); + + if (list.Count == 0) + { + NotListTipView(); + return; + } + + VerticalScrolViewLayout deviceFunctionView = new VerticalScrolViewLayout(); + contentView.AddChidren(deviceFunctionView); + + #region ContextView + var rowView = new FrameLayout(); + try + { + int index = 0; + + foreach (var function in list) + { + if(function.homeId != DB_ResidenceData.Instance.CurrentRegion.id && function.homeId != "0") + { + continue; + } + + if (index % 2 == 0) + { + rowView = new FrameLayout() + { + Height = Application.GetRealWidth(140), + }; + deviceFunctionView.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); + + var btnbg = new Button() + { + UnSelectedImagePath = "Collection/Functionbg.png", + SelectedImagePath = "Collection/FunctionOnbg.png", + Tag = function.sid + }; + functionView.AddChidren(btnbg); + LoadDeviceFunctionDiv(functionView, function,btnbg); + index++; + + + } + + if (index == 0) + { + var view = new FrameLayout(); + deviceFunctionView.AddChidren(view); + + var btnNoCollectionTip = new Button() + { + Height = Application.GetRealHeight(42), + Y = Application.GetRealHeight(100), + TextAlignment = TextAlignment.Center, + TextColor = CSS_Color.PromptingColor1, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + Text = "娌℃湁浠讳綍璁惧" + }; + view.AddChidren(btnNoCollectionTip); + } + } + catch (Exception ex) + { + } + deviceFunctionView.AddChidren(new Button { Height = Application.GetRealHeight(30) }); + #endregion + + } + + + /// <summary> + /// 鍔犺浇鍔熻兘鎺у埗鍗$墖 + /// </summary> + void LoadDeviceFunctionDiv(FrameLayout view, Function function,Button btnBg) + { + try + { + Button btnIcon; + btnIcon = new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealHeight(24), + Width = Application.GetMinRealAverage(54), + Height = Application.GetMinRealAverage(54), + }; + 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() + { + Y = btnIcon.Bottom, + Text = function.name, + IsBold = true, + TextColor = CSS_Color.FirstLevelTitleColor, + SelectedTextColor = CSS_Color.MainBackgroundColor, + TextSize = CSS_FontSize.TextFontSize, + Height = Application.GetRealWidth(24), + TextAlignment = TextAlignment.Center, + }; + view.AddChidren(btnName); + + + Button btnClick = new Button(); + view.AddChidren(btnClick); + btnClick.MouseUpEventHandler = (sender, e) => { + function.collect = !function.collect; + if (function.collect) + { + var pack = http.Set3tyIotFunctionToHouse(function.deviceId, DB_ResidenceData.Instance.CurrentRegion.id,brand_Iot.companyId); + if (pack != null) + { + if(pack.Code == StateCode.SUCCESS) + { + btnName.IsSelected = btnIcon.IsSelected = btnBg.IsSelected = true; + } + } + } + else + { + btnName.IsSelected = btnIcon.IsSelected = btnBg.IsSelected = false; + var pack = http.Set3tyIotFunctionToHouse(function.deviceId, "0", brand_Iot.companyId); + if (pack != null) + { + if (pack.Code == StateCode.SUCCESS) + { + btnName.IsSelected = btnIcon.IsSelected = btnBg.IsSelected = false; + } + } + } + + }; + + } + catch (Exception ex) + { + MainPage.Log("homepage LoadControlView error : " + ex.Message); + } + } + + + void NotListTipView() + { + contentView.RemoveAll(); + var btnTip = new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealHeight(88), + Width = Application.GetRealWidth(180), + Height = Application.GetRealWidth(180), + UnSelectedImagePath = "TipNot.png", + }; + contentView.AddChidren(btnTip); + + var btnTipText = new Button() + { + Y = Application.GetRealHeight(252), + Height = Application.GetRealHeight(52), + TextSize = CSS_FontSize.TextFontSize, + TextColor = CSS_Color.FirstLevelTitleColor, + TextAlignment = TextAlignment.Center, + TextID = StringId.TipNotThirdPartyDevice, + }; + contentView.AddChidren(btnTipText); + + var btnAdd = new Button() + { + Y = Application.GetRealHeight(400), + Gravity = Gravity.CenterHorizontal, + Width = Application.GetRealWidth(220), + Height = Application.GetRealWidth(44), + BackgroundColor = CSS_Color.MainColor, + TextAlignment = TextAlignment.Center, + TextColor = CSS_Color.MainBackgroundColor, + TextSize = CSS_FontSize.SubheadingFontSize, + IsBold = true, + Radius = (uint)Application.GetRealWidth(22), + BorderColor = 0x00000000, + BorderWidth = 0, + Text = "鏌ョ湅璁惧鏀寔鑼冨洿" + }; + contentView.AddChidren(btnAdd); + btnAdd.MouseUpEventHandler = (sender, e) => + { + //var page = new AddThirdPartyBrandListpage(brandList); + //MainPage.BasePageView.AddChidren(page); + //page.LoadPage(); + //MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + + + + } + + + HttpServerRequest http = new HttpServerRequest(); + + + } +} -- Gitblit v1.8.0