From d76b0e40e5bb127fd33aa1f7842447a1df0628d5 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期日, 30 七月 2023 22:16:34 +0800
Subject: [PATCH] Update PublicAssmeblyBLL.cs

---
 HDL_ON/UI/MainPage.cs |  246 ++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 181 insertions(+), 65 deletions(-)

diff --git a/HDL_ON/UI/MainPage.cs b/HDL_ON/UI/MainPage.cs
index 66ae421..e2ce48b 100644
--- a/HDL_ON/UI/MainPage.cs
+++ b/HDL_ON/UI/MainPage.cs
@@ -26,7 +26,7 @@
         /// <summary>
         /// 鐗堟湰鍙�
         /// </summary>
-        public static string VersionString = "1.6.1";
+        public static string VersionString = "2.0.0";
         ///// <summary>
         ///// 瀹㈡埛绔被鍨�
         ///// </summary>
@@ -35,7 +35,7 @@
         /// <summary>
         /// 
         /// </summary>
-        public static Entity.CityInfo cityInfo = new Entity.CityInfo();
+        public static CityInfo cityInfo = new CityInfo();
         /// <summary>
         /// 鍩庡競澶╂皵淇℃伅antion
         /// </summary>
@@ -58,6 +58,10 @@
         /// 0:鏃犵綉缁�
         /// </summary>
         public static int InternetStatus = 2;
+        /// <summary>
+        /// 杩炴帴mqtt娆℃暟
+        /// </summary>
+        public static int LinkHdlMqttCount = 0;
         /// <summary>
         /// 鏄惁杩涘叆鍚庡彴
         /// </summary>
@@ -116,6 +120,9 @@
             SPK.AirFreshStandard,SPK.HvacAirFresh,
             SPK.AirSwitch,
             SPK.PanelSocket,SPK.ElectricSocket,
+            SPK.MechanicalArm,SPK.IpCam_Imou,
+            SPK.GroupControl,
+            //SPK.AvMusic,SPK.MusicStandard
         };
 
 
@@ -131,11 +138,13 @@
                 {
                     _RoomNotSupportFunctionList = new List<string>();
                     _RoomNotSupportFunctionList.Add(SPK.EnergyStandard);
-                    _RoomNotSupportFunctionList.Add(SPK.MusicStandard);
-                    _RoomNotSupportFunctionList.Add(SPK.AvMusic);
+                    //_RoomNotSupportFunctionList.Add(SPK.MusicStandard);
+                    //_RoomNotSupportFunctionList.Add(SPK.AvMusic);
                     _RoomNotSupportFunctionList.Add(SPK.AirSwitch);
+                    _RoomNotSupportFunctionList.Add(SPK.AirSwitchP3);
                     _RoomNotSupportFunctionList.Add(SPK.ElectricEnergy);
-                    _RoomNotSupportFunctionList.Add(SPK.OtherCommon);
+                    //_RoomNotSupportFunctionList.Add(SPK.OtherCommon);
+                    _RoomNotSupportFunctionList.Add(SPK.SensorLight);
                     _RoomNotSupportFunctionList.AddRange(SPK.EnvironDeviceSpkList());
                     //_RoomNotSupportFunctionList.AddRange(SPK.ArmSensorSpkList());
                 }
@@ -151,7 +160,6 @@
                 Application.DesignHeight = 667;
                 //璁剧疆璇█鐜 闃叉string杞� double鍑虹幇閫楀彿锛宼odouble寮傚父绛夐棶棰�
                 System.Globalization.CultureInfo.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("zh-CN");
-
 
                 BaseView = Application.MainPage;
                 Application.MainPage.BackgroundColor = CSS_Color.MainBackgroundColor;
@@ -199,6 +207,52 @@
                 //    Application.HideSoftInput();
                 //});
             }
+
+            try
+            {
+                CommonClass.excptionAction = (obj) =>
+                {
+                    Application.RunOnMainThread(() =>
+                    {
+                        Stan.HdlMessageLogic.Current.ShowAppProgramIsError(obj);
+                    });
+                };
+            }
+            catch (Exception ex)
+            {
+
+            }
+
+#if __ANDROID__
+            new System.Threading.Thread(async () =>
+            {
+                int i = 10;
+                while (i < 10) {
+                    try
+                    {
+                        var location_android = await HDL_ON_Android.LocationUtils.GetCurrentLocationAsync();
+                        if (location_android != null)
+                        {
+                            MainPage.cityInfo.lat = location_android.Latitude.ToString();
+                            MainPage.cityInfo.lon = location_android.Longitude.ToString();
+                            new HDL_ON.DAL.Server.HttpServerRequest().GetCityWeatherInfo(MainPage.cityInfo.lon.Replace(",", "."), MainPage.cityInfo.lat.ToString().Replace(",", "."));
+                            i = 100;
+                            Application.RunOnMainThread(() => {
+                                HomePage.LoadEvent_RefreshAir();
+                            });
+                        }
+                        else
+                        {
+                            i++;
+                        }
+                    } catch (Exception ex)
+                    {
+                        Log($"缁忕含搴﹁幏鍙栧紓甯�: {ex.Message}");
+                    }
+                }
+            })
+            { IsBackground = true }.Start();
+#endif
         }
 
         /// <summary>
