From 2a88b9b559fd20f42d163d08b582f2d19ff329f4 Mon Sep 17 00:00:00 2001
From: wxr <wxr@hdlchina.com.cn>
Date: 星期一, 30 九月 2024 17:05:58 +0800
Subject: [PATCH] Update HDLLinphone.cs

---
 HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs |  191 +++++++++++++++++++++++++++++++++--------------
 1 files changed, 134 insertions(+), 57 deletions(-)

diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
index 6fca48a..946089d 100644
--- a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
+++ b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
@@ -1,5 +1,6 @@
 锘縰sing System;
 using System.Collections.Generic;
+using System.Security.Cryptography;
 using HDL_ON.DAL.Server;
 using HDL_ON.DriverLayer;
 using HDL_ON.Entity;
@@ -717,9 +718,9 @@
 
                         functionCount = FunctionList.List.GetElectricals().Count;
                         functionOnCount = FunctionList.List.GetElectricals().FindAll((obj) => obj.spk!=SPK.ElectricalTvHisense&&obj.trait_on_off.curValue.ToString() == "on").Count;
-#if DEBUG
-                        functionCount = 1;
-#endif
+//#if DEBUG
+//                        functionCount = 1;
+//#endif
                         #endregion
                         break;
                     case ShowFunction.EnergyMonitoring:
@@ -748,7 +749,14 @@
                     case ShowFunction.SecurityMonitoring:
                         if (!MainPage.NoLoginMode)
                         {
-                            functionCount = 1;
+                            if (OnAppConfig.Instance.RequestHttpsHost.Contains("bahrain") || !Common.ApiUtlis.Ins.hadInternet)
+                            {
+                                functionCount = 0;
+                            }
+                            else
+                            {
+                                functionCount = 1;
+                            }
                         }
                         break;
                     case ShowFunction.Sensor:
@@ -757,7 +765,10 @@
                     case ShowFunction.VideoIntercom:
                         if (FunctionList.List.videoIntercom != null && FunctionList.List.videoIntercom.Count > 0)
                         {
-                            functionCount = 1;
+                            if (Common.ApiUtlis.Ins.hadInternet)
+                            {
+                                functionCount = 1;
+                            }
                         }
                         break;
                     case ShowFunction.SecurityCenter:
@@ -765,19 +776,26 @@
                         break;
                     case ShowFunction.Acst:
                         functionCount = FunctionList.List.GetAcstParentList().Count;
-                        functionOnCount = FunctionList.List.GetAcstParentList().FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count;
+                        functionOnCount = 0;
+                        break;
+                    case ShowFunction.InverterJinmao:
+                        functionCount = FunctionList.List.GetInverterJinmaoList().Count;
+                        functionOnCount = 0;
                         break;
                     case ShowFunction.VideoDoorLock:
-                        functionCount = FunctionList.List.GetVideoDoorLockList().Count;
-                        functionOnCount = FunctionList.List.GetAcstParentList().FindAll((obj) => obj.GetAttrState("status").ToString() == "open"
-                            || obj.GetAttrState("status").ToString() == "normal_open").Count;
-
+                        if (Common.ApiUtlis.Ins.hadInternet)
+                        {
+                            functionCount = FunctionList.List.GetVideoDoorLockList().Count;
+                            functionOnCount = FunctionList.List.GetAcstParentList().FindAll((obj) => obj.GetAttrState("status").ToString() == "open"
+                                || obj.GetAttrState("status").ToString() == "normal_open").Count;
+                        }
+                        else
+                        {
+                            functionCount = 0;
+                        }
                         break;
                     case ShowFunction.Aks:
                         functionCount = FunctionList.List.GetVideoControlsList().Count;
-#if DEBUG
-                        functionCount = 1;
-#endif
                         functionOnCount = 1;
                         break;
 
@@ -834,8 +852,10 @@
                     TextAlignment = TextAlignment.CenterLeft,
                     IsMoreLines = true,
                 };
-                functionView.AddChidren(btnName); 
+                functionView.AddChidren(btnName);
+
                 //涓嶉渶瑕佹樉绀鸿澶囧紑鐘舵�佹暟閲�;
