黄学彪
2020-07-09 5428935270159bfc42c2934ed7fb1091554fc9a4
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlShardLogic.cs
@@ -62,7 +62,7 @@
            List<string> listFile = new List<string>();
            //文件夹
            string strDir = System.IO.Path.Combine(DirNameResourse.LocalMemoryDirectory, DirNameResourse.DownLoadShardDirectory);
            string strDir = DirNameResourse.DownLoadShardDirectory;
            //不允许按系统的返回键
            Shared.Common.CommonPage.BackKeyCanClick = false;
@@ -84,7 +84,7 @@
                //文件名字
                listFile.Add(dataResult.ShareName);
                //保存到指定文件夹下
                Global.WriteFileToDirectoryByBytes(strDir, dataResult.ShareName, dataResult.ShareDataBytes);
                HdlFileLogic.Current.SaveTextToFile(System.IO.Path.Combine(strDir, dataResult.ShareName), System.Text.Encoding.UTF8.GetString(dataResult.ShareDataBytes));
                //设置进度值
                ProgressFormBar.Current.SetValue(i + 1, listMarkCount);
            }
@@ -103,13 +103,13 @@
        /// <returns></returns>
        public byte[] GetShardFileContent(string fileName)
        {
            string fullName = UserCenterLogic.CombinePath(DirNameResourse.LocalMemoryDirectory, DirNameResourse.DownLoadShardDirectory, fileName);
            string fullName = System.IO.Path.Combine(DirNameResourse.DownLoadShardDirectory, fileName);
            if (System.IO.File.Exists(fullName) == false)
            {
                return null;
            }
            string path = System.IO.Path.Combine(DirNameResourse.LocalMemoryDirectory, DirNameResourse.DownLoadShardDirectory);
            var varByte = Global.ReadFileByDirectory(path, fileName);
            string path = System.IO.Path.Combine(DirNameResourse.DownLoadShardDirectory, fileName);
            var varByte = HdlFileLogic.Current.ReadFileByteContent(path);
            return varByte;
        }
@@ -119,10 +119,7 @@
        /// <returns></returns>
        public List<string> GetLocalAllShardFile()
        {
            string path = UserCenterLogic.CombinePath(DirNameResourse.LocalMemoryDirectory, DirNameResourse.DownLoadShardDirectory);
            var listFile = HdlAutoBackupLogic.GetFileFromDirectory(path);
            return listFile;
            return HdlFileLogic.Current.GetFileFromDirectory(DirNameResourse.DownLoadShardDirectory);
        }
        /// <summary>
