Beispiel #1
0
 public EmployerVacancyOrchestrator(IRecruitVacancyClient vacancyClient, ITrainingProviderSummaryProvider trainingProviderSummaryProvider,
                                    IEmployerVacancyClient employerVacancyClient)
 {
     _vacancyClient = vacancyClient;
     _trainingProviderSummaryProvider = trainingProviderSummaryProvider;
     _employerVacancyClient           = employerVacancyClient;
 }
        public FluentVacancyValidator(
            ITimeProvider timeProvider,
            IMinimumWageProvider minimumWageService,
            IApprenticeshipProgrammeProvider apprenticeshipProgrammesProvider,
            IQualificationsProvider qualificationsProvider,
            IHtmlSanitizerService htmlSanitizerService,
            ITrainingProviderSummaryProvider trainingProviderSummaryProvider,
            IBlockedOrganisationQuery blockedOrganisationRepo,
            IProfanityListProvider profanityListProvider,
            IProviderRelationshipsService providerRelationshipService)
        {
            _timeProvider                     = timeProvider;
            _minimumWageService               = minimumWageService;
            _qualificationsProvider           = qualificationsProvider;
            _apprenticeshipProgrammesProvider = apprenticeshipProgrammesProvider;
            _htmlSanitizerService             = htmlSanitizerService;
            _trainingProviderSummaryProvider  = trainingProviderSummaryProvider;
            _blockedOrganisationRepo          = blockedOrganisationRepo;
            _profanityListProvider            = profanityListProvider;
            _providerRelationshipService      = providerRelationshipService;

            SingleFieldValidations();

            CrossFieldValidations();
        }
 public ErrorController(ILogger <ErrorController> logger, IOptions <ExternalLinksConfiguration> externalLinks, IRecruitVacancyClient vacancyClient, ITrainingProviderSummaryProvider trainingProviderSummaryProvider)
 {
     _logger        = logger;
     _externalLinks = externalLinks.Value;
     _vacancyClient = vacancyClient;
     _trainingProviderSummaryProvider = trainingProviderSummaryProvider;
 }
 public ProviderAccountHandler(IHostingEnvironment hostingEnvironment, IProviderVacancyClient client, IRecruitVacancyClient vacancyClient, IBlockedOrganisationQuery blockedOrganisationsRepo, ITempDataProvider tempDataProvider, ITrainingProviderSummaryProvider trainingProviderSummaryProvider)
 {
     _hostingEnvironment              = hostingEnvironment;
     _client                          = client;
     _vacancyClient                   = vacancyClient;
     _blockedOrganisationsRepo        = blockedOrganisationsRepo;
     _tempDataProvider                = tempDataProvider;
     _trainingProviderSummaryProvider = trainingProviderSummaryProvider;
 }
Beispiel #5
0
 public VacancyClient(
     IVacancyRepository repository,
     IVacancyQuery vacancyQuery,
     IQueryStoreReader reader,
     IMessaging messaging,
     IEntityValidator <Vacancy, VacancyRuleSet> validator,
     IApprenticeshipProgrammeProvider apprenticeshipProgrammesProvider,
     IEmployerAccountProvider employerAccountProvider,
     IApplicationReviewRepository applicationReviewRepository,
     IVacancyReviewQuery vacancyReviewQuery,
     ICandidateSkillsProvider candidateSkillsProvider,
     IVacancyService vacancyService,
     IEmployerDashboardProjectionService employerDashboardService,
     IProviderDashboardProjectionService providerDashboardService,
     IEmployerProfileRepository employerProfileRepository,
     IUserRepository userRepository,
     IQualificationsProvider qualificationsProvider,
     ITrainingProviderService trainingProviderService,
     IEmployerService employerService,
     IReportRepository reportRepository,
     IReportService reportService,
     IUserNotificationPreferencesRepository userNotificationPreferencesRepository,
     AbstractValidator <UserNotificationPreferences> userNotificationPreferencesValidator,
     ITrainingProviderSummaryProvider trainingProviderSummaryProvider,
     AbstractValidator <Qualification> qualificationValidator)
 {
     _repository   = repository;
     _vacancyQuery = vacancyQuery;
     _reader       = reader;
     _messaging    = messaging;
     _validator    = validator;
     _apprenticeshipProgrammesProvider = apprenticeshipProgrammesProvider;
     _employerAccountProvider          = employerAccountProvider;
     _applicationReviewRepository      = applicationReviewRepository;
     _vacancyReviewQuery                    = vacancyReviewQuery;
     _candidateSkillsProvider               = candidateSkillsProvider;
     _vacancyService                        = vacancyService;
     _employerDashboardService              = employerDashboardService;
     _providerDashboardService              = providerDashboardService;
     _employerProfileRepository             = employerProfileRepository;
     _userRepository                        = userRepository;
     _qualificationsProvider                = qualificationsProvider;
     _trainingProviderService               = trainingProviderService;
     _employerService                       = employerService;
     _reportRepository                      = reportRepository;
     _reportService                         = reportService;
     _userNotificationPreferencesRepository = userNotificationPreferencesRepository;
     _userNotificationPreferencesValidator  = userNotificationPreferencesValidator;
     _trainingProviderSummaryProvider       = trainingProviderSummaryProvider;
     _qualificationValidator                = qualificationValidator;
 }
