From e87985ec1dcb69beedaf9f95e8e7aba14b7c08d6 Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期三, 09 十二月 2020 18:50:14 +0800 Subject: [PATCH] 2020-12-09 1.信息中心,增加下划线和点击Alter提醒详情。 --- HDL_ON/UI/UI1-Login/RegisterPageBLL.cs | 439 ++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 305 insertions(+), 134 deletions(-) diff --git a/HDL_ON/UI/UI1-Login/RegisterPageBLL.cs b/HDL_ON/UI/UI1-Login/RegisterPageBLL.cs index f75b0ad..324c450 100644 --- a/HDL_ON/UI/UI1-Login/RegisterPageBLL.cs +++ b/HDL_ON/UI/UI1-Login/RegisterPageBLL.cs @@ -21,6 +21,7 @@ LoadEvent_Register(); LoadEvent_LimtPasswordLength(); LoadEvent_TextChange(); + LoadEvent_Server(); //var areaCodeList = pm.GetAreaCode(); } /// <summary> @@ -30,11 +31,11 @@ { etAccount.TextChangeEventHandler = (sender, e) => { - Regex reg = new Regex(@"^[1]+\d{10}"); - var mFalg = reg.Match(etAccount.Text.Trim()); + //Regex reg = new Regex(@"^[1]+\d{10}"); + //var mFalg = reg.Match(etAccount.Text.Trim()); if (registerType == 0)//鎵嬫満娉ㄥ唽鑾峰彇楠岃瘉鐮佹寜閽敓鏁堟潯浠� { - if (btnGlobalRoaming.Text == "+86" && etAccount.Text.Trim().Length != 11) + if (!Utlis.CheckPhoneNumber(etAccount.Text.Trim(), phoneZoneCode)) { btnGetVerificationCode_Phone.IsSelected = false; } @@ -46,7 +47,7 @@ } else//閭娉ㄥ唽鑾峰彇楠岃瘉鐮佹寜閽敓鏁堟潯浠� { - if (!mFalg.Success) + if (!Utlis.CheckEmail(etAccount.Text.Trim())) { btnGetVerificationCode_Mail.IsSelected = false; } @@ -68,10 +69,14 @@ //閫夋嫨鎵嬫満娉ㄥ唽 btnPhoneLogin.MouseUpEventHandler = (sender, e) => { -#if DEBUG - etAccount.Text = "17576024298"; -#endif - + if (registerType == 0) + { + return; + } + etAccount.IsNumberKeyboardType = true; + etAccount.Text = registerPhone; + etPassword.Text = ""; + etRepeatPassword.Text = ""; #region 鍒囨崲閫変腑鎸夐挳 btnGetVerificationCode_Mail.Visible = false; btnGetVerificationCode_Phone.Visible = true; @@ -95,10 +100,13 @@ //閫夋嫨閭娉ㄥ唽 btnEmailLogin.MouseUpEventHandler = (sender, e) => { + if (registerType == 1) + return; -#if DEBUG - etAccount.Text = "979412578@qq.com"; -#endif + etAccount.IsNumberKeyboardType = false; + etAccount.Text = registerEmail; + etPassword.Text = ""; + etRepeatPassword.Text = ""; #region 鍒囨崲閫変腑鎸夐挳 btnGetVerificationCode_Mail.Visible = true; btnGetVerificationCode_Phone.Visible = false; @@ -144,16 +152,14 @@ { if (registerType == 0) { - Regex reg = new Regex(@"^[1]+\d{10}"); - var mFalg = reg.Match(etAccount.Text.Trim()); - if (!mFalg.Success || (btnGlobalRoaming.Text == "+86" && etAccount.Text.Trim().Length != 11)) + if (!Utlis.CheckPhoneNumber(etAccount.Text.Trim(), phoneZoneCode)) { btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; btnAccountViewBottomLine.Height = Application.GetRealHeight(2); btnGetVerificationCode_Phone.IsSelected = false; new Tip() { - CloseTime = 3, + CloseTime = 1, Text = Language.StringByID(StringId.PlsEntryCorrectMobilNeumber), Direction = AMPopTipDirection.None, }.Show(bodyView); @@ -175,17 +181,14 @@ else if (registerType == 1) { //閭娉ㄥ唽-楠岃瘉閭鏄惁姝g‘ - var reg = new Regex("^\\s*([A-Za-z0-9_-]+(\\.\\w+)*@(\\w+\\.)+\\w{2,5})\\s*$"); - //Regex.IsMatch(etAccount.Text.Trim(), "([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,5})+"); - var mFalg = reg.Match(etAccount.Text.Trim()); - if (!mFalg.Success) + if (!Utlis.CheckEmail(etAccount.Text.Trim())) { btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; btnAccountViewBottomLine.Height = Application.GetRealHeight(2); btnGetVerificationCode_Mail.IsSelected = false; new Tip() { - CloseTime = 3, + CloseTime = 1, Text = Language.StringByID(StringId.PlsEntryCorrectEmailAddress), Direction = AMPopTipDirection.None, }.Show(bodyView); @@ -203,6 +206,14 @@ } } } + } + if (accountType == 0) + { + registerPhone = etAccount.Text.Trim(); + } + else + { + registerEmail = etAccount.Text.Trim(); } } }; @@ -231,7 +242,7 @@ new Tip() { - CloseTime = 3, + CloseTime = 1, Direction = AMPopTipDirection.None, Text = Language.StringByID(StringId.PlsRegisterPassword) }.Show(bodyView); @@ -254,12 +265,8 @@ } else { - if (etRepeatPassword.Text.Length == 0) - { - btnRepeatPasswordViewBottomLine.BackgroundColor = CSS_Color.DividingLineColor; - btnRepeatPasswordViewBottomLine.Height = Application.GetRealHeight(1); - return; - } + btnRepeatPasswordViewBottomLine.BackgroundColor = CSS_Color.DividingLineColor; + btnRepeatPasswordViewBottomLine.Height = Application.GetRealHeight(1); //鏍¢獙涓ゆ杈撳叆鐨勫瘑鐮佹槸鍚︿竴鑷� if (etPassword.Text.Trim().Length > 5) { @@ -269,7 +276,7 @@ btnRepeatPasswordViewBottomLine.Height = Application.GetRealHeight(2); new Tip() { - CloseTime = 3, + CloseTime = 1, Direction = AMPopTipDirection.None, Text = Language.StringByID(StringId.IncorrectRepeatPassword) }.Show(bodyView); @@ -358,74 +365,148 @@ void LoadEvent_GetVerificationCode() { EventHandler<MouseEventArgs> eventHandler = (sender, e) => - { - if ((sender as Button).IsSelected) - { - (sender as Button).IsSelected = false; - string account = etAccount.Text.Trim(); - //鐭俊鍙戦�侀棿闅�60s - int time = 60; - new Thread(() => - { - while (time > 0) - { - time--; - Application.RunOnMainThread(() => - { - (sender as Button).Text = time.ToString() + "s"; - }); - Thread.Sleep(1000); - } - Application.RunOnMainThread(() => - { - //鍥炲鑾峰彇鐭俊鎸夐挳浜嬩欢 - (sender as Button).IsSelected = true; - (sender as Button).TextID = StringId.GetVerificationCode; - }); - }) - { IsBackground = true }.Start(); - new Thread(() => - { - //鑾峰彇楠岃瘉鐮� - var result = pm.GetRegisterVerCode(account); - if (result.StateCode.ToUpper() == "SUCCESS") - { - } - else - { - string tipString = "Server error"; - switch (result.StateCode) - { - case "Exist": - tipString = Language.StringByID(StringId.AccountAlreadyExists); - break; - case "SendFail": - tipString = Language.StringByID(StringId.FailedToSendVerificationCode); - break; - case "Self:Net_Error": - tipString = Language.StringByID(StringId.NetworkAnomaly); - break; - case "ParameterOrEmpty": - if (registerType == 0) - tipString = Language.StringByID(StringId.PlsEntryCorrectMobilNeumber); - else - tipString = Language.StringByID(StringId.PlsEntryCorrectEmailAddress); - break; - } - Application.RunOnMainThread(() => - { - new Tip() - { - CloseTime = 3, - Direction = AMPopTipDirection.None, - Text = tipString - }.Show(bodyView); - }); - } - }) - { IsBackground = true }.Start(); - } - }; + { + if ((sender as Button).IsSelected) + { + //鍒ゆ柇鏄惁閫夋嫨浜嗘湇鍔″櫒锛岄�夋嫨浜嗘墠鑳藉彂閫侀獙璇佺爜 + if (CheckIfSelectServer() == false) return; + + string account = etAccount.Text.Trim(); + int time = 60; + //鍔犺浇Loading鏁堟灉 + var waitPage = new Loading(); + bodyView.AddChidren(waitPage); + waitPage.Start(Language.StringByID(StringId.PleaseWait)); + + new Thread(() => + { + try + { + //1.鍏堟鏌ヨ处鍙锋槸鍚︽敞鍐岃繃 + var result = pm.GetRegionByAccount(account); + //2.璐﹀彿涓嶅瓨鍦紝鎵嶅厑璁哥户缁敞鍐� + if (result.Code == StateCode.ACCOUNT_NOT_EXIST) + { + //璐﹀彿涓嶅瓨鍦� 鏈敞鍐屽厑璁稿彂閫侀獙璇佺爜娉ㄥ唽 + + //2.2 鑾峰彇楠岃瘉鐮� + ResponsePackNew resultObj; + if (registerType == 1)//閭 + { + resultObj = pm.VerificationCodeSend(VerifyType.REGISTER_USER, account); + } + else + { + resultObj = pm.VerificationCodeSend(VerifyType.REGISTER_USER, account, true, phoneZoneCode); + } + + if (resultObj.Code != StateCode.SUCCESS) + { + // 鎻愮ず閿欒 + IMessageCommon.Current.ShowErrorInfoAlter(resultObj.Code); + } + else + { + //2.1 寮�濮嬪�掕鏃� + Application.RunOnMainThread(() => + { + //鐭俊鍙戦�侀棿闅�60s + (sender as Button).IsSelected = false; + + }); + new Thread(() => + { + while (time > 0) + { + time--; + Application.RunOnMainThread(() => + { + (sender as Button).Text = time.ToString() + "s"; + }); + Thread.Sleep(1000); + } + Application.RunOnMainThread(() => + { + //鍥炲鑾峰彇鐭俊鎸夐挳浜嬩欢 + (sender as Button).IsSelected = true; + (sender as Button).TextID = StringId.GetVerificationCode; + }); + }) + { IsBackground = true }.Start(); + } + + } + else if (result.Code.ToUpper() == StateCode.SUCCESS) + { + //3.鎻愮ず璐﹀彿宸插瓨鍦紝鏃犳硶閲嶅娉ㄥ唽 + Utlis.ShowAlertOnMainThread(Language.StringByID(StringId.AccountAlreadyUse)); + } + else + { + //4.鎻愮ず鍏跺畠寮傚父閿欒 + IMessageCommon.Current.ShowErrorInfoAlter(result.Code); + } + } + catch { } + finally + { + Application.RunOnMainThread(() => + { + if (waitPage != null) + { + waitPage.RemoveFromParent(); + waitPage = null; + } + }); + } + }) + { IsBackground = true }.Start(); + + //(sender as Button).IsSelected = false; + //string account = etAccount.Text.Trim(); + ////鐭俊鍙戦�侀棿闅�60s + //int time = 60; + //new Thread(() => + //{ + // while (time > 0) + // { + // time--; + // Application.RunOnMainThread(() => + // { + // (sender as Button).Text = time.ToString() + "s"; + // }); + // Thread.Sleep(1000); + // } + // Application.RunOnMainThread(() => + // { + // //鍥炲鑾峰彇鐭俊鎸夐挳浜嬩欢 + // (sender as Button).IsSelected = true; + // (sender as Button).TextID = StringId.GetVerificationCode; + // }); + //}) + //{ IsBackground = true }.Start(); + //new Thread(() => + //{ + // ResponsePackNew resultObj; + // // 鑾峰彇楠岃瘉鐮� + // if (registerType == 1)//閭 + // { + // resultObj = pm.VerificationCodeSend(VerifyType.REGISTER_USER, account); + // } + // else + // { + // resultObj = pm.VerificationCodeSend(VerifyType.REGISTER_USER, account, true, phoneZoneCode); + // } + + // if (resultObj.Code != StateCode.SUCCESS_CODE) + // { + // // 鎻愮ず閿欒 + // IMessageCommon.Current.ShowErrorInfoAlter(NewAPI.API_POST_Verification_Send, resultObj.Code); + // } + //}) + //{ IsBackground = true }.Start(); + } + }; btnGetVerificationCode_Phone.MouseDownEventHandler = eventHandler; btnGetVerificationCode_Mail.MouseDownEventHandler = eventHandler; @@ -438,8 +519,21 @@ { btnRegister.MouseUpEventHandler = (sender, e) => { + if (etPassword.Text.Trim().Length > 13 || etPassword.Text.Trim().Length < 6) + { + new Tip() + { + CloseTime = 1, + Direction = AMPopTipDirection.None, + Text = Language.StringByID(StringId.PlsRegisterPassword) + }.Show(bodyView); + return; + } if (btnRegister.IsSelected) { + //鍒ゆ柇鏄惁閫夋嫨浜嗘湇鍔″櫒锛岄�夋嫨浜嗘墠鑳藉彂閫侀獙璇佺爜 + if (CheckIfSelectServer() == false) return; + waitPage = new Loading(); new PublicAssmebly().LoadPage_WaitPage(LoadMethod_RegisterThread(), bodyView, waitPage); } @@ -459,10 +553,10 @@ { try { - //鏍¢獙楠岃瘉鐮�/娉ㄥ唽璐﹀彿 - var validateSmsResult = pm.ValidataCodeAndRegister(account, password, entryPassword, verCode, 86); - //楠岃瘉鐮佹牎楠屾垚鍔� - if (validateSmsResult.StateCode.ToUpper() == "SUCCESS") + //鏍¢獙楠岃瘉鐮佸苟娉ㄥ唽璐﹀彿 + var isPhone = registerType == 0; + var validateSmsResult = pm.ValidataCodeAndRegister(account, password, verCode, isPhone); + if (validateSmsResult.Code == StateCode.SUCCESS) { //娉ㄥ唽鎴愬姛 //鎵ц鍥炶皟浜嬩欢 @@ -473,41 +567,45 @@ LoadEvent_AutoLogin(account, password); }); } - else//娉ㄥ唽澶辫触 + else// 娉ㄥ唽澶辫触 { - string erorrInfo = ""; - switch (validateSmsResult.StateCode) - { - case "Exist": - erorrInfo = Language.StringByID(StringId.AccountAlreadyExists); - break; - case "PwdNoConfirm": - erorrInfo = Language.StringByID(StringId.IncorrectRepeatPassword); - break; - case "ValidCodeAndPhoneNoEqual": - erorrInfo = Language.StringByID(StringId.VerificationCodeWrong); - break; - case "NoRecord": - erorrInfo = Language.StringByID(StringId.PlsGetTheVerificationCode); - Application.RunOnMainThread(() => - { - btnVerificationCodeViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; - btnVerificationCodeViewBottomLine.Height = Application.GetRealHeight(2); - }); - break; - default: - erorrInfo = Language.StringByID(StringId.RegistrationFailedPleaseTryAgain); - break; - } - Application.RunOnMainThread(() => - { - new Tip() - { - CloseTime = 3, - Direction = AMPopTipDirection.None, - Text = erorrInfo, - }.Show(bodyView); - }); + // 鎻愮ず閿欒 + IMessageCommon.Current.ShowErrorInfoAlter(validateSmsResult.Code); + + //2020-11-13 寰呬慨鏀� + //string erorrInfo = ""; + //switch (validateSmsResult.StateCode) + //{ + // case "Exist": + // erorrInfo = Language.StringByID(StringId.AccountAlreadyUse); + // break; + // case "PwdNoConfirm": + // erorrInfo = Language.StringByID(StringId.IncorrectRepeatPassword); + // break; + // case "ValidCodeAndPhoneNoEqual": + // erorrInfo = Language.StringByID(StringId.VerificationCodeWrong); + // break; + // case "NoRecord": + // erorrInfo = Language.StringByID(StringId.PlsGetTheVerificationCode); + // Application.RunOnMainThread(() => + // { + // btnVerificationCodeViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; + // btnVerificationCodeViewBottomLine.Height = Application.GetRealHeight(2); + // }); + // break; + // default: + // erorrInfo = Language.StringByID(StringId.RegistrationFailedPleaseTryAgain); + // break; + //} + //Application.RunOnMainThread(() => + //{ + // new Tip() + // { + // CloseTime = 1, + // Direction = AMPopTipDirection.None, + // Text = erorrInfo, + // }.Show(bodyView); + //}); } } catch (Exception ex) @@ -523,5 +621,78 @@ } }); } + + /// <summary> + /// 鍔犺浇鏈嶅姟鍣ㄩ�夋嫨鎸夐挳浜嬩欢 + /// </summary> + void LoadEvent_Server() + { + //鍒ゆ柇涔嬪墠鏄惁閫夋嫨杩� + if (UserInfo.Current.GlobalRegion != null && !string.IsNullOrEmpty(UserInfo.Current.GlobalRegion.regionUrl)) + { + + SetServerText(); + } + + EventHandler<MouseEventArgs> eventHandler = (sender, e) => + { + Action selectAction = () => + { + //鏈嶅姟鍣ㄩ�夋嫨杩囨爣璁颁负true + SetServerText(); + }; + new SelectServerDialog(selectAction).LoadPage(); + + }; + + btnServerGo.MouseUpEventHandler = eventHandler; + btnServerText.MouseUpEventHandler = eventHandler; + } + + /// <summary> + /// 妫�娴嬫槸鍚﹂�夋嫨浜嗘湇鍔″櫒 + /// </summary> + /// <returns></returns> + private bool CheckIfSelectServer() + { + if (isSelectServer == false) + { + //璇峰厛閫夋嫨鍥藉/鍖哄煙 + Utlis.ShowTip(Language.StringByID(StringId.PleaseSelectCountryOrRegion)); + ShowServerBottomLineState(true); + return false; + } + return true; + } + + /// <summary> + /// 鏈嶅姟鍣ㄤ笅鍒掔嚎鏍峰紡 + /// </summary> + /// <param name="isError"></param> + void ShowServerBottomLineState(bool isError) + { + if (isError) + { + btnServerBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; + btnServerBottomLine.Height = Application.GetRealHeight(2); + } + else + { + btnServerBottomLine.BackgroundColor = CSS_Color.DividingLineColor; + btnServerBottomLine.Height = Application.GetRealHeight(1); + } + } + + /// <summary> + /// + /// </summary> + void SetServerText() + { + //鏈嶅姟鍣ㄩ�夋嫨杩囨爣璁颁负true + isSelectServer = true; + ShowServerBottomLineState(false); + btnServerText.TextColor = CSS_Color.FirstLevelTitleColor; + btnServerText.Text = UserInfo.Current.GlobalRegion.regionName; + } } } \ No newline at end of file -- Gitblit v1.8.0