@@ -206,7 +260,14 @@
         /// </summary>
         public static void GoLoginPage(UserInfo userInfo = null)
         {
-            BaseView.RemoveAll();
+            try
+            {
+                for (int i = 0; i < BaseView.ChildrenCount; i++)
+                {
+                    BaseView.GetChildren(i).RemoveFromParent();
+                }
+            }
+            catch { }
             BaseView.BackgroundColor = CSS_Color.BackgroundColor;
             var fisrtView = new UI.UI1Login.LoginPage();
             fisrtView.BackgroundColor = CSS_Color.MainBackgroundColor;
@@ -221,7 +282,14 @@
         /// <param name="pageShowEvent">涓婚〉鏄剧ず涔嬪悗瑙﹀彂鐨勪簨浠�(娌℃湁浣忓畢鐨勮瘽,鍒欎笉浼氳Е鍙�)</param>
         public static void GoUserPage(bool downloadData, bool isFirstOpen = false, Action pageShowEvent = null)
         {
-            BaseView.RemoveAll();
+            try
+            {
+                for (int i = 0; i < BaseView.ChildrenCount; i++)
+                {
+                    BaseView.GetChildren(i).RemoveFromParent();
+                }
+            }
+            catch { }
             #region 鍚庨��浜嬩欢
             BasePageView = new PageLayout();
             BasePageView.ScrollEnabled = false;
@@ -389,36 +457,38 @@
                 addResidencePage.LoadView();
                 return;
             }
-            new System.Threading.Thread(async () =>
+
+            new System.Threading.Thread(() =>
             {
                 try
                 {
-                    Entity.FunctionList.List.Clear();
+                    Entity.FunctionList.List.ClearDatas();
                     Entity.SpatialInfo.CurrentSpatial.Clear();
-              ///绛夊緟鑾峰彇浣忓畢淇℃伅
-              Application.RunOnMainThread(() =>
-              {
-                    if (waitPage != null)
+                    ///绛夊緟鑾峰彇浣忓畢淇℃伅
+                    Application.RunOnMainThread(() =>
                     {
-                        waitPage.RemoveFromParent();
-                        waitPage = null;
-                    }
+                        if (waitPage != null)
+                        {
+                            waitPage.Hide();
+                            waitPage.RemoveFromParent();
+                            waitPage = null;
+                        }
 
-              //璺宠浆椤甸潰----
-              UserBasePage = new UserPage();
-                    BasePageView.AddChidren(UserBasePage);
-                    UserBasePage.LoadPage();
-                    BasePageView.PageIndex = 0;
+                        //璺宠浆椤甸潰----
+                        UserBasePage = new UserPage();
+                        BasePageView.AddChidren(UserBasePage);
+                        UserBasePage.LoadPage();
+                        BasePageView.PageIndex = 0;
 
-                    if (isFirstOpen)
-                    {
-                  //鍚姩瀵嗙爜楠岃瘉
-                  new AppUnlockPage().LoadPage(isFirstOpen);
-                    }
-              //涓婚〉鍔犺浇瀹屾垚,鍥炶皟浜嬩欢
-              pageShowEvent?.Invoke();
-                    pageShowEvent = null;
-                });
+                        if (isFirstOpen)
+                        {
+                            //鍚姩瀵嗙爜楠岃瘉
+                            new AppUnlockPage().LoadPage(isFirstOpen);
+                        }
+                        //涓婚〉鍔犺浇瀹屾垚,鍥炶皟浜嬩欢
+                        pageShowEvent?.Invoke();
+                        pageShowEvent = null;
+                    });
                 }
                 catch (Exception ex)
                 {
@@ -427,17 +497,30 @@
                 finally
                 {
                     Application.RunOnMainThread(() =>
-              {
-                    if (downloadData)
-                    {
-                        DB_ResidenceData.Instance.EixtAccount();
-                  ///鍒濆鍖朼pp鏁版嵁
-                  Common.ApiUtlis.Ins.DownloadData();
-                    };
-                });
+                      {
+                          if (downloadData)
+                          {
+                              DB_ResidenceData.Instance.EixtAccount();
+                              ///鍒濆鍖朼pp鏁版嵁
+                              Common.ApiUtlis.Ins.DownloadData();
+                          };
+                      });
                 }
             }).Start();
 
+
+            try
+            {
+#if __ANDROID__
+                Com.Chteam.Agent.BuglyAgentHelper.SetUserId(UserInfo.Current.AccountString);
+#else
+                Bugly.Bugly.SetUserIdentifier(UserInfo.Current.AccountString);
+#endif
+            }
+            catch (Exception ex)
+            {
+                MainPage.Log("Bugly error");
+            }
         }
 
         /// <summary>
