From 7b60238359b94125d591678eff105ae2bf47843f Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期五, 15 十一月 2019 13:16:21 +0800
Subject: [PATCH] 2019.11.15
---
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/UserCenterLogic.cs | 157 +++++++++++++++++++++++++++-------------------------
1 files changed, 82 insertions(+), 75 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/UserCenterLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/UserCenterLogic.cs
index cb79387..b778f68 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/UserCenterLogic.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/UserCenterLogic.cs
@@ -47,7 +47,7 @@
}
var revertObj = JsonConvert.DeserializeObject<ResponsePack>(Encoding.UTF8.GetString(byteData));
//妫�娴嬫槸鍚﹀瓨鍦ㄩ敊璇俊鎭�
- return CheckNotEorrorMsg(revertObj, RequestName, listNotShowError);
+ return CheckNotEorrorMsg(revertObj, RequestName, listNotShowError, obj);
}
/// <summary>
@@ -114,7 +114,7 @@
}
var revertObj = JsonConvert.DeserializeObject<ResponsePack>(Encoding.UTF8.GetString(byteData));
//妫�娴嬮敊璇�
- bool notError = CheckNotEorrorMsg(revertObj, RequestName, listNotShowError);
+ bool notError = CheckNotEorrorMsg(revertObj, RequestName, listNotShowError, obj);
if (notError == false)
{
return null;
@@ -165,7 +165,7 @@
var data = JsonConvert.DeserializeObject<ResponsePack>(data2);
if (data != null && string.IsNullOrEmpty(data.StateCode) == false)
{
- bool notError = CheckNotEorrorMsg(data, RequestName, listNotShowError);
+ bool notError = CheckNotEorrorMsg(data, RequestName, listNotShowError, obj);
if (notError == false)
{
return null;
@@ -256,7 +256,8 @@
/// <param name="revertObj">浠庢帴鍙f帴鏀跺埌鐨勬暟鎹�</param>
/// <param name="RequestName">璇锋眰鎺ュ彛</param>
/// <param name="listNotShowError">涓嶉渶瑕佹樉绀洪敊璇殑閿欒绫诲埆(鎺ュ彛杩斿洖鐨勯敊璇被鍒�)</param>
- public static bool CheckNotEorrorMsg(ResponsePack revertObj, string RequestName, List<string> listNotShowError = null)
+ /// <param name="pra">璇锋眰鐨勫弬鏁�</param>
+ public static bool CheckNotEorrorMsg(ResponsePack revertObj, string RequestName, List<string> listNotShowError = null, object pra = null)
{
if (revertObj == null)
{
@@ -284,14 +285,17 @@
//濡傛灉鐢ㄦ埛宸茬粡閫�鍑轰簡鐧婚檰,鍒欎笉澶勭悊
return;
}
- string msg = IMessageCommon.Current.GetMsgByRequestName(RequestName, revertObj.StateCode);
- var control = new ShowMsgControl(ShowMsgType.Tip, msg);
- control.Show();
-
- //鏃犳晥鐧诲綍Token
- if (revertObj.StateCode == "NoLogin")
+ string msg = IMessageCommon.Current.GetMsgByRequestName(RequestName, revertObj.StateCode, pra);
+ if (msg != null)
{
- UserCenterLogic.ReLoginAgain(Config.Instance.Account, false);
+ var control = new ShowMsgControl(ShowMsgType.Tip, msg);
+ control.Show();
+
+ //鏃犳晥鐧诲綍Token
+ if (revertObj.StateCode == "NoLogin")
+ {
+ UserCenterLogic.ReLoginAgain(Config.Instance.Account, false);
+ }
}
});
@@ -305,7 +309,7 @@
/// </summary>
/// <param name="checkAuthority">鏄惁妫�娴嬫潈闄�</param>
/// <returns></returns>
- private static HttpConnectMode GetHttpConnectMode(bool checkAuthority)
+ public static HttpConnectMode GetHttpConnectMode(bool checkAuthority)
{
if (checkAuthority == false)
{
@@ -393,35 +397,32 @@
{
//璁剧疆褰撳墠婵�娲荤殑鐢婚潰ID
UserCenterResourse.NowActionFormID = UserCenterResourse.listActionFormId[index];
- if (UserCenterResourse.DicActionForm.ContainsKey(UserCenterResourse.NowActionFormID) == true)
+ //杩藉姞鏉′欢涓�:鍏抽棴鐨勭晫闈负EditorCommonForm鐨勬椂鍊欐墠澶勭悊
+ if ((form is EditorCommonForm) && UserCenterResourse.DicActionForm.ContainsKey(UserCenterResourse.NowActionFormID) == true)
{
- var Myform = UserCenterResourse.DicActionForm[UserCenterResourse.NowActionFormID];
- if (Myform != null)
+ try
{
- try
+ var Myform = UserCenterResourse.DicActionForm[UserCenterResourse.NowActionFormID];
+ if (Myform is EditorCommonForm)
{
//瑙﹀彂鐣岄潰鍐嶆婵�娲荤殑浜嬩欢
- int value = Myform.FormActionAgainEvent();
+ int value = ((EditorCommonForm)Myform).FormActionAgainEvent();
if (value == 1)
{
//Log鍑哄姏
HdlLogLogic.Current.WriteLog(1, Myform.FormID + " 琚縺娲�");
}
}
- catch (Exception ex)
- {
- //鍑虹幇鏈煡閿欒,鏁版嵁涓㈠け
- var alert = new ShowMsgControl(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.uUnknownErrorAndDataLost));
- alert.Show();
-
- //Log鍑哄姏
- string msg = ex.Message + "\r\n";
- msg += ex.TargetSite.ToString();
- HdlLogLogic.Current.WriteLog(-1, msg);
- }
}
- //閲婃斁杩欎釜鍙橀噺
- Myform = null;
+ catch (Exception ex)
+ {
+ //鍑虹幇鏈煡閿欒,鏁版嵁涓㈠け
+ var alert = new ShowMsgControl(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.uUnknownErrorAndDataLost));
+ alert.Show();
+
+ //Log鍑哄姏
+ HdlLogLogic.Current.WriteLog(ex);
+ }
}
}
else if (actionForm != null && actionForm is UserView.UserPage)
@@ -431,17 +432,21 @@
{
//璁剧疆褰撳墠婵�娲荤殑鐢婚潰ID
UserCenterResourse.NowActionFormID = UserCenterResourse.listActionFormId[index];
- if (UserCenterResourse.DicActionForm.ContainsKey(UserCenterResourse.NowActionFormID) == true)
+ //杩藉姞鏉′欢涓�:鍏抽棴鐨勭晫闈负EditorCommonForm鐨勬椂鍊欐墠澶勭悊
+ if ((form is EditorCommonForm) && UserCenterResourse.DicActionForm.ContainsKey(UserCenterResourse.NowActionFormID) == true)
{
- var Myform = UserCenterResourse.DicActionForm[UserCenterResourse.NowActionFormID];
try
{
- //瑙﹀彂鐣岄潰鍐嶆婵�娲荤殑浜嬩欢
- int value = Myform.FormActionAgainEvent();
- if (value == 1)
+ var Myform = UserCenterResourse.DicActionForm[UserCenterResourse.NowActionFormID];
+ if (Myform is EditorCommonForm)
{
- //Log鍑哄姏
- HdlLogLogic.Current.WriteLog(1, Myform.FormID + " 琚縺娲�");
+ //瑙﹀彂鐣岄潰鍐嶆婵�娲荤殑浜嬩欢
+ int value = ((EditorCommonForm)Myform).FormActionAgainEvent();
+ if (value == 1)
+ {
+ //Log鍑哄姏
+ HdlLogLogic.Current.WriteLog(1, Myform.FormID + " 琚縺娲�");
+ }
}
}
catch (Exception ex)
@@ -451,12 +456,8 @@
alert.Show();
//Log鍑哄姏
- string msg = ex.Message + "\r\n";
- msg += ex.TargetSite.ToString();
- HdlLogLogic.Current.WriteLog(-1, msg);
+ HdlLogLogic.Current.WriteLog(ex);
}
- //閲婃斁杩欎釜鍙橀噺
- Myform = null;
}
}
}
@@ -541,7 +542,7 @@
/// <param name="all">true:鍏ㄩ儴鍒犻櫎(鐢ㄤ簬浣忓畢鍒犻櫎) false:閲嶈鐨勬枃浠朵笉鍒犻櫎</param>
public static void DeleteAllLocationFile(bool all = true)
{
- string dPath = UserCenterResourse.LocalRootPath;
+ string dPath = Config.Instance.FullPath;
if (System.IO.Directory.Exists(dPath) == false)
{
return;
@@ -579,11 +580,6 @@
//涓嶈兘鍒犻櫎Config鏂囦欢
return true;
}
- else if (fileName.StartsWith("DeviceUI_") == true)
- {
- //涓嶈兘鍒犻櫎璁惧UI鏂囦欢
- return true;
- }
else if (fileName.StartsWith("House_") == true)
{
//涓嶈兘鍒犻櫎浣忓畢鏂囦欢
@@ -603,7 +599,7 @@
/// <param name="noticeDb">鏄惁閫氱煡浜戠</param>
public static void ReLoginAgain(string account = "", bool noticeDb = true)
{
- UserCenterResourse.oldAccountId = string.Empty;
+ UserCenterResourse.Option.OldAccountId = string.Empty;
//鍏抽棴鎵�鏈夋帴鏀�
HdlDeviceAttributeLogic.Current.RemoveAllEvent();
//娓呴櫎鍗囩骇鍒楄〃
@@ -613,7 +609,7 @@
HdlThreadLogic.Current.RunThread(async () =>
{
//妫�娴婣PP鏄惁鑳藉閫�鍑�
- while (UserCenterResourse.AppCanSignout == false)
+ while (UserCenterResourse.Option.AppCanSignout == false)
{
await Task.Delay(500);
}
@@ -627,7 +623,6 @@
try
{
ZigBee.Device.ZbGateway.RemoteMqttClient?.DisconnectAsync();
- ZigBee.Device.ZbGateway.RemoteMqttClient = null;
}
catch { }
@@ -636,7 +631,7 @@
//閫氱煡浜戠锛屽凡缁忛��鍑虹櫥闄�
var result = await CommonPage.Instance.RequestHttpsZigbeeBytesResultAsync("ZigbeeUsers/SignOut", null, "GET");
}
- Application.RunOnMainThread(() =>
+ HdlThreadLogic.Current.RunMain(() =>
{
//鍏抽棴鎵�鏈夋墦寮�浜嗙殑鐣岄潰
CloseAllOpenForm();
@@ -723,7 +718,7 @@
/// <returns></returns>
public static string CombinePath(params object[] listNames)
{
- string rootPath = UserCenterResourse.LocalRootPath;
+ string rootPath = Config.Instance.FullPath;
if (listNames == null || listNames.Length == 0)
{
return rootPath;
@@ -794,22 +789,20 @@
public async static Task<bool> InitUserCenterMenmoryAndThread()
{
//APP缂撳瓨鍔犺浇寮�濮�
- UserCenterResourse.AppCanSignout = false;
+ UserCenterResourse.Option.AppCanSignout = false;
//寮哄埗鎸囧畾涓嶅叧闂繘搴︽潯
ProgressBar.SetCloseBarFlag(true);
//鍙湁鍦ㄤ綇瀹匢D涓嶄竴鏍风殑鏃跺�欐墠鍋氳繖涓搷浣�
- if (Common.Config.Instance.HomeId != UserCenterResourse.oldHomeStringId
- || Common.Config.Instance.Account != UserCenterResourse.oldAccountId)
+ if (Common.Config.Instance.HomeId != UserCenterResourse.Option.OldHomeStringId
+ || Common.Config.Instance.Account != UserCenterResourse.Option.OldAccountId)
{
- //鍙樻洿鏍圭洰褰曡矾寰�
- UserCenterResourse.LocalRootPath = System.IO.Path.Combine(Shared.IO.FileUtils.RootPath, Config.Instance.Guid, Config.Instance.Home.Id);
- UserCenterResourse.UserPictruePath = System.IO.Path.Combine(Shared.IO.FileUtils.RootPath, Config.Instance.Guid, DirNameResourse.UserPictrueDirectory);
-
//鍔犺浇璐﹀彿閰嶇疆淇℃伅
var optionInfo = UserCenterResourse.Option.Load();
UserCenterResourse.Option = optionInfo;
+ //鍙樻洿鏍圭敤鎴峰浘鐗囩洰褰曡矾寰�
+ UserCenterResourse.Option.UserPictruePath = System.IO.Path.Combine(Shared.IO.FileUtils.RootPath, Config.Instance.Guid, DirNameResourse.UserPictrueDirectory);
//鍒濆鍖栫櫥闄嗚处鍙风殑淇℃伅
await InitUserAccoutInfo();
@@ -835,8 +828,8 @@
//淇濆瓨鐢ㄦ埛鐨勭櫥闄嗕俊鎭埌鏈湴
SaveUserInformationToLocation();
- UserCenterResourse.oldHomeStringId = Common.Config.Instance.HomeId;
- UserCenterResourse.oldAccountId = Common.Config.Instance.Account;
+ UserCenterResourse.Option.OldHomeStringId = Common.Config.Instance.HomeId;
+ UserCenterResourse.Option.OldAccountId = Common.Config.Instance.Account;
//鍚屾鏁版嵁(浜屾璋冪敤娌″叧绯�)
var result = await HdlAutoBackupLogic.SynchronizeDbAutoBackupData();
@@ -849,6 +842,9 @@
//鍚屾浜戠鐨勭綉鍏砳d锛屽鏋滄湰鍦版嫢鏈変簯绔笉瀛樺湪鐨刬d锛屽垯琛ㄧず搴旇琚崲缁戜簡锛岀洿鎺ュ垹闄�
HdlGatewayLogic.Current.SynchronizeDbGateway();
+ //鍒濆鍖栦綇瀹呭璞�
+ Common.Config.Instance.Home = House.GetHouseByHouseId(Common.Config.Instance.HomeId);
+
//鍒濆鍖栨埧闂�(閮洩鍩庨偅杈逛笉鍋氬鐞�,闇�瑕佽繖閲岀壒娈婃墽琛屼竴姝�)
Room.RefreshAllRoomByLocation();
@@ -859,17 +855,17 @@
ProgressBar.SetAppendText(string.Empty);
//0:宸茬粡鍚屾杩囷紝涓嶉渶瑕佸悓姝�,杩欎釜鏃跺�欓渶瑕佹彁绀哄浠�
- if (result == 0)
- {
- //寮�鍚嚜鍔ㄥ浠芥彁绀�
- //HdlAutoBackupLogic.ShowAutoBackupPromptedForm();
- }
+ //if (result == 0)
+ //{
+ // //寮�鍚嚜鍔ㄥ浠芥彁绀�
+ // HdlAutoBackupLogic.ShowAutoBackupPromptedForm();
+ //}
}
//鎭㈠鍙叧闂繘搴︽潯
ProgressBar.SetCloseBarFlag(false);
//APP缂撳瓨鍔犺浇瀹屾垚
- UserCenterResourse.AppCanSignout = true;
+ UserCenterResourse.Option.AppCanSignout = true;
return true;
}
@@ -886,7 +882,7 @@
{
//鑾峰彇鏈湴璁板綍鐨勭敤鎴蜂俊鎭�
UserCenterResourse.UserInfo = GetUserInformationFromLocation();
- UserCenterResourse.UserInfo.UserIconFile = System.IO.Path.Combine(UserCenterResourse.UserPictruePath, "Admin.png");
+ UserCenterResourse.UserInfo.UserIconFile = System.IO.Path.Combine(UserCenterResourse.Option.UserPictruePath, "Admin.png");
//鑾峰彇鐧诲綍璐﹀彿鐨勪俊鎭�
var pra = new AccountInfoPra();
@@ -957,7 +953,19 @@
}
UserCenterResourse.UserInfo = userInfo;
- UserCenterResourse.UserInfo.UserIconFile = System.IO.Path.Combine(UserCenterResourse.UserPictruePath, "Admin.png");
+ UserCenterResourse.UserInfo.UserIconFile = System.IO.Path.Combine(UserCenterResourse.Option.UserPictruePath, "Admin.png");
+ if (UserCenterResourse.UserInfo.HeadImage != null)
+ {
+ //鍐欏叆澶村儚鍐呭
+ Shared.IO.FileUtils.WriteFileByBytes(UserCenterResourse.UserInfo.UserIconFile, UserCenterResourse.UserInfo.HeadImage);
+ }
+ UserCenterResourse.UserInfo.HeadImage = null;
+ //鎵嬪娍瀵嗙爜
+ UserCenterResourse.Option.GestureAuthentication = UserCenterResourse.UserInfo.GesturePwd == null ? string.Empty : UserCenterResourse.UserInfo.GesturePwd;
+ UserCenterResourse.UserInfo.GesturePwd = null;
+ //瀵嗙爜楠岃瘉
+ UserCenterResourse.Option.PswAuthentication = UserCenterResourse.UserInfo.StringPwd == null ? string.Empty : UserCenterResourse.UserInfo.StringPwd;
+ UserCenterResourse.UserInfo.StringPwd = null;
//鍒濆鍖栫鐞嗗憳鎺у埗涓讳汉鐨勮繛鎺ュ湴鍧�(鍥犱负杩欎釜杩炴帴Token鏄笉浼氭敼鍙樼殑,鎵�浠ュ彧闇�瑕佸垵濮嬪寲涓�娆�)
await InitAdminConnectMainInfo();
@@ -996,13 +1004,12 @@
{
return;
}
- string nowFile = System.IO.Path.Combine(UserCenterResourse.UserPictruePath, "Admin.png");
- if (System.IO.File.Exists(nowFile) == true)
+ if (System.IO.File.Exists(UserCenterResourse.UserInfo.UserIconFile) == true)
{
return;
}
//澶嶅埗杩囧幓
- System.IO.File.Copy(defultFile, nowFile);
+ System.IO.File.Copy(defultFile, UserCenterResourse.UserInfo.UserIconFile);
}
#endregion
@@ -1162,9 +1169,9 @@
Global.CreateEmptyDirectory(directory);
//鐢ㄦ埛鍥剧墖鐩綍璺緞銆愭枃浠跺す銆�
- if (!System.IO.Directory.Exists(UserCenterResourse.UserPictruePath))
+ if (UserCenterResourse.Option.UserPictruePath != string.Empty && !System.IO.Directory.Exists(UserCenterResourse.Option.UserPictruePath))
{
- System.IO.Directory.CreateDirectory(UserCenterResourse.UserPictruePath);
+ System.IO.Directory.CreateDirectory(UserCenterResourse.Option.UserPictruePath);
}
}
--
Gitblit v1.8.0