public async Task <ApiResult <TokenEntity> > Login(LoginModel model) { if (!ModelState.IsValid) { return(ApiResultUtil.Fail <TokenEntity>("数据不合法!")); } var userName = model.UserName; var password = model.Password; try { var user = await _userService.LoginAsync(userName, password); if (user == null) { return(ApiResultUtil.Fail <TokenEntity>("用户名或密码不正确!")); } var tp = TokenUtil.GetProvider(); var token = tp.GenerateToken(user); return(ApiResultUtil.Success(token)); } catch (Exception ex) { _logger.LogError(0, ex, "登录失败:" + ApiResultUtil.GetMessage(ex)); return(ApiResultUtil.Fail <TokenEntity>("登录失败!")); } }
public async Task <ApiResult <UserDto> > GetUserInfo() { var identity = User.Identity as ClaimsIdentity; if (identity == null) { return(ApiResultUtil.Fail <UserDto>("无法获取Identity信息!")); } var userIdClaim = identity.Claims.FirstOrDefault(c => c.Type == JwtRegisteredClaimNames.Prn); if (userIdClaim == null) { return(ApiResultUtil.Fail <UserDto>("无法获取Identity信息")); } try { var user = await _userService.GetInfoAsync(userIdClaim.Value); return(ApiResultUtil.Success(user)); } catch (Exception ex) { _logger.LogError(0, ex, "获取用户信息失败:" + ApiResultUtil.GetMessage(ex)); return(ApiResultUtil.Fail <UserDto>("获取用户信息失败!")); } }
public async Task <ApiResult> UpdateUserInfo(UserInfoModel model) { var identity = User.Identity as ClaimsIdentity; if (identity == null) { return(ApiResultUtil.Fail <UserDto>("无法获取Identity信息!")); } var userIdClaim = identity.Claims.FirstOrDefault(c => c.Type == JwtRegisteredClaimNames.Prn); if (userIdClaim == null) { return(ApiResultUtil.Fail <UserDto>("无法获取Identity信息")); } var userId = userIdClaim.Value; try { await _userService.UpdateInfoAsync(userId, model); return(ApiResultUtil.Success()); } catch (Exception ex) { _logger.LogError(0, ex, "更新用户信息失败:" + ApiResultUtil.GetMessage(ex)); return(ApiResultUtil.Fail <TokenEntity>("更新用户信息失败!")); } }
public async Task <ApiResult> Register(RegisterModel model) { if (!ModelState.IsValid) { return(ApiResultUtil.Fail("数据不合法!")); } try { await _userService.RegisterAsync(model); return(ApiResultUtil.Success()); } catch (Exception ex) { _logger.LogError(0, ex, "注册失败:" + ApiResultUtil.GetMessage(ex)); return(ApiResultUtil.Fail("注册失败!")); } }