@page "/login" @using wtmProject.ViewModel.HomeVMs @inherits BasePage
@code { [Parameter] public bool? LoginSuccess { get; set; } [Parameter] public EventCallback LoginSuccessChanged { get; set; } [Parameter] public EventCallback OnUserInfoSet { get; set; } private int bgnumber; private LoginVM Model = new LoginVM(); protected override void OnInitialized() { //bgnumber = new Random().Next(1, 6); if (WtmBlazor.ConfigInfo.IsQuickDebug == true) { Model.ITCode = "admin"; Model.Password = "000000"; } base.OnInitialized(); } private async Task Submit(EditContext context) { var rv = await WtmBlazor.Api.CallAPI("/api/_account/loginjwt", HttpMethodEnum.POST, new { Account = Model.ITCode, Password = Model.Password, Tenant = Model.Tenant }); if (rv.StatusCode == System.Net.HttpStatusCode.OK) { var token = rv.Data.Fields["access_token"].ToString(); var rtoken = rv.Data.Fields["refresh_token"].ToString(); await SetToken(token, rtoken); var userinfo = await WtmBlazor.Api.CallAPI("/api/_account/checkuserinfo", HttpMethodEnum.GET, new { }); if (userinfo.StatusCode == System.Net.HttpStatusCode.OK) { await SetUserInfo(userinfo.Data); await OnUserInfoSet.InvokeAsync(); await LoginSuccessChanged.InvokeAsync(true); } else { await WtmBlazor.Toast.Error(WtmBlazor.Localizer["Sys.Error"], rv.Errors.Message[0]); } } else { await WtmBlazor.Toast.Error(WtmBlazor.Localizer["Sys.Error"], rv.Errors?.Message[0]); } } }