public async Task <RegisterResponse> RegisterAsync(RegisterModel registerModel) { try { var userExists = await _userManager.FindByNameAsync(registerModel.Username); if (userExists != null) { return(new RegisterResponse(BaseApiResponse <UserDto> .CreateErrorResponse($"User already exists!"))); } var user = new User(registerModel); var result = await _userManager.CreateAsync(user, registerModel.Password); if (!result.Succeeded) { return(new RegisterResponse(BaseApiResponse <UserDto> .CreateErrorResponse($"User creation failed: {result.Errors.GetErrorsAsString()}"))); } var userDto = _mapper.Map <UserDto>(user); return(new RegisterResponse( BaseApiResponse <UserDto> .CreateSuccessResponse("User created successfully!", userDto))); } catch (Exception ex) { return(new RegisterResponse(BaseApiResponse <UserDto> .CreateErrorResponse( $"An error occured during user registration: {ex.Message}"))); } }
public void CreateErrorResponse_ReturnsResponse_WithFalseResultAndErrorStatus() { // Arrange var testMessage = "Test message"; // Act var result = BaseApiResponse <IDto> .CreateErrorResponse(testMessage); // Assert result.Should().NotBeNull(); result.Result.Should().BeFalse(); result.Status.Should().Be(ResponseStatus.Error); result.Message.Should().Be(testMessage); }
public async override Task <WeddingHallSummaryResponse> GetAsync(int id) { try { var weddingHall = await Repository.GetAsync(id); if (weddingHall == null) { return(new WeddingHallSummaryResponse( BaseApiResponse <WeddingHallDto> .CreateErrorResponse($"Specified wedding hall was not found. Id: {id}"))); } return(await CreateWeddingHallSummaryResponseAsync(weddingHall, "Wedding hall summary successfully retrieved.")); } catch (Exception ex) { return(CreateErrorResponse($"An error occured during wedding hall summary creation: {ex.Message}")); } }
// TODO: refactor public async Task <GuestListResponse> GetGuestsAsync() { try { var guests = await Repository.GetAllAsync(); if (guests == null) { return(new GuestListResponse(BaseApiResponse <GuestListDto> .CreateErrorResponse("Cannot retrieve guests list."))); } return(CreateGuestListSuccessResponse(guests)); } catch (Exception ex) { return(new GuestListResponse(BaseApiResponse <GuestListDto> .CreateErrorResponse( $"An error occured during guest list retrieve: {ex.Message}"))); } }
public async Task <GuestListResponse> GetGuestsByAgeAsync(int age) { try { var guests = await Repository.GetGuestsByAgeAsync(age); if (guests == null) { return(new GuestListResponse(BaseApiResponse <GuestListDto> .CreateErrorResponse($"Cannot retrieve guests list for given age {age}."))); } var response = CreateGuestListSuccessResponse(guests); response.AgeParam = age; return(response); } catch (Exception ex) { return(new GuestListResponse(BaseApiResponse <GuestListDto> .CreateErrorResponse( $"An error occured during guest list retrieve: {ex.Message}"))); } }
public async Task <LoginResponse> AuthenticateAsync(LoginModel loginModel) { if (loginModel == null) { return(new LoginResponse( BaseApiResponse <UserDto> .CreateErrorResponse("LoginModel cannot be null."))); } try { var user = await _userManager.FindByNameAsync(loginModel.Username); if (user != null && await _userManager.CheckPasswordAsync(user, loginModel.Password)) { // TODO: roles // var userRoles = await _userManager.GetRolesAsync(user); var token = _jwtService.GenerateJwtToken(user); var userDto = _mapper.Map <UserDto>(user); var response = new LoginResponse( BaseApiResponse <UserDto> .CreateSuccessResponse("User authenticated successfully!", userDto)) { Token = new JwtSecurityTokenHandler().WriteToken(token), Expiration = token.ValidTo }; return(response); } return(new LoginResponse(BaseApiResponse <UserDto> .CreateErrorResponse("User not authenticated."))); } catch (Exception ex) { return(new LoginResponse(BaseApiResponse <UserDto> .CreateErrorResponse( $"An error occured during user authentication: {ex.Message}"))); } }
protected override WeddingHallSummaryResponse CreateErrorResponse(string message) => new WeddingHallSummaryResponse(BaseApiResponse <WeddingHallDto> .CreateErrorResponse(message));
protected override GuestResponse CreateErrorResponse(string message) => new GuestResponse(BaseApiResponse <GuestDto> .CreateErrorResponse(message));
protected override OutfitResponse <OutfitDto> CreateErrorResponse(string message) { return(new OutfitResponse <OutfitDto>( BaseApiResponse <OutfitDto> .CreateErrorResponse(message))); }