wei
2020-12-19 c5a873df96e4a797426e4dd5eafe5b43f7aea564
HDL_ON/Common/HDLCommon.cs
@@ -6,6 +6,7 @@
using HDL_ON.UI;
using HDL_ON.Entity;
using System.Threading;
using HDL_ON.DriverLayer;
namespace HDL_ON
{
@@ -15,6 +16,11 @@
    /// </summary>
    public class HDLCommon
    {
        /// <summary>
        /// 收到推送Action事件
        /// </summary>
        public static Action GetPushMessageAction;
        #region ■ 变量声明___________________________
        /// <summary>
        /// 通用方法
@@ -256,6 +262,7 @@
                        new Alert(Language.StringByID(StringId.Tip), Language.StringByID(StringId.LoggedOnOtherDevices), Language.StringByID(StringId.Close)).Show();
                        //退出登录操作
                        CheckLogout();
                    });
                    return;
                }
@@ -263,7 +270,12 @@
                {
                    Shared.Application.RunOnMainThread(() =>
                    {
                        new Alert(jpushMessageInfo.Title, jpushMessageInfo.Content, Language.StringByID(StringId.Close)).Show();
                        //报警推送才弹窗提示(messageType包含Alarm关键字的)
                        if (jpushMessageInfo.messageType != null && jpushMessageInfo.messageType.Contains("Alarm"))
                        {
                            new Alert(jpushMessageInfo.Title, jpushMessageInfo.Content, Language.StringByID(StringId.Close)).Show();
                        }
                        GetPushMessageAction?.Invoke();
                    });
                    return;
                }
@@ -281,6 +293,10 @@
        {
            //未登录不用处理
            if (!UserInfo.Current.IsLogin) return;
#if DEBUG
            return;
#endif
            Logout();
        }
@@ -302,10 +318,9 @@
                    //2.注销推送
                    new HttpServerRequest().SignOutPush();
                    //3.跳转登录页面
                    //UserInfo.Current.LastTime = DateTime.MinValue;
                    //UserInfo.Current.headImagePagePath = "LoginIcon/2.png";//重置用户头像
                    UserInfo.Current.ClearUserInfo();
                    DB_ResidenceData.residenceData.EixtAccount();
                    UserInfo.Current.LastTime = DateTime.MinValue;
                    UserInfo.Current.SaveUserInfo();
                    DB_ResidenceData.Instance.EixtAccount();
                }
                catch (Exception ex)
                {
@@ -356,6 +371,46 @@
                    break;
            }
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="userName"></param>
        /// <returns></returns>
        public string GetUserName(string userName)
        {
            return string.IsNullOrEmpty(userName) ? Language.StringByID(StringId.UsersWhoNameIsEmpty) : userName;
        }
        /// <summary>
        /// 监听网络变化后处理事件
        /// 刷新网络状态
        /// </summary>
        /// <param name="internetStatus">网络变化</param>
        /// <param name="IsEnterBackground">是否进入了后台</param>
        public void UpdateInternetStatus(int internetStatus, bool IsEnterBackground = false)
        {
            MainPage.Log($"网络状态变化,当前网络:{internetStatus} 是否后台:{IsEnterBackground.ToString()}");
            if (internetStatus == 0)//没有网络连接 0
            {
                Control.Ins.GatewayOnline = false;
                Control.Ins.IsRemote = false;
                MainPage.InternetStatus = 0;
            }
            else if (internetStatus == 1)//3,4G的网络连接 1
            {
                Control.Ins.SearchLoaclGateway();
                MainPage.InternetStatus = 1;
            }
            else if (internetStatus == 2)//WiFi网络
            {
                Control.Ins.SearchLoaclGateway();
                MainPage.InternetStatus = 2;
            }
        }
        #endregion
    }
}