From f3e65daca7978b21b5888f49b1bf35e1a6e5d4fd Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期一, 13 七月 2020 12:33:31 +0800
Subject: [PATCH] 新版本
---
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayLogic.cs | 121 ++++++++++++++--------------------------
1 files changed, 42 insertions(+), 79 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayLogic.cs
index e9a6550..22eced4 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayLogic.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayLogic.cs
@@ -82,7 +82,7 @@
GatewayResourse.AppOldSelectGatewayId = string.Empty;
//浠庢枃浠朵腑鑾峰彇涓婁竴娆¢�夋嫨鐨勭綉鍏砳d
- byte[] data = Global.ReadFileByDirectory(DirNameResourse.LocalMemoryDirectory, DirNameResourse.AppOldSelectGatewayFile);
+ byte[] data = HdlFileLogic.Current.ReadFileByteContent(DirNameResourse.AppOldSelectGatewayFile);
if (data != null)
{
string strvalue = System.Text.Encoding.UTF8.GetString(data);
@@ -118,7 +118,7 @@
}
List<string> listBackupGwId = new List<string>();
- var fileData = Global.ReadFileByDirectory(DirNameResourse.LocalMemoryDirectory, DirNameResourse.BackupGatewayIdFile);
+ var fileData = HdlFileLogic.Current.ReadFileByteContent(DirNameResourse.BackupGatewayIdFile);
if (fileData != null)
{
//鏂板锛氳櫧鐒舵鐜囦綆锛屼絾鏄‘瀹炲彂鐢熶簡銆傚鏋滄湁缃戠粶鏃讹紝App閲嶆柊缁戝畾璁板綍鐨勭綉鍏冲け璐ョ殑璇�
@@ -149,26 +149,10 @@
//鍒犻櫎缃戝叧鏂囦欢
this.DeleteGatewayFile(gatewayId);
}
- //LOG杈撳嚭
- if (listDelete.Count > 0)
+ //濡傛灉缃戝叧閮芥病浜嗙殑璇�,鎶婂満鏅叏閮ㄥ垹浜�
+ if (listDelete.Count > 0 && this.GetAllLocalGateway().Count == 0)
{
- string msg = "鏈湴鎷ユ湁鐨勭綉鍏筹細";
- foreach (var gatewayId in this.dicGateway.Keys)
- {
- msg += gatewayId + ",";
- }
- msg += "\r\n琚垹闄ょ殑缃戝叧锛�";
- foreach (var gatewayId in listDelete)
- {
- msg += gatewayId + ",";
- }
- msg += "\r\n姝ゆ椂浜戠杩斿洖褰撳墠璐﹀彿鎵�缁戝畾鏈夌殑缃戝叧锛�";
- foreach (var gatewayId in result.Keys)
- {
- msg += gatewayId + ",";
- }
- var bytes = System.Text.Encoding.UTF8.GetBytes(msg);
- Common.Global.WriteFileByBytesByHomeId("GatewayDeleteLog.txt", bytes);
+ HdlSceneLogic.Current.DeleteAllLocalScene();
}
}
@@ -242,7 +226,7 @@
return false;
}
//娣诲姞缃戝叧鐨勮瘽,寮哄埗涓婚〉鍒锋柊
- UserView.UserPage.Instance.RefreshForm = true;
+ UserView.UserPage.Instance.RefreshAllForm = true;
return true;
}
@@ -407,7 +391,7 @@
//鑾峰彇鎺у埗涓讳汉璐﹀彿鐨凾oken
bindGateway.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
- var result = UserCenterLogic.GetResultCodeByRequestHttps("App/BindGatewayToHome", true, bindGateway);
+ var result = UserCenterLogic.GetResultCodeByRequestHttps("App/BindGatewayToHome", true, bindGateway, new List<string> { "NotCheck" });
if (result == "Error")
{
return -1;
@@ -562,7 +546,7 @@
}
//娣诲姞缃戝叧鐨勮瘽,寮哄埗涓婚〉鍒锋柊
- UserView.UserPage.Instance.RefreshForm = true;
+ UserView.UserPage.Instance.RefreshAllForm = true;
return 1;
}
@@ -576,42 +560,30 @@
/// </summary>
/// <param name="zbGateway">缃戝叧瀵硅薄</param>
/// <param name="gatewayName">缃戝叧鍚�</param>
- public async Task<bool> ReName(ZbGateway zbGateway, string gatewayName)
+ public bool ReName(ZbGateway zbGateway, string gatewayName)
{
- ZbGateway realWay = null;
- if (this.GetRealGateway(ref realWay, zbGateway) == false)
+ //鍙彇32涓猙yte
+ var bytes = new byte[32];
+ var reamarkGwBytes = System.Text.Encoding.UTF8.GetBytes(gatewayName);
+ System.Array.Copy(reamarkGwBytes, 0, bytes, 0, 32 < reamarkGwBytes.Length ? 32 : reamarkGwBytes.Length);
+ gatewayName = System.Text.Encoding.UTF8.GetString(bytes);
+
+ var jObject = new Newtonsoft.Json.Linq.JObject { { "Cluster_ID", 0 }, { "Command", 91 } };
+ var data = new Newtonsoft.Json.Linq.JObject { { "GwName", gatewayName } };
+ jObject.Add("Data", data);
+ var result = this.SendJobjectDataToGateway(zbGateway, "GwReName", jObject.ToString(), "GwReName_Respon");
+ if (result.ErrorMsg != null)
{
- //鑾峰彇缃戝叧瀵硅薄澶辫触
- string msg = Language.StringByID(R.MyInternationalizationString.uGetGatewayTagartFail);
- this.ShowErrorMsg(msg);
+ this.ShowTipMsg(result.ErrorMsg);
return false;
}
-
- var result = await realWay.GwReNameAsync(gatewayName);
- //妫�娴嬬綉鍏宠繑鍥炵殑鍏遍�氶敊璇姸鎬佺爜
- string error = HdlCheckLogic.Current.CheckCommonErrorCode(result);
- if (error != null)
- {
- this.ShowErrorMsg(error);
- return false;
- }
-
- if (result == null)
+ if (result.ErrorMsgDiv == 0)
{
//缃戝叧鍚嶇О淇敼澶辫触
string msg = Language.StringByID(R.MyInternationalizationString.uGatewayReNameFail);
-
- this.ShowErrorMsg(msg);
- return false;
- }
-
- //缃戝叧淇敼澶辫触
- if (result.gwReNameData == null)
- {
- //缃戝叧鍚嶇О淇敼澶辫触
- string msg = Language.StringByID(R.MyInternationalizationString.uGatewayReNameFail);
-
- this.ShowErrorMsg(msg);
+ //缃戝叧鍥炲瓒呮椂
+ msg = UserCenterLogic.CombineGatewayTimeOutMsg(msg, null, "鍥炲瓒呮椂");
+ this.ShowTipMsg(msg);
return false;
}
@@ -649,7 +621,7 @@
//鍒囨崲缃戝叧,淇濆瓨缂撳瓨
this.SaveGatewayIdToLocation(gatewayId);
//鍒囨崲缃戝叧鐨勮瘽,涓婚〉闇�瑕侀噸鏂板埛鏂�
- UserView.UserPage.Instance.RefreshForm = true;
+ UserView.UserPage.Instance.RefreshAllForm = true;
return true;
}
@@ -721,8 +693,7 @@
public void SaveGatewayIdToLocation(string gatewayId)
{
GatewayResourse.AppOldSelectGatewayId = gatewayId;
- byte[] data = System.Text.Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(GatewayResourse.AppOldSelectGatewayId));
- Global.WriteFileToDirectoryByBytes(DirNameResourse.LocalMemoryDirectory, DirNameResourse.AppOldSelectGatewayFile, data);
+ HdlFileLogic.Current.SaveFileContent(DirNameResourse.AppOldSelectGatewayFile, GatewayResourse.AppOldSelectGatewayId);
}
#endregion
@@ -1012,7 +983,7 @@
public List<string> GetAllGatewayFile()
{
List<string> list = new List<string>();
- List<string> listFile = Global.FileListByHomeId();
+ List<string> listFile = HdlFileLogic.Current.GetRootPathListFile();
foreach (string file in listFile)
{
//鍙幏鍙栫綉鍏宠澶�
@@ -1334,9 +1305,8 @@
/// 鑾峰彇缃戝叧鍔犵壒鏁堢殑鍚嶇О
/// </summary>
/// <param name="zbGateway"></param>
- /// <param name="mode"></param>
/// <returns></returns>
- public string GetGatewayName(ZbGateway zbGateway, GetNameMode mode = GetNameMode.SpecialGateway)
+ public string GetGatewayName(ZbGateway zbGateway)
{
string gwId = zbGateway.GwId;
if (this.dicGateway.ContainsKey(gwId) == false)
@@ -1351,14 +1321,11 @@
return name;
}
- if (mode == GetNameMode.SpecialGateway)
+ string keyName = Common.LocalDevice.deviceModelIdName + localWay.LinuxImageType;
+ if (LocalDevice.Current.dicDeviceAllNameID.ContainsKey(keyName) == true)
{
- string keyName = Common.LocalDevice.deviceModelIdName + localWay.LinuxImageType;
- if (LocalDevice.Current.dicDeviceAllNameID.ContainsKey(keyName) == true)
- {
- //娌℃湁鍚嶇О鏃讹紝鍒欎娇鐢≧鏂囦欢閲岄潰璁剧疆鐨勯粯璁よ澶囧悕绉�
- return Language.StringByID(LocalDevice.Current.dicDeviceAllNameID[keyName] + 20000);
- }
+ //娌℃湁鍚嶇О鏃讹紝鍒欎娇鐢≧鏂囦欢閲岄潰璁剧疆鐨勯粯璁よ澶囧悕绉�
+ return Language.StringByID(LocalDevice.Current.dicDeviceAllNameID[keyName] + 20000);
}
return string.Empty;
@@ -1538,11 +1505,11 @@
/// <summary>
/// 鍙樻洿缃戝叧鎴块棿
/// </summary>
- /// <param name="zbGateway">缃戝叧瀵硅薄</param>
+ /// <param name="gwId">缃戝叧Id</param>
/// <param name="roomId">鎴块棿ID</param>
- public void ChangedGatewayRoom(ZbGateway zbGateway, string roomId)
+ public void ChangedGatewayRoom(string gwId, string roomId)
{
- var localGateway = this.GetLocalGateway(zbGateway.GwId);
+ var localGateway = this.GetLocalGateway(gwId);
if (localGateway != null)
{
localGateway.RoomId = roomId;
@@ -2008,7 +1975,7 @@
//鑾峰彇鎺у埗涓讳汉璐﹀彿鐨凾oken
Pra.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
- List<string> listNotShowError = new List<string>() { "NoExist", "NoBind", "NoRecord" };
+ List<string> listNotShowError = new List<string>() { "NoExist", "NoBind", "NoRecord", "NotCheck" };
bool result = UserCenterLogic.GetResultStatuByRequestHttps("App/ReleaseGatewayToHome", true, Pra, listNotShowError);
if (result == false)
@@ -2034,9 +2001,7 @@
listBackupGwId.Add(strId);
//澶囦唤
- var strData = Newtonsoft.Json.JsonConvert.SerializeObject(listBackupGwId);
- var byteData = System.Text.Encoding.UTF8.GetBytes(strData);
- Global.WriteFileToDirectoryByBytes(DirNameResourse.LocalMemoryDirectory, DirNameResourse.BackupGatewayIdFile, byteData);
+ HdlFileLogic.Current.SaveFileContent(DirNameResourse.BackupGatewayIdFile, listBackupGwId);
}
}
@@ -2047,7 +2012,7 @@
{
HdlThreadLogic.Current.RunThread(() =>
{
- var fileData = Global.ReadFileByDirectory(DirNameResourse.LocalMemoryDirectory, DirNameResourse.BackupGatewayIdFile);
+ var fileData = HdlFileLogic.Current.ReadFileByteContent(DirNameResourse.BackupGatewayIdFile);
if (fileData == null)
{
return;
@@ -2065,7 +2030,7 @@
{
bindGateway.BindGateways.Clear();
bindGateway.BindGateways.Add(gwId);
- var result = UserCenterLogic.GetResultCodeByRequestHttps("App/BindGatewayToHome", true, bindGateway);
+ var result = UserCenterLogic.GetResultCodeByRequestHttps("App/BindGatewayToHome", true, bindGateway, new List<string> { "NotCheck" });
if (result == "Success")
{
this.listBackupGwId.Remove(gwId);
@@ -2079,7 +2044,7 @@
if (this.listBackupGwId.Count == 0)
{
//濡傛灉娌℃湁浜嗗唴瀹�,鍒欏垹闄ゆ枃浠�
- string file = UserCenterLogic.CombinePath(DirNameResourse.LocalMemoryDirectory, DirNameResourse.BackupGatewayIdFile);
+ string file = DirNameResourse.BackupGatewayIdFile;
if (System.IO.File.Exists(file) == true)
{
System.IO.File.Delete(file);
@@ -2088,9 +2053,7 @@
else
{
//澶囦唤
- var strData = Newtonsoft.Json.JsonConvert.SerializeObject(listBackupGwId);
- var byteData = System.Text.Encoding.UTF8.GetBytes(strData);
- Global.WriteFileToDirectoryByBytes(DirNameResourse.LocalMemoryDirectory, DirNameResourse.BackupGatewayIdFile, byteData);
+ HdlFileLogic.Current.SaveFileContent(DirNameResourse.BackupGatewayIdFile, listBackupGwId);
}
});
}
--
Gitblit v1.8.0