From bba578c2f0acf2eca747edcb69426771e0cadd32 Mon Sep 17 00:00:00 2001
From: WJC <wjc@hdlchina.com.cn>
Date: 星期一, 23 三月 2020 18:20:50 +0800
Subject: [PATCH] 2020-03-23-3
---
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/UserCenterLogic.cs | 170 +++++++++++++++++++++++++++++++-------------------------
1 files changed, 94 insertions(+), 76 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/UserCenterLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/UserCenterLogic.cs
index 26f82ee..97d8067 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/UserCenterLogic.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/UserCenterLogic.cs
@@ -428,74 +428,17 @@
var actionForm = UserView.HomePage.Instance.GetChildren(UserView.HomePage.Instance.ChildrenCount - 1);
if (actionForm != null && actionForm is CommonFormBase)
{
- //璁剧疆褰撳墠婵�娲荤殑鐢婚潰ID
- UserCenterResourse.NowActionFormID = UserCenterResourse.listActionFormId[index];
- //杩藉姞鏉′欢涓�:鍏抽棴鐨勭晫闈负EditorCommonForm鐨勬椂鍊欐墠澶勭悊
- if ((form is EditorCommonForm) && UserCenterResourse.DicActionForm.ContainsKey(UserCenterResourse.NowActionFormID) == true)
- {
- try
- {
- EditorCommonForm Myform = UserCenterResourse.DicActionForm[UserCenterResourse.NowActionFormID] as EditorCommonForm;
- if (Myform != null)
- {
- //閲嶇疆宸︽粦浣胯兘
- Myform.ScrollEnabled = Myform.ScrollEnabled;
- //瑙﹀彂鐣岄潰鍐嶆婵�娲荤殑浜嬩欢
- int value = 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.uUnKnownError));
- alert.Show();
-
- //Log鍑哄姏
- HdlLogLogic.Current.WriteLog(ex);
- }
- }
+ //璋冪敤鐣岄潰閲嶆柊婵�娲荤殑鍑芥暟
+ CallFormActionAgainEvent(form, index);
}
else if (actionForm != null && actionForm is UserView.UserPage)
{
- //杩欓噷瀹冨凡缁忛��鍒颁富椤典簡,濡傛灉瀹冨寘鍚釜浜轰腑蹇冧富椤电殑璇�
- if (UserCenterResourse.listActionFormId.Contains("UserMainForm") == true)
+ //杩欓噷瀹冨凡缁忛��鍒颁富椤典簡
+ if (UserCenterResourse.listActionFormId.Contains("UserMainForm") == true//涓汉涓績
+ || UserCenterResourse.listActionFormId.Contains("HomeMainPageForm") == true)//
{
- //璁剧疆褰撳墠婵�娲荤殑鐢婚潰ID
- UserCenterResourse.NowActionFormID = UserCenterResourse.listActionFormId[index];
- //杩藉姞鏉′欢涓�:鍏抽棴鐨勭晫闈负EditorCommonForm鐨勬椂鍊欐墠澶勭悊
- if ((form is EditorCommonForm) && UserCenterResourse.DicActionForm.ContainsKey(UserCenterResourse.NowActionFormID) == true)
- {
- try
- {
- EditorCommonForm Myform = UserCenterResourse.DicActionForm[UserCenterResourse.NowActionFormID] as EditorCommonForm;
- if (Myform != null)
- {
- //閲嶇疆宸︽粦浣胯兘
- Myform.ScrollEnabled = Myform.ScrollEnabled;
- //瑙﹀彂鐣岄潰鍐嶆婵�娲荤殑浜嬩欢
- int value = 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.uUnKnownError));
- alert.Show();
-
- //Log鍑哄姏
- HdlLogLogic.Current.WriteLog(ex);
- }
- }
+ //璋冪敤鐣岄潰閲嶆柊婵�娲荤殑鍑芥暟
+ CallFormActionAgainEvent(form, index);
}
}
}
@@ -504,6 +447,43 @@
UserCenterResourse.listActionFormId.Remove(UserCenterResourse.DicActionForm[formName].FormID);
//绉婚櫎鐢婚潰
UserCenterResourse.DicActionForm.Remove(formName);
+ }
+ }
+
+ /// <summary>
+ /// 璋冪敤鐣岄潰閲嶆柊婵�娲荤殑鍑芥暟
+ /// </summary>
+ /// <param name="form">鍏抽棴鐨勭晫闈㈠璞�</param>
+ /// <param name="index">褰撳墠闇�瑕侀噸鏂版縺娲荤晫闈㈢殑绱㈠紩</param>
+ private static void CallFormActionAgainEvent(CommonFormBase form, int index)
+ {
+ //璁剧疆褰撳墠婵�娲荤殑鐢婚潰ID
+ UserCenterResourse.NowActionFormID = UserCenterResourse.listActionFormId[index];
+ //杩藉姞鏉′欢涓�:鍏抽棴鐨勭晫闈负EditorCommonForm鐨勬椂鍊欐墠澶勭悊
+ if ((form is EditorCommonForm) && UserCenterResourse.DicActionForm.ContainsKey(UserCenterResourse.NowActionFormID) == true)
+ {
+ try
+ {
+ var Myform = UserCenterResourse.DicActionForm[UserCenterResourse.NowActionFormID] as EditorCommonForm;
+ //閲嶇疆宸︽粦浣胯兘
+ Myform.ScrollEnabled = Myform.ScrollEnabled;
+ //瑙﹀彂鐣岄潰鍐嶆婵�娲荤殑浜嬩欢
+ int value = 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.uUnKnownError));
+ alert.Show();
+
+ //Log鍑哄姏
+ HdlLogLogic.Current.WriteLog(ex, "鐣岄潰閲嶆柊婵�娲诲紓甯�");
+ }
}
}
@@ -701,6 +681,13 @@
while (UserView.HomePage.Instance.ChildrenCount > 0)
{
var view = UserView.HomePage.Instance.GetChildren(UserView.HomePage.Instance.ChildrenCount - 1);
+ //(鍥犲簳灞傛帶浠朵慨鏀逛簡, 鐖舵帶浠剁Щ闄ゆ椂, 涓嶈Е鍙戝瓙鎺т欢鐨勭Щ闄や簨浠�)
+ if (view is ViewGroup)
+ {
+ //鍏抽棴鍔犺浇鍦╒iewGroup閲岄潰鐨勮嚜瀹氫箟鐣岄潰Form
+ CloseViewGroupChildren((ViewGroup)view);
+ }
+
if (view is CommonFormBase)
{
if (((CommonFormBase)view).FormID == tagetFrom)
@@ -717,6 +704,23 @@
else
{
view.RemoveFromParent();
+ }
+ }
+ }
+
+ /// <summary>
+ /// 鍏抽棴鍔犺浇鍦╒iewGroup閲岄潰鐨勮嚜瀹氫箟鐣岄潰Form(鍥犲簳灞傛帶浠朵慨鏀逛簡,鐖舵帶浠剁Щ闄ゆ椂,涓嶈Е鍙戝瓙鎺т欢鐨勭Щ闄や簨浠�)
+ /// </summary>
+ /// <param name="group"></param>
+ private static void CloseViewGroupChildren(ViewGroup group)
+ {
+ for (int i = 0; i < group.ChildrenCount; i++)
+ {
+ var view = group.GetChildren(i);
+ if (view is CommonFormBase)
+ {
+ ((CommonFormBase)view).CloseForm();
+ i--;
}
}
}
@@ -841,7 +845,7 @@
{
//APP缂撳瓨鍔犺浇寮�濮�
UserCenterResourse.AccountOption.AppCanSignout = false;
- //杩樺師杩滅▼杩炴帴鍙橀噺
+ //杩樺師杩滅▼杩炴帴鏉冮檺鍙橀噺
ZigBee.Device.ZbGateway.AllowRemoteCtrl = true;
//鍙湁鍦ㄤ綇瀹匢D涓嶄竴鏍风殑鏃跺�欐墠鍋氳繖涓搷浣�
@@ -855,17 +859,8 @@
}
catch { }
- //娑堟伅璁板綍閲嶆柊璇诲彇鍙婃娴�
- ControlCommonResourse.ReadMessageAgain = true;
- ControlCommonResourse.HadNewMessage = false;
- HdlThreadLogic.Current.RunMain(() =>
- {
- for (int i = 0; i < ControlCommonResourse.listMessageManaContr.Count; i++)
- {
- //鏄剧ず瑙掓爣鐗规晥
- ControlCommonResourse.listMessageManaContr[i].IsSelected = false;
- }
- });
+ //娓呯┖鎵�鏈夋垚鍛樼紦瀛�
+ ClearAllMemberMemory();
//鍔犺浇璐﹀彿閰嶇疆淇℃伅
var optionInfo = UserCenterResourse.AccountOption.Load();
@@ -943,6 +938,29 @@
return true;
}
+ /// <summary>
+ /// 娓呯┖鎵�鏈夋垚鍛樼紦瀛�
+ /// </summary>
+ private static void ClearAllMemberMemory()
+ {
+ //娑堟伅璁板綍閲嶆柊璇诲彇鍙婃娴�
+ ControlCommonResourse.ReadMessageAgain = true;
+ ControlCommonResourse.HadNewMessage = false;
+ HdlThreadLogic.Current.RunMain(() =>
+ {
+ for (int i = 0; i < ControlCommonResourse.listMessageManaContr.Count; i++)
+ {
+ //鏄剧ず瑙掓爣鐗规晥
+ ControlCommonResourse.listMessageManaContr[i].IsSelected = false;
+ }
+ });
+
+ //褰撳墠涓婚〉,鍦烘櫙鍜屽姛鑳芥墍閫夋嫨鐨勫垎鏀� 1:鍦烘櫙 2:鍔熻兘
+ UserCenterResourse.ResidenceOption.HomeMainPageSwitchIndex = 1;
+ //褰撳墠鍒嗙被,鍦烘櫙鍜屽姛鑳芥墍閫夋嫨鐨勫垎鏀� 0:鍦烘櫙 1:鍔熻兘 2:鑷姩鍖�
+ UserCenterResourse.ResidenceOption.CategoryPageSwitchIndex = 0;
+ }
+
#endregion
#region 鈻� 鍒濆鍖栫櫥闄嗚处鍙风殑淇℃伅_______________
--
Gitblit v1.8.0