/// <summary> /// Creates the golf club. /// </summary> /// <param name="accessToken">The access token.</param> /// <param name="viewModel">The view model.</param> /// <param name="cancellationToken">The cancellation token.</param> public async Task CreateGolfClub(String accessToken, CreateGolfClubViewModel viewModel, CancellationToken cancellationToken) { // Translate view model to request CreateGolfClubRequest createGolfClubRequest = this.ModelFactory.ConvertFrom(viewModel); await this.GolfClubClient.CreateGolfClub(accessToken, createGolfClubRequest, cancellationToken); }
/// <summary> /// Converts from. /// </summary> /// <param name="viewModel">The view model.</param> /// <returns></returns> public CreateGolfClubRequest ConvertFrom(CreateGolfClubViewModel viewModel) { CreateGolfClubRequest createGolfClubRequest = new CreateGolfClubRequest { AddressLine1 = viewModel.AddressLine1, Region = viewModel.Region, Town = viewModel.Town, Website = viewModel.Website, Name = viewModel.Name, TelephoneNumber = viewModel.TelephoneNumber, EmailAddress = viewModel.EmailAddress, AddressLine2 = viewModel.AddressLine2, PostalCode = viewModel.PostalCode, TournamentDivisions = new List <TournamentDivisionRequest>() }; return(createGolfClubRequest); }
public async Task <IActionResult> CreateGolfClub(CreateGolfClubViewModel model, CancellationToken cancellationToken) { // Validate the model if (this.ValidateModel(model)) { String accessToken = await this.HttpContext.GetTokenAsync("access_token"); // All good with model, call the client to create the golf club await this.ApiClient.CreateGolfClub(accessToken, model, cancellationToken); // GOlf Club Created, redirect to the Club Details screen return(this.RedirectToAction(nameof(this.ManageGolfClub))); } // If we got this far, something failed, redisplay form return(this.View(model)); }
public void ModelFactory_ConvertFrom_CreateGolfClubViewModel_ConvertedSuccessfully() { ModelFactory factory = new ModelFactory(); CreateGolfClubViewModel viewModel = ModelFactoryTestData.GetCreateGolfClubViewModel(); CreateGolfClubRequest request = factory.ConvertFrom(viewModel); request.AddressLine1.ShouldBe(viewModel.AddressLine1); request.Region.ShouldBe(viewModel.Region); request.Town.ShouldBe(viewModel.Town); request.Website.ShouldBe(viewModel.Website); request.Name.ShouldBe(viewModel.Name); request.TelephoneNumber.ShouldBe(viewModel.TelephoneNumber); request.EmailAddress.ShouldBe(viewModel.EmailAddress); request.AddressLine2.ShouldBe(viewModel.AddressLine2); request.PostalCode.ShouldBe(viewModel.PostalCode); request.TournamentDivisions.ShouldBeEmpty(); }
/// <summary> /// Validates the model. /// </summary> /// <param name="model">The model.</param> /// <returns></returns> private Boolean ValidateModel(CreateGolfClubViewModel model) { return(this.ModelState.IsValid); }