@@ -132,7 +129,7 @@
        /// <returns></returns>
        public bool IsFileExists(string fileName)
        {
            string fullName = UserCenterLogic.CombinePath(DirNameResourse.LocalMemoryDirectory, DirNameResourse.DownLoadShardDirectory, fileName);
            string fullName = System.IO.Path.Combine(DirNameResourse.DownLoadShardDirectory, fileName);
            if (System.IO.File.Exists(fullName) == false)
            {
                return false;
@@ -154,9 +151,9 @@
            {
                return;
            }
            string oldName = UserCenterLogic.CombinePath(fileName);
            string newName = UserCenterLogic.CombinePath(DirNameResourse.LocalMemoryDirectory, DirNameResourse.DownLoadShardDirectory, fileName);
            System.IO.File.Copy(oldName, newName, true);
            string oldName = System.IO.Path.Combine(Config.Instance.FullPath, fileName);
            string newName = System.IO.Path.Combine(DirNameResourse.DownLoadShardDirectory, fileName);
            HdlFileLogic.Current.CopyFile(oldName, newName);
        }
        /// <summary>
@@ -166,12 +163,9 @@
        public void AddShardFile(Common.Room room)
        {
            room.IsSharedRoom = true;
            var data = Newtonsoft.Json.JsonConvert.SerializeObject(room);
            var byteData = System.Text.Encoding.UTF8.GetBytes(data);
            string fullName = UserCenterLogic.CombinePath(DirNameResourse.LocalMemoryDirectory, DirNameResourse.DownLoadShardDirectory, room.FileName);
            string fullName = System.IO.Path.Combine(DirNameResourse.DownLoadShardDirectory, room.FileName);
            //写入内容
            Shared.IO.FileUtils.WriteFileByBytes(fullName, byteData);
            HdlFileLogic.Current.SaveFileContent(fullName, room);
        }
        /// <summary>
@@ -181,12 +175,9 @@
        public void AddShardFile(Common.SceneUI scene)
        {
            scene.IsSharedScene = true;
            var data = Newtonsoft.Json.JsonConvert.SerializeObject(scene);
            var byteData = System.Text.Encoding.UTF8.GetBytes(data);
            string fullName = UserCenterLogic.CombinePath(DirNameResourse.LocalMemoryDirectory, DirNameResourse.DownLoadShardDirectory, scene.FileName);
            string fullName = System.IO.Path.Combine(DirNameResourse.DownLoadShardDirectory, scene.FileName);
            //写入内容
            Shared.IO.FileUtils.WriteFileByBytes(fullName, byteData);
            HdlFileLogic.Current.SaveFileContent(fullName, scene);
        }
        /// <summary>
@@ -195,12 +186,9 @@
        /// <param name="dic">楼层</param>
        public void AddShardFile(Dictionary<string, string> dic)
        {
            var data = Newtonsoft.Json.JsonConvert.SerializeObject(dic);
            var byteData = System.Text.Encoding.UTF8.GetBytes(data);
            string fullName = UserCenterLogic.CombinePath(DirNameResourse.LocalMemoryDirectory, DirNameResourse.DownLoadShardDirectory, DirNameResourse.ShardFloorFile);
            string fullName = System.IO.Path.Combine(DirNameResourse.DownLoadShardDirectory, DirNameResourse.ShardFloorFile);
            //写入内容
            Shared.IO.FileUtils.WriteFileByBytes(fullName, byteData);
            HdlFileLogic.Current.SaveFileContent(fullName, dic);
        }
        #endregion
@@ -213,11 +201,8 @@
        /// <param name="fileName">指定文件名字</param>
        public void DeleteShardFile(string fileName)
        {
            fileName = UserCenterLogic.CombinePath(DirNameResourse.LocalMemoryDirectory, DirNameResourse.DownLoadShardDirectory, fileName);
            if (System.IO.File.Exists(fileName) == true)
            {
                System.IO.File.Delete(fileName);
            }
            fileName = System.IO.Path.Combine(DirNameResourse.DownLoadShardDirectory, fileName);
            HdlFileLogic.Current.DeleteFile(fileName);
        }
        /// <summary>
@@ -227,8 +212,7 @@
        {
            this.dicShardDeviceFile.Clear();
            //创建文件夹
            string strDir = System.IO.Path.Combine(DirNameResourse.LocalMemoryDirectory, DirNameResourse.DownLoadShardDirectory);
            Global.CreateEmptyDirectory(strDir, true);
            HdlFileLogic.Current.CreateDirectory(DirNameResourse.DownLoadShardDirectory, true);
        }
        #endregion
@@ -300,15 +284,9 @@
                //生成文件
                foreach (string fileName in listDbFile)
                {
                    var oldPath = UserCenterLogic.CombinePath(DirNameResourse.LocalMemoryDirectory, DirNameResourse.DownLoadShardDirectory, fileName);
                    var oldPath = System.IO.Path.Combine(DirNameResourse.DownLoadShardDirectory, fileName);
                    var newPath = System.IO.Path.Combine(Config.Instance.FullPath, fileName);
                    System.IO.File.Copy(oldPath, newPath, true);
                    if (fileName.StartsWith("Room_") == true)
                    {
                        //房间文件特殊处理
                        Config.Instance.Home.AddRoomId(fileName.Replace("Room_", string.Empty).Replace(".json", string.Empty));
                    }
                    HdlFileLogic.Current.CopyFile(oldPath, newPath);
                }
                //清空共享文件夹
                this.ClearShardDirectory();
@@ -405,8 +383,6 @@
                    //删除掉这个房间文件
                    Global.DeleteFilebyHomeId(fileName);
                    dicUpdateTime.Remove(fileName);
                    Config.Instance.Home.RemoveRoomId(nowRoom.Id);
                }
                //检测本地场景文件,是否存在已经取消了共享了的
                else if (fileName.StartsWith("Scene_") == true)
@@ -448,7 +424,7 @@
        private Dictionary<string, string> GetAllShardFileAgoUpdateTime()
        {
            var dicTime = new Dictionary<string, string>();
            var data = Global.ReadFileByDirectory(DirNameResourse.LocalMemoryDirectory, DirNameResourse.ShardFileUpdateTimeFile);
            var data = HdlFileLogic.Current.ReadFileByteContent(DirNameResourse.ShardFileUpdateTimeFile);
            if (data == null)
            {
                //目标文件不存在
@@ -464,9 +440,7 @@
        /// <param name="dicTime"></param>
        private void SaveAllShardFileAgoUpdateTime(Dictionary<string, string> dicTime)
        {
            var data = Newtonsoft.Json.JsonConvert.SerializeObject(dicTime);
            var byteData = System.Text.Encoding.UTF8.GetBytes(data);
            Global.WriteFileToDirectoryByBytes(DirNameResourse.LocalMemoryDirectory, DirNameResourse.ShardFileUpdateTimeFile, byteData);
            HdlFileLogic.Current.SaveFileContent(DirNameResourse.ShardFileUpdateTimeFile, dicTime);
        }
        #endregion
@@ -1079,7 +1053,7 @@
        /// <returns></returns>
        private string UpLoadBigBackupFileToDB(MemberShardInfoData memberShardInfo, string fileName)
        {
            string fullName = UserCenterLogic.CombinePath(DirNameResourse.LocalMemoryDirectory, DirNameResourse.DownLoadShardDirectory, fileName);
            string fullName = System.IO.Path.Combine(DirNameResourse.DownLoadShardDirectory, fileName);
            if (System.IO.File.Exists(fullName) == false)
            {
                return null;
@@ -1309,7 +1283,6 @@
                }
                listDeleteFile.Add(device.FilePath);
            }
            //再弄场景
            foreach (var sceneUI in listSceneUI)
            {