public LoginAuthedUserDTO Login(OAuthLoginViewModel model) { LoginAuthedUserDTO dtoModel = null; try { if (null == model) { throw new Exception("授权模型为空!"); } ////注意:这里后期等用户表创建好后,需要去用户表取信息,如果用户表的过期时间到了,那么还需要更新表数据 ////1 查询用户是否存在 ////2 不存在插入新的,并生成新的组,并插入access_token日志 ////3 存在的,那么更新表 //if (null == userModel) //{ // //插入模式 // //用户模型 // userModel = RegisterNewUser(model, out grpId); //} //else //{ // //更新模式 // grpId = UpdateUserInfo(model, pid, userModel); //} //model.UserId = userModel.Id; //dtoModel = new LoginAuthedUserDTO //{ // GroupId = 0,//用户所在分组 // Platform = model.Platform, // ShopId = model.ShopId, // ShopName = model.ShopName, // UserId = model.UserId, // UserName = model.UserName, // Access_token = model.Access_token, // TokenExpireTime = model.ExpireTime //}; } catch (Exception ex) { throw ex; } return(dtoModel); }
public async Task <IActionResult> OAuth_Login(OAuthLoginViewModel viewModel) { var user = await this._userManager.FindByEmailAsync(viewModel.Email); if (user != null) { var result = await this._signInManager.CheckPasswordSignInAsync(user, viewModel.Password, false); if (result.Succeeded) { var query = new QueryBuilder(); query.Add("code", user.Id); query.Add("state", viewModel.State); return(Redirect($"{viewModel.RedirectUri}{query.ToString()}")); } } return(View()); }
public IActionResult OAuth_Login( OAuthRequest request /*string response_type, // authorization flow type * string client_id, // client id * string redirect_uri, * string scope, // what info I want = email,grandma,tel * string state*/ ) { //var query = new QueryBuilder(); //query.Add("redirectUri", request.Redirect_Uri); //query.Add("state", request.State); var loginViewModel = new OAuthLoginViewModel() { RedirectUri = request.Redirect_Uri, State = request.State }; return(View(model: loginViewModel)); }