public static async Task <ApplicationReview> GetAuthorisedApplicationReviewAsync(IRecruitVacancyClient client, ApplicationReviewRouteModel rm) { var applicationReview = await client.GetApplicationReviewAsync(rm.ApplicationReviewId); if (applicationReview.EmployerAccountId == rm.EmployerAccountId) { return(applicationReview); } throw new AuthorisationException(string.Format(ExceptionMessages.ApplicationReviewUnauthorisedAccess, rm.EmployerAccountId, applicationReview.EmployerAccountId, applicationReview.Id, applicationReview.VacancyReference)); }
public static async Task <ApplicationReview> GetAuthorisedApplicationReviewAsync(IRecruitVacancyClient client, ApplicationReviewRouteModel rm) { var applicationReview = await client.GetApplicationReviewAsync(rm.ApplicationReviewId); //TODO: this needs changing when we implement application review story if (applicationReview.EmployerAccountId == rm.Ukprn.ToString()) // needs to be reviewed { return(applicationReview); } throw new AuthorisationException(string.Format(ExceptionMessages.ApplicationReviewUnauthorisedAccess, rm.Ukprn, applicationReview.EmployerAccountId, applicationReview.Id, applicationReview.VacancyReference)); // needs to be reviewed }
public static async Task <ApplicationReview> GetAuthorisedApplicationReviewAsync(IRecruitVacancyClient vacancyClient, ApplicationReviewRouteModel rm) { var applicationReview = await vacancyClient.GetApplicationReviewAsync(rm.ApplicationReviewId); var vacancy = await vacancyClient.GetVacancyAsync(rm.VacancyId.GetValueOrDefault()); try { CheckAuthorisedAccess(vacancy, rm.Ukprn); return(applicationReview); } catch (Exception) { throw new AuthorisationException(string.Format(ExceptionMessages.ApplicationReviewUnauthorisedAccessForProvider, rm.Ukprn, vacancy.TrainingProvider.Ukprn, rm.ApplicationReviewId, vacancy.Id)); } }
public static async Task <ApplicationReview> GetAuthorisedApplicationReviewAsync(IRecruitVacancyClient client, ApplicationReviewRouteModel rm) { var applicationReview = await client.GetApplicationReviewAsync(rm.ApplicationReviewId); var vacancy = await client.GetVacancyAsync(rm.VacancyId); try { CheckAuthorisedAccess(vacancy, rm.EmployerAccountId); return(applicationReview); } catch (Exception) { throw new AuthorisationException(string.Format(ExceptionMessages.ApplicationReviewUnauthorisedAccess, rm.EmployerAccountId, vacancy.EmployerAccountId, rm.ApplicationReviewId, vacancy.Id)); } }
public async Task <ApplicationReview> GetAuthorisedApplicationReviewAsync(ApplicationReviewRouteModel rm) { var applicationReview = _vacancyClient.GetApplicationReviewAsync(rm.ApplicationReviewId); var vacancy = _vacancyClient.GetVacancyAsync(rm.VacancyId); await Task.WhenAll(applicationReview, vacancy); try { CheckAuthorisedAccess(vacancy.Result, rm.EmployerAccountId); return(applicationReview.Result); } catch (Exception) { throw new AuthorisationException(string.Format(ExceptionMessages.ApplicationReviewUnauthorisedAccess, rm.EmployerAccountId, vacancy.Result.EmployerAccountId, rm.ApplicationReviewId, vacancy.Result.Id)); } }