黄学彪
2019-12-13 6cbd0936d3245fd7c433884ac9c1f5448a7cf657
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlShardLogic.cs
@@ -478,7 +478,6 @@
        /// <summary>
        /// 获取成员共享列表然后保存到本地(用完之后最好调用清空 ClearShardDirectory函数清空)
        /// </summary>
        /// <param name="SubAccountDistributedMark">成员列表接口返回的SubAccountDistributedMark</param>
        /// <param name="memberShardInfo">
        /// <para>成员的分享数据</para>
        /// <para>如果不知道这是什么东西,就New一个,然后缓存起来,调用其他函数都需要这个东西</para>
@@ -495,8 +494,9 @@
            }
            memberShardInfo.Refresh = false;
            //打开进度条
            ProgressBar.Show();
            //正在获取分享数据
            ProgressFormBar.Current.Start();
            ProgressFormBar.Current.SetMsg(Language.StringByID(R.MyInternationalizationString.uShardContentGetting));
            var infoPra = new
            {
@@ -508,7 +508,7 @@
            if (result == null)
            {
                //关闭进度条
                ProgressBar.Close();
                ProgressFormBar.Current.Close();
                return false;
            }
            var listData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ReceiveShardInfoResult>>(result);
@@ -543,7 +543,7 @@
            if (listFile == null)
            {
                //关闭进度条
                ProgressBar.Close();
                ProgressFormBar.Current.Close();
                return false;
            }
@@ -551,7 +551,7 @@
            this.GetMemberShardContentListFromLocal(memberShardInfo);
            //关闭进度条
            ProgressBar.Close();
            ProgressFormBar.Current.Close();
            return true;
        }
@@ -572,41 +572,45 @@
            //先初始化房间
            foreach (string fileName in listFile)
            {
                if (fileName.StartsWith("Room_") == true)
                try
                {
                    //房间文件
                    var byteData = this.GetShardFileContent(fileName);
                    if (byteData != null)
                    if (fileName.StartsWith("Room_") == true)
                    {
                        string valueData = System.Text.Encoding.UTF8.GetString(byteData);
                        var roomTemp = Newtonsoft.Json.JsonConvert.DeserializeObject<Common.Room>(valueData);
                        memberShardInfo.dicShardRoom[fileName] = roomTemp;
                        //房间文件
                        var byteData = this.GetShardFileContent(fileName);
                        if (byteData != null)
                        {
                            string valueData = System.Text.Encoding.UTF8.GetString(byteData);
                            var roomTemp = Newtonsoft.Json.JsonConvert.DeserializeObject<Common.Room>(valueData);
                            memberShardInfo.dicShardRoom[fileName] = roomTemp;
                        }
                    }
                }
                else if (fileName == DirNameResourse.ShardFloorFile)
                {
                    //楼层文件
                    var byteData = this.GetShardFileContent(fileName);
                    if (byteData != null)
                    else if (fileName == DirNameResourse.ShardFloorFile)
                    {
                        string valueData = System.Text.Encoding.UTF8.GetString(byteData);
                        memberShardInfo.dicShardFloor = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, string>>(valueData);
                        //楼层文件
                        var byteData = this.GetShardFileContent(fileName);
                        if (byteData != null)
                        {
                            string valueData = System.Text.Encoding.UTF8.GetString(byteData);
                            memberShardInfo.dicShardFloor = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, string>>(valueData);
                        }
                    }
                }
                else if (fileName.StartsWith("Device_") == true)
                {
                    string[] Arry = fileName.Split(new string[] { "_" }, StringSplitOptions.RemoveEmptyEntries);
                    string mainKeys = Common.LocalDevice.Current.GetDeviceMainKeys(Arry[2], Convert.ToInt32(Arry[3]));
                    this.dicShardDeviceFile[mainKeys] = fileName;
                    else if (fileName.StartsWith("Device_") == true)
                    {
                        string[] Arry = fileName.Split(new string[] { "_" }, StringSplitOptions.RemoveEmptyEntries);
                        string mainKeys = Common.LocalDevice.Current.GetDeviceMainKeys(Arry[2], Convert.ToInt32(Arry[3]));
                        this.dicShardDeviceFile[mainKeys] = fileName;
                    //设备文件
                    listDeviceFile.Add(fileName);
                        //设备文件
                        listDeviceFile.Add(fileName);
                    }
                    else if (fileName.StartsWith("Scene_") == true)
                    {
                        //场景文件
                        listSceneFile.Add(fileName);
                    }
                }
                else if (fileName.StartsWith("Scene_") == true)
                {
                    //场景文件
                    listSceneFile.Add(fileName);
                }
                catch (Exception ex) { HdlLogLogic.Current.WriteLog(ex); }
            }
            //设置房间里面设备的UI对象(因为这个东西是反序列化出来的,设备UI对象是不序列化对象)