public RoatpApplicationPreambleController(ILogger <RoatpApplicationPreambleController> logger, IRoatpApiClient roatpApiClient, IUkrlpApiClient ukrlpApiClient, ISessionService sessionService, ICompaniesHouseApiClient companiesHouseApiClient, IOuterApiClient outerApiClient, IOrganisationApiClient organisationApiClient, IUsersApiClient usersApiClient, IApplicationApiClient applicationApiClient, IQnaApiClient qnaApiClient, IAllowedUkprnValidator ukprnWhitelistValidator, IResetRouteQuestionsService resetRouteQuestionsService, IReapplicationCheckService reapplicationCheckService) : base(sessionService) { _logger = logger; _roatpApiClient = roatpApiClient; _ukrlpApiClient = ukrlpApiClient; _sessionService = sessionService; _companiesHouseApiClient = companiesHouseApiClient; _outerApiClient = outerApiClient; _organisationApiClient = organisationApiClient; _usersApiClient = usersApiClient; _applicationApiClient = applicationApiClient; _qnaApiClient = qnaApiClient; _allowedUkprnValidator = ukprnWhitelistValidator; _resetRouteQuestionsService = resetRouteQuestionsService; _reapplicationCheckService = reapplicationCheckService; }
public EnterNewUkprnViewModelValidator(IAllowedUkprnValidator ukprnWhitelistValidator) { RuleFor(x => x.Ukprn) .Cascade(CascadeMode.StopOnFirstFailure) .NotEmpty() .WithMessage(UkprnValidationMessages.MissingUkprn) .Must(x => UkprnValidator.IsValidUkprn(x, out _)) .WithMessage(UkprnValidationMessages.InvalidUkprn) .MustAsync(async(ukprn, token) => await ukprnWhitelistValidator.CanUkprnStartApplication(int.Parse(ukprn))) .WithMessage(UkprnValidationMessages.NotWhitelistedUkprn); }