From c0ce2f57a4f836ebeb9e7b8b4b5a4407fd78dc86 Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期三, 23 九月 2020 10:06:05 +0800
Subject: [PATCH] 上传
---
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlShardLogic.cs | 115 +++++++++++++++++++++++++++++----------------------------
1 files changed, 58 insertions(+), 57 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlShardLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlShardLogic.cs
index 4b0826e..26a24b1 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlShardLogic.cs
+++ b/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;
@@ -81,10 +81,19 @@
return null;
}
var dataResult = Newtonsoft.Json.JsonConvert.DeserializeObject<GetShardInfoResult>(result);
+ //瀵瑰簲鏃х増鏈殑璁惧鏂囦欢 Device_OnoffOutput_abcdfrtgg_01
+ if (dataResult.ShareName.StartsWith("Device_") == true)
+ {
+ var strArry = dataResult.ShareName.Split(new string[] { "_" }, StringSplitOptions.None);
+ if (strArry.Length == 4)
+ {
+ dataResult.ShareName = strArry[0] + "_" + strArry[2] + "_" + strArry[3];
+ }
+ }
//鏂囦欢鍚嶅瓧
listFile.Add(dataResult.ShareName);
//淇濆瓨鍒版寚瀹氭枃浠跺す涓�
- Global.WriteFileToDirectoryByBytes(strDir, dataResult.ShareName, dataResult.ShareDataBytes);
+ HdlFileLogic.Current.SaveByteToFile(System.IO.Path.Combine(strDir, dataResult.ShareName), dataResult.ShareDataBytes);
//璁剧疆杩涘害鍊�
ProgressFormBar.Current.SetValue(i + 1, listMarkCount);
}
@@ -103,13 +112,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 +128,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 +138,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 +160,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 +172,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 +184,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 +195,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 +210,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 +221,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 +293,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();
@@ -365,7 +352,7 @@
//娓呯┖妤煎眰鏁版嵁
Common.Config.Instance.Home.FloorDics.Clear();
//鐒跺悗妫�娴嬫湰鍦扮殑鏂囦欢
- var listLocalFile = Global.FileListByHomeId();
+ var listLocalFile = HdlFileLogic.Current.GetRootPathListFile();
foreach (string fileName in listLocalFile)
{
if (fileName == DirNameResourse.ShardFloorFile)
@@ -405,8 +392,6 @@
//鍒犻櫎鎺夎繖涓埧闂存枃浠�
Global.DeleteFilebyHomeId(fileName);
dicUpdateTime.Remove(fileName);
-
- Config.Instance.Home.RemoveRoomId(nowRoom.Id);
}
//妫�娴嬫湰鍦板満鏅枃浠�,鏄惁瀛樺湪宸茬粡鍙栨秷浜嗗叡浜簡鐨�
else if (fileName.StartsWith("Scene_") == true)
@@ -448,7 +433,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 +449,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
@@ -520,6 +503,15 @@
{
//鎬ц兘浼樺寲锛氬鏋滄湰鍦版嫢鏈夎繖涓枃浠剁殑璇�,鐩存帴浣跨敤閭d釜鏂囦欢
string fileName = data.ShareName;
+ if (fileName.StartsWith("Device_") == true)
+ {
+ string[] Arry = fileName.Split(new string[] { "_" }, StringSplitOptions.RemoveEmptyEntries);
+ if (Arry.Length == 4)
+ {
+ //瀵瑰簲鏃ф暟鎹細Device_OnOffOutput_abcjdffdfj_01
+ fileName = Arry[0] + "_" + Arry[2] + "_" + Arry[3];
+ }
+ }
//璁板綍璧峰畠鐨勪富閿�
memberShardInfo.dicAllShardKeys[fileName] = data.DistributedMark;
@@ -600,11 +592,21 @@
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;
-
- //璁惧鏂囦欢
- dicDeviceFile[mainKeys] = fileName;
+ if (Arry.Length == 4)
+ {
+ //瀵瑰簲鏃ф暟鎹細Device_OnOffOutput_abcjdffdfj_01
+ string mainKeys = Common.LocalDevice.Current.GetDeviceMainKeys(Arry[2], Convert.ToInt32(Arry[3]));
+ this.dicShardDeviceFile[mainKeys] = Arry[0] + "_" + Arry[2] + "_" + Arry[3];
+ //璁惧鏂囦欢
+ dicDeviceFile[mainKeys] = this.dicShardDeviceFile[mainKeys];
+ }
+ else
+ {
+ string mainKeys = Common.LocalDevice.Current.GetDeviceMainKeys(Arry[1], Convert.ToInt32(Arry[2]));
+ this.dicShardDeviceFile[mainKeys] = fileName;
+ //璁惧鏂囦欢
+ dicDeviceFile[mainKeys] = fileName;
+ }
}
else if (fileName.StartsWith("Scene_") == true)
{
@@ -1079,7 +1081,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 +1311,6 @@
}
listDeleteFile.Add(device.FilePath);
}
-
//鍐嶅紕鍦烘櫙
foreach (var sceneUI in listSceneUI)
{
--
Gitblit v1.8.0