HDL Home App 第二版本 旧平台金堂用 正在使用
黄学彪
2021-01-14 d78515ac4ac8cf4a1785d9df18058d6724f12b79
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayLogic.cs
@@ -33,10 +33,6 @@
            }
        }
        /// <summary>
        /// 备份用的网关ID
        /// </summary>
        private List<string> listBackupGwId = new List<string>();
        /// <summary>
        /// 网关文件的前缀名字
        /// </summary>
        private string gwFirstName = "Gateway_";
@@ -117,7 +113,7 @@
                return;
            }
            List<string> listBackupGwId = new List<string>();
            var listBackupGwId = new List<string>();
            var fileData = HdlFileLogic.Current.ReadFileByteContent(DirNameResourse.BackupGatewayIdFile);
            if (fileData != null)
            {
@@ -2049,10 +2045,16 @@
        /// <param name="zbGateway"></param>
        public void BackupGatewayIdOnNotNetwork(ZbGateway zbGateway)
        {
            var strId = zbGateway.GwId;
            if (listBackupGwId.Contains(strId) == false)
            var listBackupGwId = new List<string>();
            var fileData = HdlFileLogic.Current.ReadFileByteContent(DirNameResourse.BackupGatewayIdFile);
            if (fileData != null)
            {
                listBackupGwId.Add(strId);
                listBackupGwId = JsonConvert.DeserializeObject<List<string>>(System.Text.Encoding.UTF8.GetString(fileData));
            }
            if (listBackupGwId.Contains(zbGateway.GwId) == false)
            {
                listBackupGwId.Add(zbGateway.GwId);
                //备份
                HdlFileLogic.Current.SaveFileContent(DirNameResourse.BackupGatewayIdFile, listBackupGwId);
@@ -2069,9 +2071,9 @@
            {
                return true;
            }
            this.listBackupGwId = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(System.Text.Encoding.UTF8.GetString(fileData));
            var listBackupGwId = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(System.Text.Encoding.UTF8.GetString(fileData));
            var listTempId = new List<string>();
            listTempId.AddRange(this.listBackupGwId);
            listTempId.AddRange(listBackupGwId);
            //调用接口,绑定网关
            var bindGateway = new BindGatewayPra();
@@ -2080,20 +2082,24 @@
            foreach (var gwId in listTempId)
            {
                bindGateway.BindGateways.Clear();
                bindGateway.BindGateways.Add(gwId);
                var result = UserCenterLogic.GetResultCodeByRequestHttps("App/BindGatewayToHome", true, bindGateway, new List<string> { "NotCheck" }, false);
                if (result == "Success")
                if (this.IsGatewayExist(gwId) == true)
                {
                    this.listBackupGwId.Remove(gwId);
                    bindGateway.BindGateways.Clear();
                    bindGateway.BindGateways.Add(gwId);
                    var result = UserCenterLogic.GetResultCodeByRequestHttps("App/BindGatewayToHome", true, bindGateway, new List<string> { "NotCheck" }, false);
                    if (result == "Success")
                    {
                        listBackupGwId.Remove(gwId);
                    }
                    if (result == "Error")
                    {
                        break;
                    }
                }
                if (result == "Error")
                {
                    break;
                }
                listBackupGwId.Remove(gwId);
            }
            if (this.listBackupGwId.Count == 0)
            if (listBackupGwId.Count == 0)
            {
                //如果没有了内容,则删除文件
                string file = DirNameResourse.BackupGatewayIdFile;