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