public async Task <SelectTrainingProviderViewModel> GetSelectTrainingProviderViewModelAsync(VacancyRouteModel vrm, long?ukprn = null) { var vacancyTask = Utility.GetAuthorisedVacancyForEditAsync(_client, _vacancyClient, vrm, RouteNames.TrainingProvider_Select_Get); var trainingProvidersTask = _trainingProviderSummaryProvider.FindAllAsync(); await Task.WhenAll(vacancyTask, trainingProvidersTask); var vacancy = vacancyTask.Result; var trainingProviders = trainingProvidersTask.Result; var programme = await _vacancyClient.GetApprenticeshipProgrammeAsync(vacancy.ProgrammeId); var vm = new SelectTrainingProviderViewModel { Title = vacancy.Title, TrainingProviders = trainingProviders.Select(t => FormatSuggestion(t.ProviderName, t.Ukprn)), PageInfo = Utility.GetPartOnePageInfo(vacancy), Programme = programme.ToViewModel() }; TrySetSelectedTrainingProvider(vm, trainingProviders, vacancy, ukprn); if (vacancy.Status == VacancyStatus.Referred) { vm.Review = await _reviewSummaryService.GetReviewSummaryViewModelAsync(vacancy.VacancyReference.Value, ReviewFieldMappingLookups.GetTrainingProviderFieldIndicators()); } return(vm); }
public async Task <SelectTrainingProviderViewModel> GetSelectTrainingProviderViewModel(VacancyRouteModel vrm) { var vacancy = await Utility.GetAuthorisedVacancyForEditAsync(_client, _vacancyClient, vrm, RouteNames.TrainingProvider_Select_Get); var vm = new SelectTrainingProviderViewModel { Title = vacancy.Title, Ukprn = vacancy.TrainingProvider?.Ukprn?.ToString() }; if (vacancy.Status == VacancyStatus.Referred) { vm.Review = await _reviewSummaryService.GetReviewSummaryViewModelAsync(vacancy.VacancyReference.Value, ReviewFieldMappingLookups.GetTrainingProviderFieldIndicators()); } return(vm); }