wjc
2022-09-14 9eec81850e418a3c16410b4870910bde142b06e3
HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using HDL_ON.DAL.Server;
using HDL_ON.Entity;
using HDL_ON.UI;
using HDL_ON.UI.CSS;
@@ -645,9 +646,6 @@
            var lastY2 = Application.GetRealWidth(16);
            var functionContentViewHeight = Application.GetRealWidth(16);
            var functionCategoryCount = 0;
            //Tag 分类卡片显示
            foreach (var item in DB_ResidenceData.Instance.functionTypeList)
            {
                int functionCount = 0;
@@ -710,7 +708,6 @@
#endif
                        break;
                    case ShowFunction.Panel:
                        functionCount = FunctionList.List.GetPanelList().Count;
                        break;
                    case ShowFunction.SecurityMonitoring:
                        if (!MainPage.NoLoginMode)
@@ -741,8 +738,6 @@
                {
                    continue;
                }
                functionCategoryCount++;
                FrameLayout functionView = new FrameLayout()
                {
@@ -790,28 +785,10 @@
                };
                functionView.AddChidren(btnName);
                //Tag 数量显示
                if (item != ShowFunction.Environmental && item != ShowFunction.Sensor && item != ShowFunction.VideoIntercom
                    && item != ShowFunction.SecurityMonitoring && item != ShowFunction.FreshAir && item != ShowFunction.Music
                    && item != ShowFunction.EnergyMonitoring && item != ShowFunction.SecurityCenter
                    && functionCount != 0)
                {
                    if (item == ShowFunction.Panel)
                    {
                        Button btnFunctionCount = new Button()
                        {
                            X = Application.GetRealWidth(16),
                            Y = btnName.Bottom,
                            Width = Application.GetRealWidth(120),
                            Height = Application.GetRealHeight(24),
                            TextColor = CSS_Color.PromptingColor1,
                            TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                            TextAlignment = TextAlignment.CenterLeft,
                            Text = functionCount.ToString(),
                        };
                        functionView.AddChidren(btnFunctionCount);
                    }
                    else
                    {
                        Button btnFunctionCount = new Button()
                        {
@@ -840,7 +817,6 @@
                        };
                        functionView.AddChidren(btnOpenCount);
                    }
                }
                Button btnFunctionViewBg;
@@ -851,7 +827,6 @@
                };
                functionView.AddChidren(btnFunctionViewBg);
                //Tag 调试事件判断
                int functionPageTitleId = 0;
                switch (item)
                {
@@ -1044,8 +1019,7 @@
                        };
                        break;
                    case ShowFunction.Panel:
                        btnName.TextID = StringId.SmartPanel;
                        functionPageTitleId = StringId.SmartPanel;
                        btnName.TextID = StringId.Panel;
                        break;
                    case ShowFunction.SecurityMonitoring:
                        btnName.TextID = StringId.SecurityMonitoring;
