From bb6ad792b598927a5459a5fb6f6c27fb1aa9e94e Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期四, 17 十二月 2020 14:06:36 +0800
Subject: [PATCH] 20201217-1

---
 HDL_ON/Common/HDLCommon.cs |  154 ++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 150 insertions(+), 4 deletions(-)

diff --git a/HDL_ON/Common/HDLCommon.cs b/HDL_ON/Common/HDLCommon.cs
index d947849..d3f1eba 100644
--- a/HDL_ON/Common/HDLCommon.cs
+++ b/HDL_ON/Common/HDLCommon.cs
@@ -4,6 +4,8 @@
 using HDL_ON.UI.CSS;
 using HDL_ON.DAL.Server;
 using HDL_ON.UI;
+using HDL_ON.Entity;
+using System.Threading;
 
 namespace HDL_ON
 {
@@ -13,6 +15,11 @@
     /// </summary>
     public class HDLCommon
     {
+        /// <summary>
+        /// 鏀跺埌鎺ㄩ�丄ction浜嬩欢
+        /// </summary>
+        public static Action GetPushMessageAction;
+
         #region 鈻� 鍙橀噺澹版槑___________________________
         /// <summary>
         /// 閫氱敤鏂规硶
@@ -68,7 +75,7 @@
 
         #endregion
 
-        #region 妫�娴嬫洿鏂�
+        #region 鈻� 妫�娴嬫洿鏂癬______________________
         /// <summary>
         /// 妫�娴嬫洿鏂扮嚎绋�
         /// </summary>
@@ -165,7 +172,7 @@
             // 1.1 娌℃湁鏇存柊 杩斿洖
             if (mUpdateDialogInfo.UpdateType == 0) return;
             // 1.2 鏈夋柊鐗堟湰浣嗘槸蹇界暐杩� 杩斿洖
-            if (mUpdateDialogInfo.UpdateType == 1 && (UserInfo.Current.IgnoreUpdateVersion == mUpdateDialogInfo.NewVersion)) return;
+            if (mUpdateDialogInfo.UpdateType == 1 && (OnAppConfig.Instance.IgnoreUpdateVersion == mUpdateDialogInfo.NewVersion)) return;
             // 2.1 鏈夋柊鐗堟湰娌℃湁蹇界暐杩� 鎻愮ず鏇存柊
             if (mUpdateDialogInfo.UpdateType == 1)
             {
@@ -178,8 +185,8 @@
 
                 Action cancelAction = () =>
                 {
-                    UserInfo.Current.IgnoreUpdateVersion = mUpdateDialogInfo.NewVersion;
-                    UserInfo.Current.SaveUserInfo();
+                    OnAppConfig.Instance.IgnoreUpdateVersion = mUpdateDialogInfo.NewVersion;
+                    OnAppConfig.Instance.SaveConfig();
                 };
 
                 //1鎻愮ず鏇存柊
@@ -221,5 +228,144 @@
         }
 
         #endregion
+
+        ///// <summary>
+        ///// 鎭㈠浣忓畢
+        ///// 2020-12-03 寰呮祴璇曟湭妫�娴�
+        ///// </summary>
+        //public void RestoreHomeBackup(string RegionID)
+        //{
+        //    var isExist = FileUtils.ExistRegion(RegionID);
+        //    if (isExist)
+        //    {
+        //        //瀛樺湪鍒欐仮澶�
+        //        string newRegionRootPath = FileUtils.CreateRegionBackup(RegionID);
+        //        FileUtils.RestoreRegionFiles(newRegionRootPath);
+        //    }
+        //}
+
+        #region 鈻� 鎺ㄩ�佸鐞哶______________________
+        /// <summary>
+        /// 鎺ㄩ�佹秷鎭鐞�
+        /// </summary>
+        /// <param name="jpushMessageInfo"></param>
+        public void AdjustPushMessage(JPushMessageInfo jpushMessageInfo)
+        {
+            try
+            {
+                if (jpushMessageInfo.Extras != null && jpushMessageInfo.Extras.Contains("OffLine"))
+                {
+                    Shared.Application.RunOnMainThread(() =>
+                    {
+                        //璐﹀彿鍦ㄥ埆澶勭櫥闄嗭紝琚涪涓嬬嚎 璺宠浆鍒扮櫥褰曢〉闈�
+                        new Alert(Language.StringByID(StringId.Tip), Language.StringByID(StringId.LoggedOnOtherDevices), Language.StringByID(StringId.Close)).Show();
+                        //閫�鍑虹櫥褰曟搷浣�
+                        CheckLogout();
+                     
+                    });
+                    return;
+                }
+                else
+                {
+                    Shared.Application.RunOnMainThread(() =>
+                    {
+                        new Alert(jpushMessageInfo.Title, jpushMessageInfo.Content, Language.StringByID(StringId.Close)).Show();
+                        GetPushMessageAction?.Invoke();
+                    });
+                    return;
+                }
+            }
+            catch
+            {
+
+            }
+        }
+
+        /// <summary>
+        /// 閫�鍑虹櫥褰曟搷浣�
+        /// </summary>
+        public void CheckLogout()
+        {
+            //鏈櫥褰曚笉鐢ㄥ鐞�
+            if (!UserInfo.Current.IsLogin) return;
+
+#if DEBUG
+            return;
+#endif
+
+            Logout();
+        }
+
+        /// <summary>
+        /// 閫�鍑虹櫥褰曟搷浣�
+        /// </summary>
+        public void Logout()
+        {
+            //鍔犺浇Loading鏁堟灉
+            var waitPage = new Loading();
+            MainPage.BasePageView.AddChidren(waitPage);
+            waitPage.Start(Language.StringByID(StringId.PleaseWait));
+
+            new Thread(() =>
+            {
+                try
+                {
+                    //2.娉ㄩ攢鎺ㄩ��
+                    new HttpServerRequest().SignOutPush();
+                    //3.璺宠浆鐧诲綍椤甸潰
+                    UserInfo.Current.LastTime = DateTime.MinValue;
+                    UserInfo.Current.SaveUserInfo();
+                    DB_ResidenceData.Instance.EixtAccount();
+                }
+                catch (Exception ex)
+                {
+                    MainPage.Log($"xxx:{ex.Message}");
+                }
+                finally
+                {
+                    Application.RunOnMainThread(() =>
+                    {
+                        if (waitPage != null)
+                        {
+                            waitPage.RemoveFromParent();
+                            waitPage = null;
+                        }
+                        MainPage.GoLoginPage(UserInfo.Current);
+                    });
+                }
+            }).Start();
+        }
+        #endregion
+
+        #region 鈻� 甯哥敤鏂规硶_______________________
+        /// <summary>
+        /// 璁剧疆涓嬪垝绾挎寜閽姸鎬�
+        /// 缁熶竴灏佽璁剧疆鏂规硶
+        /// </summary>
+        /// <param name="button">涓嬪垝绾挎寜閽�</param>
+        /// <param name="bottomLineType">鐘舵��</param>
+        public void BottomLineShowType(Button button, BottomLineType bottomLineType)
+        {
+            switch (bottomLineType)
+            {
+                case BottomLineType.GotFocus:
+                    button.BackgroundColor = CSS_Color.MainColor;
+                    button.Height = Application.GetRealHeight(2);
+                    break;
+                case BottomLineType.Error:
+                    button.BackgroundColor = CSS_Color.AuxiliaryColor2;
+                    button.Height = Application.GetRealHeight(2);
+                    break;
+                case BottomLineType.Normal:
+                    button.BackgroundColor = CSS_Color.DividingLineColor;
+                    button.Height = Application.GetRealHeight(1);
+                    break;
+                default:
+                    button.BackgroundColor = CSS_Color.DividingLineColor;
+                    button.Height = Application.GetRealHeight(1);
+                    break;
+            }
+        }
+        #endregion
     }
 }

--
Gitblit v1.8.0