From 5a5a2b696866f947b6025d26c3302e8ffef46435 Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期一, 11 一月 2021 16:11:20 +0800
Subject: [PATCH] 2021-01-11 1.更新MQTT连接和本地搜索网关方法。2.子账号相关接口完善

---
 Crabtree/SmartHome/UI/SimpleControl/Phone/Register/AccountModifyPassword.cs |   84 ++++++++++++++++--------------------------
 1 files changed, 32 insertions(+), 52 deletions(-)

diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/AccountModifyPassword.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/AccountModifyPassword.cs
index e1edea3..2f4ebcb 100644
--- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/AccountModifyPassword.cs
+++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/AccountModifyPassword.cs
@@ -184,31 +184,7 @@
                     } else {
                         string oldPassword = etCurPassword.Text.Trim ();
                         string newPassword = etNewPassword.Text.Trim ();
-                        try {
-                            var requestObj = new UpdatePasswordObj () { OldPassword = oldPassword, NewPassword = newPassword };
-                            var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj);
-                            var revertObj = MainPage.RequestHttps (API.UpdatePassword, requestJson);
-                            if (revertObj.StateCode.ToUpper() == StateCode.SUCCESS) {
-                                MainPage.LoginUser.Password = newPassword;
-                                MainPage.LoginUser.SaveUserInfo ();
-                                Application.RunOnMainThread (() => {
-                                    this.RemoveFromParent ();
-                                    new Alert ("", Language.StringByID (R.MyInternationalizationString.PasswordModificationSuccess), Language.StringByID (R.MyInternationalizationString.Close)).Show ();
-                                });
-                            } else {
-                                ShowErrorInfo (revertObj.StateCode);
-                            }
-
-                        } catch {
-                            Application.RunOnMainThread (() => {
-                                new Alert ("", Language.StringByID (R.MyInternationalizationString.FailureToServer),
-                                           Language.StringByID (R.MyInternationalizationString.Close)).Show ();
-                            });
-                        } finally {
-                            Application.RunOnMainThread (() => {
-                                MainPage.Loading.Hide ();
-                            });
-                        }
+                        ModifyPassword (oldPassword, newPassword);
                     }
                 } catch (Exception ex) {
                     new Alert ("", Language.StringByID (R.MyInternationalizationString.CheckInternet),
@@ -230,34 +206,38 @@
 
         }
 
-        void ShowErrorInfo (string stateCodeStr)
+        /// <summary>
+        /// 淇敼瀵嗙爜
+        /// </summary>
+        /// <param name="oldPassword"></param>
+        /// <param name="newPassword"></param>
+        void ModifyPassword (string oldPassword, string newPassword)
         {
-            string mes = "";
-            if (stateCodeStr == "NewPasswordAndOldPasswordEqual") {
-                //鍘熷瘑鐮佸拰鏂板瘑鐮佺浉鍚�
-                mes = ErrorCode.NewPasswordAndOldPasswordEqual;
-            } else if (stateCodeStr == "OldPwdNoYes") {
-                //鍘熷瘑鐮侀敊璇�
-                mes = ErrorCode.OldPwdNoYes;
-            } else if (stateCodeStr == "AccountNoExists") {
-                //鐢ㄦ埛涓嶅瓨鍦�
-                mes = ErrorCode.ACCOUNTNOEXISTS;
-            } else if (stateCodeStr == "Fail") {
-                // 鎿嶄綔澶辫触
-                mes = ErrorCode.OperationFailed;
-            } else if (stateCodeStr == ErrorCode.NetworkError) {
-                mes = ErrorCode.NetworkError;
-            } else {
-                mes = ErrorCode.OperationFailed + ErrorCode.Reason + stateCodeStr;
-
-            }
-            if (!string.IsNullOrEmpty (mes)) {
-                Application.RunOnMainThread (() => {
-                    new Alert ("", mes, Language.StringByID (R.MyInternationalizationString.Close)).Show ();
-                });
-            }
-
-            
+            MainPage.Loading.Start ("");
+            System.Threading.Tasks.Task.Run (() => {
+                try {
+                    var revertObj = HttpServerRequest.Current.ModifyPassword (oldPassword, newPassword);
+                    if (revertObj.Code == StateCode.SUCCESS) {
+                        //var md5Password = Utlis.MD5Encrypt (newPassword);
+                        MainPage.LoginUser.Password = newPassword;
+                        MainPage.LoginUser.SaveUserInfo ();
+                        Application.RunOnMainThread (() => {
+                            this.RemoveFromParent ();
+                            Utlis.ShowAlertOnMainThread (Language.StringByID (R.MyInternationalizationString.PasswordModificationSuccess));
+                            //new Alert (Language.StringByID (R.MyInternationalizationString.Tip), Language.StringByID (R.MyInternationalizationString.PasswordModificationSuccess), Language.StringByID (R.MyInternationalizationString.Close)).Show ();
+                        });
+                    } else {
+                        //鎻愮ず閿欒
+                        IMessageCommon.Current.ShowErrorInfoAlter (revertObj.Code);
+                    }
+                } catch {
+                    MainPage.FailureToServer ();
+                } finally {
+                    Application.RunOnMainThread (() => {
+                        MainPage.Loading.Hide ();
+                    });
+                }
+            });
         }
     }
 }
\ No newline at end of file

--
Gitblit v1.8.0