Beispiel #6
0
 public TrainingProviderOrchestrator(
     IEmployerVacancyClient client,
     IRecruitVacancyClient vacancyClient,
     ILogger <TrainingProviderOrchestrator> logger,
     IReviewSummaryService reviewSummaryService,
     ITrainingProviderSummaryProvider trainingProviderSummarayProvider,
     ITrainingProviderService trainingProviderService
     ) : base(logger)
 {
     _client                          = client;
     _vacancyClient                   = vacancyClient;
     _reviewSummaryService            = reviewSummaryService;
     _trainingProviderSummaryProvider = trainingProviderSummarayProvider;
     _trainingProviderService         = trainingProviderService;
 }
Beispiel #7
0
 public TrainingProviderOrchestrator(
     IRecruitVacancyClient vacancyClient,
     ILogger <TrainingProviderOrchestrator> logger,
     IReviewSummaryService reviewSummaryService,
     ITrainingProviderSummaryProvider trainingProviderSummarayProvider,
     ITrainingProviderService trainingProviderService,
     IUtility utility
     ) : base(logger)
 {
     _vacancyClient                   = vacancyClient;
     _reviewSummaryService            = reviewSummaryService;
     _trainingProviderSummaryProvider = trainingProviderSummarayProvider;
     _trainingProviderService         = trainingProviderService;
     _utility = utility;
 }
        public TrainingProviderValidator(long ruleId, ITrainingProviderSummaryProvider trainingProviderSummaryProvider, IBlockedOrganisationQuery blockedOrganisationRepo)
        {
            RuleFor(tp => tp.Ukprn.ToString())
            .NotEmpty()
            .WithMessage("You must enter a training provider")
            .WithErrorCode(ErrorCodes.TrainingProviderUkprnNotEmpty)
            .Length(UkprnLength)
            .WithMessage($"The UKPRN is {UkprnLength} digits")
            .WithErrorCode(ErrorCodes.TrainingProviderUkprnMustBeCorrectLength)
            .WithRuleId(ruleId);

            When(tp => tp.Ukprn.ToString().Length == UkprnLength, () =>
            {
                RuleFor(tp => tp)
                .TrainingProviderMustExistInRoatp(trainingProviderSummaryProvider)
                .TrainingProviderMustNotBeBlocked(blockedOrganisationRepo)
                .WithRuleId(ruleId);
            });
        }
        internal static IRuleBuilderInitial <TrainingProvider, TrainingProvider> TrainingProviderMustExistInRoatp(this IRuleBuilder <TrainingProvider, TrainingProvider> ruleBuilder, ITrainingProviderSummaryProvider trainingProviderSummaryProvider)
        {
            return(ruleBuilder.CustomAsync(async(trainingProvider, context, cancellationToken) =>
            {
                if (trainingProvider.Ukprn.HasValue &&
                    (await trainingProviderSummaryProvider.GetAsync(trainingProvider.Ukprn.Value)) != null)
                {
                    return;
                }

                var failure = new ValidationFailure(nameof(Vacancy.TrainingProvider), "The UKPRN is not valid or the associated provider is not active")
                {
                    ErrorCode = ErrorCodes.TrainingProviderMustExist,
                    CustomState = VacancyRuleSet.TrainingProvider
                };
                context.AddFailure(failure);
            }));
        }
Beispiel #10
0
 public ProviderDataEntityPlugin(ITrainingProviderSummaryProvider trainingProviderSummaryProvider)
 {
     _trainingProviderSummaryProvider = trainingProviderSummaryProvider;
 }