using System; using System.Text; using Shared.Common; using Shared.Phone.UserCenter; using Shared.Phone.UserView; namespace Shared.Phone.Login { /// /// 账号注册成功的提示界面 /// public class AccountRegisterResultForm : FrameLayout { #region ■ 初始化_____________________________ /// /// 初始化 /// /// 账号 /// 密码 /// 第三方绑定的id public void ShowForm(string account, string password, string OpenID = "") { //整个背景 var frameBack = new FrameLayout(); frameBack.BackgroundColor = ZigbeeColor.Current.GXCDailogBackGroundColor; this.AddChidren(frameBack); //上部黑色部分 var frameBlack = new FrameLayout(); frameBlack.Y = Application.GetRealHeight(527); frameBlack.Width = Application.GetRealWidth(688); frameBlack.Height = Application.GetRealHeight(274); frameBlack.Gravity = Gravity.CenterHorizontal; frameBlack.BackgroundColor = ZigbeeColor.Current.GXCBlackBackgroundColor; frameBlack.SetCornerWithSameRadius(Application.GetRealHeight(17), HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight); this.AddChidren(frameBlack); //下部白色部分 var frameWhite = new FrameLayout(); frameWhite.Y = frameBlack.Bottom; frameWhite.Width = Application.GetRealWidth(688); frameWhite.Height = Application.GetRealHeight(579); frameWhite.Gravity = Gravity.CenterHorizontal; frameWhite.BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor; frameWhite.SetCornerWithSameRadius(Application.GetRealHeight(17), HDLUtils.RectCornerBottomLeft | HDLUtils.RectCornerBottomRight); this.AddChidren(frameWhite); //账号头像 var btnAccountIcon = new PicViewControl(294, 316); btnAccountIcon.Y = Application.GetRealHeight(648); btnAccountIcon.Gravity = Gravity.CenterHorizontal; btnAccountIcon.UnSelectedImagePath = "Account/Cat.png"; this.AddChidren(btnAccountIcon); //账号 var btnAccount = new NormalViewControl(500, 80, true); btnAccount.Y = btnAccountIcon.Bottom; btnAccount.Gravity = Gravity.CenterHorizontal; btnAccount.Text = account; btnAccount.TextColor = ZigbeeColor.Current.GXCTextGrayColor2; btnAccount.TextAlignment = TextAlignment.Center; this.AddChidren(btnAccount); //恭喜注册成功! var btnTip = new NormalViewControl(500, 80, true); btnTip.Y = Application.GetRealHeight(1143); btnTip.Gravity = Gravity.CenterHorizontal; btnTip.TextID = R.MyInternationalizationString.RegisterSuccessTip; btnTip.TextColor = ZigbeeColor.Current.GXCTextBlackColor2; btnTip.TextAlignment = TextAlignment.Center; btnTip.TextSize = 16; btnTip.IsBold = true; this.AddChidren(btnTip); //即将自动登录 var btnWillLogin = new NormalViewControl(500, 80, true); btnWillLogin.Y = btnTip.Bottom + Application.GetRealHeight(15); btnWillLogin.Gravity = Gravity.CenterHorizontal; btnWillLogin.TextID = R.MyInternationalizationString.WillAutoLogin; btnWillLogin.TextColor = ZigbeeColor.Current.GXCTextGrayColor; btnWillLogin.TextAlignment = TextAlignment.Center; AddChidren(btnWillLogin); HdlThreadLogic.Current.RunThread(() => { System.Threading.Thread.Sleep(2000); //2秒后自动登录 this.LoginByAccountAndPsw(account, password, OpenID); }); } #endregion #region ■ 自动登录___________________________ /// /// AutoLogin /// /// /// private void LoginByAccountAndPsw(string account, string password, string OpenID = "") { HdlThreadLogic.Current.RunMain(() => { //打开启动页 HdlControlLogic.Current.ShowLoginLoadView(); CommonPage.Loading.Start(Language.StringByID(R.MyInternationalizationString.Logining)); HdlThreadLogic.Current.RunThread(() => { //账号密码登陆 var result = HdlAccountLogic.Current.LoginByPassword(account, password); if (result != null && result.Code == HttpMessageEnum.A成功) { if (string.IsNullOrEmpty(OpenID) == false) { //绑定第三方 BindAuthUser(Config.Instance.Guid, OpenID); } //刷新个人中心的内存及线程 bool result2 = HdlUserCenterLogic.Current.InitUserCenterMenmoryAndThread(true); //启动ZigBee ZigBee.Common.Application.Init(); HdlThreadLogic.Current.RunMain(() => { CommonPage.Loading.Hide(); this.RemoveFromParent(); CommonPage.Instance.RemoveViewByTag("Register"); CommonPage.Instance.RemoveViewByTag("Login"); if (result2 == true) { //false:开启了调试功能 UserPage.Instance.ReFreshControl(); } }); } else { HdlThreadLogic.Current.RunMain(() => { //未登录成功弹出登录界面 同时需要标记为未登录状态 Config.Instance.LoginDateTime = new DateTime(1970, 1, 1); Config.Instance.Save(); var login = new AccountLoginForm(); CommonPage.Instance.AddChidren(login); login.ShowForm(account); }); } }); }); } #endregion #region ■ 绑定第三方_________________________ /// /// 绑定 /// /// /// private void BindAuthUser(string guid, string openId) { //☆マーク☆ 绑定微信 //var auth = new SendDataToServer.BindAuthUser(); //auth.AccountGuid = guid; //auth.OpenID = openId; //HdlHttpLogic.Current.RequestHttpsZigbeeAsync("ZigbeeUsers/BindAuthUserToAccount", RestSharp.Method.POST, auth, null, null); } #endregion } }