public async Task <ActionResult> LoginAsync(LoginViewModel loginViewModel) { UserLoginViewModel user = await _getUserByAccountQuery.ExecuteAsync(loginViewModel.Username, loginViewModel.Password); if (user != null) { if (!user.Enabled) { return(StatusCode((int)HttpStatusCode.Forbidden, new { message = user.Reason })); } var jwtOptions = _jwtConfiguration.Value; jwtOptions.ValidFor = loginViewModel.RememberMe ? TimeSpan.FromHours(JwtValidTime.HAS_REMEMBER_ME_BY_HOURS) : TimeSpan.FromHours(JwtValidTime.NOT_HAVE_REMEMBER_ME_BY_HOURS); var jwtUserAccount = new JwtUserAccount { UserId = user.Id, UserName = user.UserName, UserCode = user.UserCode, LastName = user.LastName, MiddleName = user.MiddleName, FirstName = user.FirstName }; return(new ObjectResult(new { accessToken = jwtUserAccount.GenerateToken(jwtOptions) })); } return(StatusCode((int)HttpStatusCode.Unauthorized, new { message = Message.WRONG_USERNAME_PASSWORD })); }
public async Task <IActionResult> LoginAsync([FromBody] LoginViewModel loginModel) { var employee = await _getUserInfoLogin.ExecuteAsync(loginModel.Username); if (employee == null) { return(StatusCode((int)HttpStatusCode.Unauthorized)); } if (string.Compare(loginModel.Password.ToMD5(), employee.PassWord, StringComparison.OrdinalIgnoreCase) != 0) { return(StatusCode((int)HttpStatusCode.Unauthorized)); } var jwtOptions = _jwtConfiguration.Value; jwtOptions.ValidFor = TimeSpan.FromHours(24); var jwtUserAccount = new JwtUserAccount { UserId = employee.Id, UserName = employee.UserName, DisplayName = (employee.FirstName + " " + employee.MiddleName + " " + employee.LastName).Replace(" ", " "), LastName = employee.LastName, FirstName = employee.FirstName, MiddleName = employee.MiddleName }; return(new ObjectResult(new { accessToken = jwtUserAccount.GenerateToken(jwtOptions), expired = jwtOptions.Expiration })); }
public async Task <ActionResult> RegisterAsync([FromBody] SaveCustomerViewModel model) { var result = await _saveCustomerCommand.ExecuteAsync(model); if (!result.Succeeded) { return(new ObjectResult(result)); } CustomerViewModel user = result.Data as CustomerViewModel; if (user != null) { var jwtOptions = _jwtConfiguration.Value; jwtOptions.ValidFor = TimeSpan.FromHours(JwtValidTime.FOR_CUSTOMER_BY_HOURS); var jwtUserAccount = new JwtUserAccount { UserId = user.Id, Email = user.Email, PhoneNumber = user.PhoneNumber, LastName = user.LastName, MiddleName = user.MiddleName, FirstName = user.FirstName }; TokenViewModel tokenVM = new TokenViewModel() { Id = user.Id, Email = user.Email, PhoneNumber = user.PhoneNumber, LastName = user.LastName, MiddleName = user.MiddleName, FirstName = user.FirstName, Birthday = user.Birthday, Gender = user.Gender, CreatedDate = user.CreatedDate, AccessToken = jwtUserAccount.GenerateToken(jwtOptions) }; return(new ObjectResult(CommandResult.SuccessWithData(tokenVM))); } return(new ObjectResult(CommandResult.Failed(new CommandResultError() { Code = (int)HttpStatusCode.InternalServerError, Description = MessageConstant.SYSTEM_ERROR }))); }
public async Task <ActionResult> CustomerLoginAsync(LoginViewModel loginViewModel) { UserLoginViewModel user = await _getCustomerByAccountQuery.ExecuteAsync(loginViewModel.Username, loginViewModel.Password); if (user != null) { if (!user.Enabled) { return(StatusCode((int)HttpStatusCode.Forbidden, new { message = user.Reason })); } var jwtOptions = _jwtConfiguration.Value; jwtOptions.ValidFor = TimeSpan.FromHours(JwtValidTime.FOR_CUSTOMER_BY_HOURS); var jwtUserAccount = new JwtUserAccount { UserId = user.Id, Email = user.Email, PhoneNumber = user.PhoneNumber, LastName = user.LastName, MiddleName = user.MiddleName, FirstName = user.FirstName }; TokenViewModel tokenVM = new TokenViewModel() { Id = user.Id, Email = user.Email, PhoneNumber = user.PhoneNumber, LastName = user.LastName, MiddleName = user.MiddleName, FirstName = user.FirstName, Birthday = user.Birthday, Gender = user.Gender, CreatedDate = user.CreatedDate, AccessToken = jwtUserAccount.GenerateToken(jwtOptions) }; return(new ObjectResult(tokenVM)); } return(StatusCode((int)HttpStatusCode.Unauthorized, new { message = MessageConstant.WRONG_USERNAME_PASSWORD })); }