public async Task <ApplicationUserResponse> UpdateAsync([FromBody] ApplicationUserAddRequest request) { if (request.password != null && !await _userValidators.ValidatePasswordAsync(request.user, request.password)) { return(GetResponse(false, _userValidators.InvalidPasswordMessage)); } var user = await _applicationUsersRepository.GetByIdAsync(request.user.Id); if (user.UserName != request.user.UserName && !await _userValidators.ValidateUserName(request.user.UserName)) { return(GetResponse(false, _userValidators.InvalidUserNameMessage)); } var result = await _applicationUsersRepository.UpdateAsync(request.user); if (!result) { return(GetResponse(false)); } if (request.password != null) { var passwordChangeResult = await _applicationUsersRepository.ChangePassword(user, request.password); if (!passwordChangeResult) { return(GetResponse(false)); } } return(GetResponse(true)); }
// GET: ApplicationUsers/Details/5 public async Task <ActionResult> Details(string id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ApplicationUser applicationUser = await _applicationUserRepository.GetByIdAsync(id); if (applicationUser == null) { return(HttpNotFound()); } var viewModel = new ApplicationUserDetailsViewModel() { User = Mapper.Map <ApplicationUserDto>(applicationUser), TotalOrders = await _applicationUserRepository.GetToalOrdersByIdAsync(applicationUser.Id), OrdersTotalCost = await _applicationUserRepository.GetTotalOrdersCostByIdAsync(applicationUser.Id) }; return(View(viewModel)); }