@@ -1093,11 +1067,167 @@
                index++;
            }
            //if (functionCategoryCount > 4)
            bool debugFlag = false;
            #if DEBUG
            debugFlag = true;
            #endif
            //光伏数据
            if (FunctionList.List.InverterList.Count > 0|| debugFlag)
            {
                //functionContentView.Height = functionContentViewHeight;// Application.GetRealWidth((240 * (functionCategoryCount / 2)));
                s1View.Height = s2View.Height = functionContentView.Height = functionContentViewHeight+ Application.GetRealWidth(40);
                FrameLayout inverterListView = new FrameLayout()
                {
                    Height = Application.GetRealHeight(223),
                    Radius = (uint)Application.GetRealWidth(6),
                    BackgroundColor = CSS_Color.MainBackgroundColor,
                    Tag =  "inverterList_View",
                    Y = index % 2 == 1 ? lastY2 : lastY1
                };
                if (index % 2 == 1)
                {
                    lastY2 += inverterListView.Height + Application.GetRealWidth(16);
            }
                else
                {
                    lastY1 += inverterListView.Height + Application.GetRealWidth(16);
                }
                if (index % 2 == 0)
                {
                    s1View.AddChidren(inverterListView);
                }
                else
                {
                    s2View.AddChidren(inverterListView);
                }
                functionContentViewHeight = inverterListView.Bottom;
                Button btnName = new Button()
                {
                    X = Application.GetRealWidth(16),
                    Y = Application.GetRealHeight(22),//14),//
                    Width = Application.GetRealWidth(140),
                    Height = Application.GetRealHeight(20),
                    TextColor = CSS_Color.FirstLevelTitleColor,
                    TextSize = CSS_FontSize.TextFontSize,
                    TextAlignment = TextAlignment.CenterLeft,
                    IsMoreLines = true,
                    TextID = StringId.PhotovoltaicEnergyStorage,
                    IsBold = true,
                };
                inverterListView.AddChidren(btnName);
                Button btnWorkStatus = new Button()
                {
                    Y = Application.GetRealHeight(24),
                    Width = Application.GetRealWidth(148),
                    Height = Application.GetRealHeight(18),
                    TextAlignment = TextAlignment.CenterRight,
                    TextColor = 0xFF0BAF31,
                    TextID = StringId.NormalOperation,
                    TextSize = CSS_FontSize.TextFontSize
                };
                inverterListView.AddChidren(btnWorkStatus);
                Button btnWorkingMode = new Button()
                {
                    X = Application.GetRealWidth(16),
                    Y = btnWorkStatus.Bottom + Application.GetRealHeight(16),
                    Width = Application.GetRealWidth(148),
                    Height = Application.GetRealHeight(18),
                    TextColor = CSS_Color.FirstLevelTitleColor,
                    TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                    TextID = StringId.WorkingMode,
                    TextAlignment = TextAlignment.CenterLeft,
                };
                inverterListView.AddChidren(btnWorkingMode);
                Button btnPowerTenerationToday = new Button()
                {
                    X = Application.GetRealWidth(16),
                    Y = btnWorkingMode.Bottom + Application.GetRealHeight(16),
                    Width = Application.GetRealWidth(148),
                    Height = Application.GetRealHeight(18),
                    TextColor = CSS_Color.FirstLevelTitleColor,
                    TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                    TextID = StringId.PowerTenerationToday,
                    TextAlignment = TextAlignment.CenterLeft,
                };
                inverterListView.AddChidren(btnPowerTenerationToday);
                Button btnCurrentPowerGeneration = new Button()
                {
                    X = Application.GetRealWidth(16),
                    Y = btnPowerTenerationToday.Bottom + Application.GetRealHeight(16),
                    Width = Application.GetRealWidth(148),
                    Height = Application.GetRealHeight(18),
                    TextColor = CSS_Color.FirstLevelTitleColor,
                    TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                    TextID = StringId.CurrentPowerGeneration,
                    TextAlignment = TextAlignment.CenterLeft,
                };
                inverterListView.AddChidren(btnCurrentPowerGeneration);
                Button btnBatterySOC = new Button()
                {
                    X = Application.GetRealWidth(16),
                    Y = btnCurrentPowerGeneration.Bottom + Application.GetRealHeight(16),
                    Width = Application.GetRealWidth(148),
                    Height = Application.GetRealHeight(18),
                    TextColor = CSS_Color.FirstLevelTitleColor,
                    TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                    TextID = StringId.BatterySOC,
                    TextAlignment = TextAlignment.CenterLeft,
                };
                inverterListView.AddChidren(btnBatterySOC);
                Button btnOperationDataTotalData = new Button()
                {
                    X = Application.GetRealWidth(16),
                    Y = btnBatterySOC.Bottom + Application.GetRealHeight(16),
                    Width = Application.GetRealWidth(148),
                    Height = Application.GetRealHeight(18),
                    TextColor = CSS_Color.FirstLevelTitleColor,
                    TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                    TextID = StringId.OperationDataTotalData,
                    TextAlignment = TextAlignment.CenterLeft,
                };
                inverterListView.AddChidren(btnOperationDataTotalData);
                var clickButton = new Button();
                inverterListView.AddChidren(clickButton);
                clickButton.MouseUpEventHandler = (sender2, e2) => {
                    var h5BasePage = new FrameLayout();
#if __Android__
                    //适配安卓沉浸式导航栏
                    h5BasePage.Y = Application.GetRealHeight(16);
                    h5BasePage.Height = Application.GetRealHeight(651);
#endif
                    MainPage.BasePageView.AddChidren(h5BasePage);
                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                    h5BasePage.AddChidren(Inverter.Ins.H5Page);
                    Inverter.Ins.ShowWebviewFormUrl($"h5/index.html?homeId={DB_ResidenceData.Instance.CurrentRegion.id}&token={UserInfo.Current.AccessToken}&refresh_token={UserInfo.Current.RefreshToken}&url={HttpUtil.GlobalRequestHttpsHost}");
                    Inverter.Ins.H5Page.JSToNativeAction =  (pairs) => {
                        MainPage.Log("xxxx");
                    };
                    Inverter.Ins.H5Page.CallJS("");
                    //Inverter.Ins.H5Page.DidFinishAction = () => {
                    //};
                };
                index++;
            }
            s1View.Height = s2View.Height = functionContentView.Height = functionContentViewHeight+ Application.GetRealWidth(40);
#endregion
        }