@@ -449,55 +532,83 @@
         public static int LoadEvent_BackAction()
         {
             int result = 0;
+            
             Application.RunOnMainThread(() =>
             {
-                if (BasePageView == null || BasePageView.ChildrenCount <= 1)
+                try
                 {
-                    result = 2;//鏃犳硶鍐嶅悗閫�锛屽彲浠ユ墽琛岄��鍒版闈�
-          }
-                if (BasePageView.ChildrenCount > 1)
-                {
-                    int index = BasePageView.ChildrenCount - 1;
-                    var view = BasePageView.GetChildren(index);
-                    if (view.GetType() == typeof(Loading))
+                    if (Inverter.Ins.H5Page.Parent != null)
                     {
-                        var loading = view as Loading;
-                        if (loading.CurStatus == false)//鏈変竴浜涚瓑寰呯晫闈㈤殣钘忎簡锛屼絾鏄病鏈夌Щ闄ゅ埌锛岄渶瑕佸厛绉婚櫎
-                  {
-                            loading.RemoveFromParent();
-                            result = LoadEvent_BackAction();
+                        if (Inverter.Ins.PageIndex != "1")
+                        {
+                            Inverter.Ins.PageIndex = "1";
+                            var status = new Dictionary<string, object> { ["method"] = "backPrePage", ["data"] = "" };
+                            Inverter.Ins.H5Page.CallJS($"nativeToJs(\'{Newtonsoft.Json.JsonConvert.SerializeObject(status)}\')");
+                            StartX = 0;
+                            BtnBackIcon.X = -Application.GetRealWidth(100);
+                            return;
                         }
                         else
                         {
-                            result = 1;//姝e湪绛夊緟鏌愪簺鎿嶄綔
-                  }
+                            Inverter.Ins.PageIndex = "1";
+                        }
+                    }
+
+
+                    if (BasePageView == null || BasePageView.ChildrenCount <= 1)
+                    {
+                        result = 2;//鏃犳硶鍐嶅悗閫�锛屽彲浠ユ墽琛岄��鍒版闈�
                     }
                     else
                     {
-                        if (view != null)
+                        if (BasePageView.ChildrenCount > 1)
                         {
-                            if (view.Tag != null)
+                            int index = BasePageView.ChildrenCount - 1;
+                            var view = BasePageView.GetChildren(index);
+                            if (view.GetType() == typeof(Loading))
                             {
-                                if (view.Tag.ToString() != "unlockpage")
+                                var loading = view as Loading;
+                                if (loading.CurStatus == false)//鏈変竴浜涚瓑寰呯晫闈㈤殣钘忎簡锛屼絾鏄病鏈夌Щ闄ゅ埌锛岄渶瑕佸厛绉婚櫎
                                 {
-                                    view.RemoveFromParent();
+                                    loading.RemoveFromParent();
+                                    result = LoadEvent_BackAction();
                                 }
                                 else
                                 {
-                                    result = 2;
+                                    result = 1;//姝e湪绛夊緟鏌愪簺鎿嶄綔
                                 }
                             }
                             else
                             {
-                                view.RemoveFromParent();
+                                if (view != null)
+                                {
+                                    if (view.Tag != null)
+                                    {
+                                        if (view.Tag.ToString() != "unlockpage")
+                                        {
+                                            view.RemoveFromParent();
+                                        }
+                                        else
+                                        {
+                                            result = 2;
+                                        }
+                                    }
+                                    else
+                                    {
+                                        view.RemoveFromParent();
+                                    }
+                                }
                             }
                         }
+                        else
+                        {
+                            result = 2;//鏃犳硶鍐嶅悗閫�锛屽彲浠ユ墽琛岄��鍒版闈�
+                        }
                     }
-                }
-                else
+                }catch(Exception ex)
                 {
-                    result = 2;//鏃犳硶鍐嶅悗閫�锛屽彲浠ユ墽琛岄��鍒版闈�
-          }
+                    MainPage.Log($"鍔犺浇瀹夊崜鍚庨��寮傚父:{ex.Message}");
+                }
             });
             return result;
         }
@@ -509,7 +620,12 @@
         public static void Log(string msg)
         {
 #if DEBUG
-            Console.WriteLine(msg);
+            if (msg.Contains("鏀跺埌鏁版嵁")
+                || msg.Contains("鍙戦��")
+                || msg.Contains("鎺ユ敹鍒版帹閫�")
+
+                )
+                Console.WriteLine(msg);
 #endif
         }
 

--
Gitblit v1.8.0