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/HdlSafeguardLogic.cs | 136 ++++++++++++++++++++++++++++----------------
1 files changed, 86 insertions(+), 50 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlSafeguardLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlSafeguardLogic.cs
index e5b8bcd..9f5fe85 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlSafeguardLogic.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlSafeguardLogic.cs
@@ -1640,22 +1640,13 @@
/// </summary>
public async Task<string> ShowInputUserPasswordForm()
{
- //鑾峰彇褰撳墠姝e湪婵�娲荤殑鐢婚潰
- var form = UserCenterLogic.GetNowActionForm();
- if (form == null)
- {
- //杩欑鎯呭喌搴旇涓嶅瓨鍦�
- this.ShowErrorMsg("ERROR:Not Found The ActionForm!");
- return null;
- }
-
- DialogInputFrameControl Dialogform = null;
+ NumberPswInputDialogForm Dialogform = null;
bool isShowingProgressBar = false;
string ProgressBarText = string.Empty;
string pasword = null;
- Application.RunOnMainThread(() =>
+ HdlThreadLogic.Current.RunMain(() =>
{
isShowingProgressBar = CommonPage.Loading.Visible;
ProgressBarText = CommonPage.Loading.Text;
@@ -1665,21 +1656,12 @@
CommonPage.Loading.Hide();
}
- Dialogform = new DialogInputFrameControl(form, DialogFrameMode.OnlyPassword);
- //鐢ㄦ埛瀵嗙爜
- Dialogform.SetTitleText(Language.StringByID(R.MyInternationalizationString.uSafetyPassword));
- //璁剧疆鎻愮ず淇℃伅:璇疯緭鍏ョ敤鎴峰瘑鐮�
- Dialogform.SetTipText(Language.StringByID(R.MyInternationalizationString.uPleaseInputUserPassword));
+ Dialogform = new NumberPswInputDialogForm();
+ Dialogform.AddForm(Language.StringByID(R.MyInternationalizationString.uPleaseInputUserPassword), 4);
//纭鎸夐挳
- Dialogform.ComfirmClickEvent += ((textValue) =>
+ Dialogform.FinishInputEvent += ((textValue) =>
{
- if (textValue == string.Empty)
- {
- this.ShowErrorMsg(Language.StringByID(R.MyInternationalizationString.uPleaseInputUserPassword));
- return;
- }
- Dialogform.CloseDialog();
-
+ Dialogform.CloseForm();
//鐢ㄦ埛瀵嗙爜
pasword = textValue;
//鍔犲瘑瀵嗙爜
@@ -1874,36 +1856,66 @@
/// <summary>
/// 璁剧疆鑳佽揩鐨勮仈绯讳汉鏂瑰紡
/// </summary>
- /// <param name="dicPhone">keys:鑱旂郴鏂瑰紡 values:鍦板尯鐮�</param>
+ /// <param name="listPhone">鍦板尯鐮�-鑱旂郴鏂瑰紡</param>
+ /// <param name="listNote">鑱旂郴浜哄娉�</param>
+ /// <param name="addPhone">鏄惁鏄柊寤鸿仈绯讳汉,false鐨勬椂鍊�,鍙敼澶囨敞</param>
/// <returns></returns>
- public async Task<bool> SetCoercePhoneNumber(Dictionary<string, string> dicPhone)
+ public async Task<bool> SetCoercePhoneNumber(List<string> listPhone, List<string> listNote, bool addPhone = true)
{
- var Pra = new Safeguard.SetCoercePhoneNumberData();
- var Actonobj = new Safeguard.PushTargetActionObj();
- Actonobj.Type = 2;
- Pra.Actions.Add(Actonobj);
- Pra.LoginToken = this.GetLoginToken();
-
- foreach (string phoneNum in dicPhone.Keys)
+ if (addPhone == true)
{
- var phoneInfo = new Safeguard.PushTargetInfo();
- Actonobj.PushTarget.Add(phoneInfo);
- //鐢佃瘽鍙风爜
- phoneInfo.PushNumber = dicPhone[phoneNum] + "-" + phoneNum;
- }
+ var Pra = new Safeguard.SetCoercePhoneNumberData();
+ var Actonobj = new Safeguard.PushTargetActionObj();
+ Actonobj.Type = 2;
+ Pra.Actions.Add(Actonobj);
+ Pra.LoginToken = this.GetLoginToken();
- var result = await Safeguard.SetCoercePhoneNumberAsync(Pra);
- if (result == null || result.setCoercePhoneNumberResponseData == null || result.setCoercePhoneNumberResponseData.Result != 0)
+ for (int i = 0; i < listPhone.Count; i++)
+ {
+ var phoneInfo = new Safeguard.PushTargetInfo();
+ Actonobj.PushTarget.Add(phoneInfo);
+ //鐢佃瘽鍙风爜
+ phoneInfo.PushNumber = listPhone[i];
+ }
+ var result = await Safeguard.SetCoercePhoneNumberAsync(Pra);
+ if (result == null || result.setCoercePhoneNumberResponseData == null || result.setCoercePhoneNumberResponseData.Result != 0)
+ {
+ //淇敼鑳佽揩鑱旂郴鏂瑰紡澶辫触
+ string msg = Language.StringByID(R.MyInternationalizationString.uChangedCoercePhoneNumberFail);
+ //鎷兼帴涓娿�愮綉鍏冲洖澶嶈秴鏃躲�戠殑Msg
+ msg = UserCenterLogic.CombineGatewayTimeOutMsg(msg, result);
+
+ this.ShowErrorMsg(msg);
+ return false;
+ }
+ }
+ for (int i = 0; i < listNote.Count; i++)
{
- //淇敼鑳佽揩鑱旂郴鏂瑰紡澶辫触
- string msg = Language.StringByID(R.MyInternationalizationString.uChangedCoercePhoneNumberFail);
- //鎷兼帴涓娿�愮綉鍏冲洖澶嶈秴鏃躲�戠殑Msg
- msg = UserCenterLogic.CombineGatewayTimeOutMsg(msg, result);
-
- this.ShowErrorMsg(msg);
- return false;
+ var result = await Safeguard.SetCoercePhoneNumberNoteAsync(listPhone[i], listNote[i]);
+ if (result == null)
+ {
+ //淇敼澶囨敞淇℃伅澶辫触
+ string msg = Language.StringByID(R.MyInternationalizationString.uEditorNoteInformationFail);
+ //鎷兼帴涓娿�愮綉鍏冲洖澶嶈秴鏃躲�戠殑Msg
+ msg = UserCenterLogic.CombineGatewayTimeOutMsg(msg, null, "鍥炲瓒呮椂");
+ this.ShowErrorMsg(msg);
+ return false;
+ }
+ if (result.Result == -2)
+ {
+ //閿欒:缃戝叧瀵硅薄涓㈠け
+ string msg = Language.StringByID(R.MyInternationalizationString.uErrorGatewayLostMsg);
+ this.ShowErrorMsg(msg);
+ return false;
+ }
+ if (result.Result != 0)
+ {
+ //淇敼澶囨敞淇℃伅澶辫触
+ string msg = Language.StringByID(R.MyInternationalizationString.uEditorNoteInformationFail);
+ this.ShowErrorMsg(msg);
+ return false;
+ }
}
-
return true;
}
@@ -1939,6 +1951,29 @@
}
return true;
+ }
+
+ /// <summary>
+ /// 缁欒仈绯诲彿鐮佹坊鍔犲娉ㄧ殑淇℃伅
+ /// </summary>
+ private class AddPushNumberNoteInfo
+ {
+ /// <summary>
+ /// 鍥哄畾253
+ /// </summary>
+ public int ActionType = 253;
+ /// <summary>
+ /// LoginToken
+ /// </summary>
+ public string LoginToken = string.Empty;
+ /// <summary>
+ /// 鍦板尯鐮�-鑱旂郴鏂瑰紡
+ /// </summary>
+ public string PushNumber = string.Empty;
+ /// <summary>
+ /// 鑱旂郴浜哄彿鐮佸娉紝鏈�澶�63byte
+ /// </summary>
+ public string PushNumberNote = string.Empty;
}
#endregion
@@ -2201,10 +2236,11 @@
/// 鑾峰彇鐧婚檰鑰呯殑Token(濂藉儚绠$悊鍛樼櫥闄嗙殑鏃跺��,闇�瑕佸彉鏇碩oken,鎵�浠ユ殏涓斿畾涔変竴涓嚱鏁板嚭鏉�)
/// </summary>
/// <returns></returns>
- private string GetLoginToken()
+ public string GetLoginToken()
{
//鑾峰彇鎺у埗涓讳汉璐﹀彿鐨凾oken
- return UserCenterLogic.GetConnectMainToken();
+ //return UserCenterLogic.GetConnectMainToken();
+ return Config.Instance.Token;
}
#endregion
--
Gitblit v1.8.0