public async Task <ActionResult> CreateCommitment(CreateCommitmentViewModel viewModel) { if (!ModelState.IsValid) { var model = await _employerCommitmentsOrchestrator.CreateSummary(viewModel.HashedAccountId, viewModel.LegalEntityCode, viewModel.ProviderId.ToString(), viewModel.CohortRef, OwinWrapper.GetClaimValue(@"sub")); return(View("ChoosePath", model)); } if (viewModel.SelectedRoute == "employer") { var userDisplayName = OwinWrapper.GetClaimValue(DasClaimTypes.DisplayName); var userEmail = OwinWrapper.GetClaimValue(DasClaimTypes.Email); var userId = OwinWrapper.GetClaimValue(@"sub"); var response = await _employerCommitmentsOrchestrator.CreateEmployerAssignedCommitment(viewModel, userId, userDisplayName, userEmail); return(RedirectToAction("Details", new { hashedCommitmentId = response.Data })); } return(RedirectToAction("SubmitNewCommitment", new { hashedAccountId = viewModel.HashedAccountId, legalEntityCode = viewModel.LegalEntityCode, legalEntityName = viewModel.LegalEntityName, legalEntityAddress = viewModel.LegalEntityAddress, legalEntitySource = viewModel.LegalEntitySource, providerId = viewModel.ProviderId, providerName = viewModel.ProviderName, cohortRef = viewModel.CohortRef, saveStatus = SaveStatus.Save })); }