public async Task <Guid> PostCloneVacancyWithSameDates(CloneVacancyDatesQuestionEditModel model, VacancyUser user) { var vacancy = await GetCloneableAuthorisedVacancyAsync(model); var newVacancyId = await _vacancyClient.CloneVacancyAsync( model.VacancyId.GetValueOrDefault(), user, SourceOrigin.ProviderWeb, vacancy.StartDate.GetValueOrDefault(), vacancy.ClosingDate.GetValueOrDefault()); return(newVacancyId); }
public async Task <IActionResult> CloneVacancyDatesQuestion(CloneVacancyDatesQuestionEditModel model) { if (!ModelState.IsValid) { var vm = await _orchestrator.GetCloneVacancyDatesQuestionViewModelAsync(model); return(View(vm)); } if (model.HasConfirmedClone == true) { var newVacancyId = await _orchestrator.PostCloneVacancyWithSameDates(model, User.ToVacancyUser()); TempData.Add(TempDataKeys.VacancyPreviewInfoMessage, InfoMessages.VacancyCloned); return(RedirectToRoute(RouteNames.Vacancy_Preview_Get, new { VacancyId = newVacancyId })); } else { return(RedirectToRoute(RouteNames.CloneVacancyWithNewDates_Get)); } }