From 9ab5bd54fadd8fc9c542b48c99a117a4e182669b Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期四, 14 十月 2021 16:37:56 +0800 Subject: [PATCH] 智能空开能源界面数据更新 --- HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs | 210 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 210 insertions(+), 0 deletions(-) diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs new file mode 100644 index 0000000..f6824e8 --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs @@ -0,0 +1,210 @@ +锘縰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 DeviceListPage : FrameLayout + { + FrameLayout bodyView; + VerticalRefreshLayout contentView; + + IntegratedBrand brand; + public DeviceListPage(IntegratedBrand integratedBrand) + { + bodyView = this; + brand = integratedBrand; + } + + + public void LoadPage() + { + Action<string, string> action = (s, a) => + { + var page = new AddDevciePage(brand); + MainPage.BasePageView.AddChidren(page); + page.LoadPage(contentView); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + new TopViewDiv(bodyView, Language.StringByID(StringId.Devices)).LoadTopView_AddIcon("3ty", action); + bodyView.BackgroundColor = CSS_Color.BackgroundColor; + + contentView = new VerticalRefreshLayout() + { + Y = Application.GetRealHeight(64), + Height = Application.GetRealHeight(667 - 64), + VerticalScrollBarEnabled = false, + }; + bodyView.AddChidren(contentView); + + Load3tyBrandDeviceList(); + + contentView.BeginHeaderRefreshingAction = () => + { + contentView.EndHeaderRefreshing(); + Load3tyBrandDeviceList(); + }; + + //contentView.BeginHeaderRefreshing(); + } + + void Load3tyBrandDeviceList() + { + var waitPage = new Loading(); + waitPage.Start(); + new System.Threading.Thread(() => { + try + { + var pm = new HttpServerRequest(); + var pack = pm.Get3TyBrandBindDeviceList(brand.productPlatform, brand.productBrand); + if (pack.Code == DAL.Server.StateCode.SUCCESS) + { + var revData = Newtonsoft.Json.JsonConvert.DeserializeObject<Function3tyBrandObj>(pack.Data.ToString()); + + Application.RunOnMainThread(() => + { + contentView.RemoveAll(); + if (revData.list.Count > 0) + { + LoadRow(revData.list); + } + else + { + var tipView = new EmptyTipView(Language.StringByID(StringId.NotAddedAnyDevices),160) + { + Gravity = Gravity.CenterHorizontal, + }; + contentView.AddChidren(tipView); + } + }); + } + else + { + IMessageCommon.Current.ShowErrorInfoAlter(pack.Code); + } + } + catch (Exception ex) + { + MainPage.Log("1--::" + ex.Message); + } + finally + { + Application.RunOnMainThread(() => { + if (waitPage != null) + { + waitPage.RemoveFromParent(); + waitPage = null; + } + }); + } + }) + { IsBackground = true }.Start(); + } + + void LoadRow(List<Function> deviceList) + { + bool isFrist = true; + foreach (var device in deviceList) + { + FrameLayout row = new FrameLayout() + { + Height = Application.GetRealHeight(50), + BackgroundColor = CSS_Color.MainBackgroundColor, + }; + contentView.AddChidren(row); + + if (isFrist) + { + isFrist = false; + } + else + { + Button btnLine = new Button() + { + X = Application.GetRealWidth(56), + Width = Application.GetRealWidth(303), + Height = 1, + BackgroundColor = CSS_Color.DividingLineColor, + }; + row.AddChidren(btnLine); + } + + var btnIcon = new Button() + { + X = Application.GetRealWidth(12), + Gravity = Gravity.CenterVertical, + Width = Application.GetRealWidth(32), + Height = Application.GetRealWidth(32), + Radius = (uint)Application.GetRealWidth(4), + UnSelectedImagePath = $"FunctionIcon/Icon/{device.IconName}.png", + }; + row.AddChidren(btnIcon); + Button btnRight = new Button() + { + X = Application.GetRealWidth(339), + Gravity = Gravity.CenterVertical, + Width = Application.GetMinRealAverage(16), + Height = Application.GetMinRealAverage(16), + UnSelectedImagePath = "Public/Right.png", + }; + row.AddChidren(btnRight); + + Button btnName = new Button() + { + X = Application.GetRealWidth(56), + Width = Application.GetRealWidth(303), + TextAlignment = TextAlignment.CenterLeft, + TextColor = CSS_Color.FirstLevelTitleColor, + TextSize = CSS_FontSize.TextFontSize, + Text = device.name, + }; + row.AddChidren(btnName); + + btnName.MouseUpEventHandler = (sender, e) => { + switch (device.spk) + { + case SPK.IrModule: + new UI2.PersonalCenter.PirDevice.PirMethod().MainView(this, device, () => + { + contentView.BeginHeaderRefreshing(); + }); + break; + case SPK.SenesorMegahealth: + case SPK.SenesorMegahealth2: + var smPage = new SenesorMegahealthManagerPage(); + smPage.AddForm(device); + smPage.DelDeviceEvent = () => + { + contentView.BeginHeaderRefreshing(); + }; + break; + case SPK.SensorEnvironment: + case SPK.SensorEnvironment2: + case SPK.SensorEnvironment3: + var smPage1 = new SensorEnvironmentManagerPage(); + smPage1.AddForm(device); + smPage1.DelDeviceEvent = () => + { + contentView.BeginHeaderRefreshing(); + }; + break; + } + }; + } + + } + + } + + + /// <summary> + /// 浜戠杩斿洖鐨勭涓夋柟璁惧鍒楄〃鏁版嵁 + /// </summary> + public class Function3tyBrandObj + { + public List<Function> list = new List<Function>(); + } + +} -- Gitblit v1.8.0