黄学彪
2019-11-28 3a26f6025130dcaae4aa82ea19b16ad902450eb8
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayLogic.cs
@@ -707,7 +707,7 @@
            //移除
            ZbGateway.GateWayList.RemoveAll((obj) => this.GetGatewayId(obj) == zbGatewayID);
            //断开mqtt连接
            realWay.DisConnect("GD");
            realWay.DisConnectLocalMqttClient("GD");
            return true;
        }
@@ -1556,7 +1556,7 @@
            //最后再断开mqtt连接
            for (int i = 0; i < list.Count; i++)
            {
                list[i].DisConnect("G");
                list[i].DisConnectLocalMqttClient("G");
            }
            list.Clear();
        }
@@ -1833,50 +1833,6 @@
            realWay.Send("GwLinuxLocate_Respon", jObject.ToString());
        }
        #endregion
        #region ■ 一般方法___________________________
        /// <summary>
        /// 弹出网关不在线的
        /// </summary>
        private void ShowGatewayNotOnlineMsg()
        {
            Application.RunOnMainThread(() =>
            {
                //网关连接失败,请确认网络
                string msg = Language.StringByID(R.MyInternationalizationString.uGatewayIsNotLinkAndCheckNetwork);
                var control = new ShowMsgControl(ShowMsgType.Tip, msg);
                control.Show();
            });
        }
        /// <summary>
        /// 显示错误信息窗口
        /// </summary>
        /// <param name="msg"></param>
        private void ShowErrorMsg(string msg)
        {
            Application.RunOnMainThread(() =>
            {
                var contr = new ShowMsgControl(ShowMsgType.Error, msg);
                contr.Show();
            });
        }
        /// <summary>
        /// 显示Tip信息窗口
        /// </summary>
        /// <param name="msg"></param>
        private void ShowTipMsg(string msg)
        {
            Application.RunOnMainThread(() =>
            {
                var contr = new ShowMsgControl(ShowMsgType.Tip, msg);
                contr.Show();
            });
        }
        #endregion
        #region ■ 网关监视___________________________
@@ -2080,17 +2036,19 @@
            {
                return;
            }
            //获取当前接受在线状态推送的界面
            var listForm = new List<CommonFormBase>();
            listForm.AddRange(UserCenterResourse.listGatewayOnlinePushForm);
            if (listForm.Count > 0)
            //保存当前激活的界面ID
            var listId = new List<string>();
            listId.AddRange(UserCenterResourse.listActionFormId);
            for (int i = 0; i < listId.Count; i++)
            {
                for (int i = 0; i < listChange.Count; i++)
                if (UserCenterResourse.DicActionForm.ContainsKey(listId[i]) == false)
                {
                    foreach (var form in listForm)
                    {
                        form?.GatewayOnlinePush(listChange[i], listChangeStatu[i]);
                    }
                    continue;
                }
                //网关在线推送
                for (int j = 0; j < listChange.Count; j++)
                {
                    UserCenterResourse.DicActionForm[listId[i]]?.GatewayOnlinePush(listChange[j], listChangeStatu[j]);
                }
            }
        }
@@ -2644,5 +2602,49 @@
        }
        #endregion
        #region ■ 一般方法___________________________
        /// <summary>
        /// 弹出网关不在线的
        /// </summary>
        private void ShowGatewayNotOnlineMsg()
        {
            Application.RunOnMainThread(() =>
            {
                //网关连接失败,请确认网络
                string msg = Language.StringByID(R.MyInternationalizationString.uGatewayIsNotLinkAndCheckNetwork);
                var control = new ShowMsgControl(ShowMsgType.Tip, msg);
                control.Show();
            });
        }
        /// <summary>
        /// 显示错误信息窗口
        /// </summary>
        /// <param name="msg"></param>
        private void ShowErrorMsg(string msg)
        {
            Application.RunOnMainThread(() =>
            {
                var contr = new ShowMsgControl(ShowMsgType.Error, msg);
                contr.Show();
            });
        }
        /// <summary>
        /// 显示Tip信息窗口
        /// </summary>
        /// <param name="msg"></param>
        private void ShowTipMsg(string msg)
        {
            Application.RunOnMainThread(() =>
            {
                var contr = new ShowMsgControl(ShowMsgType.Tip, msg);
                contr.Show();
            });
        }
        #endregion
    }
}