+                Button btnFunctionCount=null;
                 if (item != ShowFunction.Aks
                     && item != ShowFunction.VideoDoorLock
                     && item != ShowFunction.Environmental
@@ -846,10 +866,10 @@
                     && item != ShowFunction.Music
                     && item != ShowFunction.EnergyMonitoring
                     && item != ShowFunction.SecurityCenter
-                    && item != ShowFunction.Acst && item != ShowFunction.IpCam
+                    && item != ShowFunction.Acst && item != ShowFunction.IpCam && item != ShowFunction.InverterJinmao
                     && functionCount != 0)
                 {
-                    Button btnFunctionCount = new Button()
+                    btnFunctionCount = new Button()
                     {
                         X = Application.GetRealWidth(17) + Application.GetRealWidth(7 * functionCount.ToString().Length),
                         Y = btnName.Bottom,
@@ -1162,8 +1182,14 @@
                         };
                         break;
                     case ShowFunction.Acst:
-                        btnName.TextID = StringId.Acst;
-
+                    case ShowFunction.InverterJinmao:
+                        //if(item == ShowFunction.Acst)
+                        //{
+                        //    btnFunctionViewBg.UnSelectedImagePath = "FunctionIcon/FunctionBg/SecurityMonitoringFunctionBg.png";
+                        //}else if (item == ShowFunction.InverterJinmao)
+                        //{
+                        //    btnFunctionViewBg.UnSelectedImagePath = "FunctionIcon/FunctionBg/SecurityMonitoringFunctionBg.png";
+                        //}
                         Button btnJMLogo = new Button()
                         {
                             Y = specialList.Contains(index) ? Application.GetRealWidth(147) : Application.GetRealWidth(104),
@@ -1172,39 +1198,65 @@
                             Height = Application.GetRealWidth(57),
                         };
                         functionView.AddChidren(btnJMLogo);
+                        
 
-                        //Button btnAcstPower = new Button()
-                        //{
-                        //    X = Application.GetRealWidth(120),
-                        //    Y = specialList.Contains(index) ? Application.GetRealWidth(160) : Application.GetRealWidth(117),
-                        //    Width = Application.GetRealWidth(32),
-                        //    Height = Application.GetRealWidth(32),
-                        //    SelectedImagePath = "Public/PowerOpen.png",
-                        //    UnSelectedImagePath = "Public/PowerClose.png",
-                        //    IsSelected = functionOnCount > 0,
-                        //    Tag = item + "_AllControl",
-                        //};
-                        //functionView.AddChidren(btnAcstPower);
-                        //btnAcstPower.MouseUpEventHandler = (sender, e) =>
-                        //{
-                        //    btnAcstPower.IsSelected = !btnAcstPower.IsSelected;
-                        //    string onoff = btnAcstPower.IsSelected ? "on" : "off";
-                        //    Dictionary<string, string> d = new Dictionary<string, string>();
-                        //    d.Add(FunctionAttributeKey.OnOff, onoff);
-                        //    foreach (var temp in FunctionList.List.GetAcstParentList())
-                        //    {
-                        //        Control.Ins.SendWriteCommand(temp, d);
-                        //    }
-                        //};
-
-
-                        btnFunctionViewBg.MouseUpEventHandler = (sender, e) =>
+                        if (item == ShowFunction.Acst)
                         {
-                            var page = new AcstParentPage();
-                            MainPage.BasePageView.AddChidren(page);
-                            page.LoadPage();
-                            MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-                        };
+                            btnName.TextID = StringId.Acst;
+                            try
+                            {
+                                var acstFunction = FunctionList.List.GetAcstParentList()[0];
+                                btnName.Text = acstFunction.name;
+                                if (acstFunction.extend.Contains("jinmao") && acstFunction.extend.Contains("true"))
+                                {
+                                    btnJMLogo.Visible = true;
+                                }
+                                else
+                                {
+                                    btnJMLogo.Visible = false;
+                                }
+
+                            }
+                            catch (Exception ex)
+                            {
+                                MainPage.Log("Error", $"鍔犺浇閲戣寕绉戞妧绯荤粺涓绘帶鍚嶇О寮傚父:{ex.Message}");
+                            }
+                            btnFunctionViewBg.MouseUpEventHandler = (sender, e) =>
+                            {
+                                var page = new AcstParentPage();
+                                MainPage.BasePageView.AddChidren(page);
+                                page.LoadPage();
+                                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                            };
+                        }
+                        else if (item == ShowFunction.InverterJinmao)
+                        {
+                            btnName.TextID = StringId.NewEnergy;
+                            try
+                            {
+                                var jinmaoInverterFunction = FunctionList.List.GetInverterJinmaoList()[0];
+                                btnName.Text = jinmaoInverterFunction.name;
+                                if (jinmaoInverterFunction.extend.Contains("jinmao") && jinmaoInverterFunction.extend.Contains("true"))
+                                {
+                                    btnJMLogo.Visible = true;
+                                }
+                                else
+                                {
+                                    btnJMLogo.Visible = false;
+                                }
+                            }
+                            catch (Exception ex)
+                            {
+                                MainPage.Log("Error", $"鍔犺浇閲戣寕鍌ㄨ兘鍚嶇О寮傚父:{ex.Message}");
+                            }
+                            btnFunctionViewBg.MouseUpEventHandler = (sender, e) =>
+                            {
+                                var page = new InverterJinmaoPage();
+                                MainPage.BasePageView.AddChidren(page);
+                                page.LoadPage();
+                                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                            };
+                        }
                         break;
                     case ShowFunction.VideoDoorLock:
                         //钀ょ煶瑙嗛闂ㄩ攣
@@ -1213,21 +1265,21 @@
                         {
                             var list =CommonMethod.Current.GetVideoDoorLockList();
                             var form = new VideoDoorLockListPage(()=> {
-                                functionContentView?.RemoveFromParent();
-                                this.RefreshFunctionView();
+                                UpdateBottomView();
                             });
                             form.AddForm(list);
                         };
                         break;
                     case ShowFunction.Aks:
+
+                        btnFunctionViewBg.UnSelectedImagePath = "FunctionIcon/FunctionBg/AksFunctionBg.png";
                         //鍩冨厠鏂奖闊充腑鎺�
                         btnName.TextID = StringId.jiatingyingyuan;
                         btnFunctionViewBg.MouseUpEventHandler = (sender, e) =>
                         {
                             var list = HDL_ON.UI.UI2.FuntionControlView.Aks.AksCommonMethod.Current.GetVideoControlsList();
                             var form = new HDL_ON.UI.UI2.FuntionControlView.Aks.AksListPage(() => {
-                                functionContentView?.RemoveFromParent();
-                                this.RefreshFunctionView();
+                                UpdateBottomView();
                             });
                             form.AddForm(list);
                         };
@@ -1245,14 +1297,20 @@
                     && ShowFunction.VideoIntercom != item
                     && ShowFunction.SecurityCenter != item
                     && ShowFunction.Series != item
-                    && ShowFunction.Acst != item)
+                    && ShowFunction.Acst != item && ShowFunction.InverterJinmao != item)
                 {
                     btnFunctionViewBg.MouseUpEventHandler = (sender, e) =>
                     {
+                        
                         var skipView = new FunctionPage();
                         MainPage.BasePageView.AddChidren(skipView);
                         skipView.LoadPage(functionPageTitleId);
                         MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                        skipView.DelAction += () =>
+                        {
+                           
+                            UpdateBottomView();
+                        };
                     };
                 }
                 index++;
@@ -1467,7 +1525,7 @@
 
 //#if __Android__
                     //閫傞厤娌夋蹈寮忓鑸爮
-                    h5BasePage.Y = Application.GetRealHeight(20);
+                    h5BasePage.Y = Application.GetRealHeight(35);
                     h5BasePage.Height = Application.GetRealHeight(646);
 //#endif
                     MainPage.BasePageView.AddChidren(h5BasePage);
@@ -1475,7 +1533,14 @@
 
                     h5BasePage.AddChidren(Inverter.Ins.H5Page);//000
                     string lz = "zh";
-                    if (Language.CurrentLanguage != "Chinese")
+                    if (Language.CurrentLanguage == "Ukraine") {
+                        lz = "ua";
+                    }
+                    else if (Language.CurrentLanguage == "Chinese")
+                    {
+                        lz = "zh";
+                    }
+                    else
                     {
                         lz = "en";
                     }
@@ -1783,6 +1848,18 @@
         {
 
         }
-#endregion
+        #endregion
+
+        /// <summary>
+        /// 鏇存柊搴曢儴鐣岄潰
+        /// </summary>
+        void UpdateBottomView()
+        {
+            Application.RunOnMainThread(() =>
+            {
+                functionContentView?.RemoveFromParent();
+                this.RefreshFunctionView();
+            });
+        }
     }
 }

--
Gitblit v1.8.0