public LibrarySalesAreaPassPriorityModelValidationBase(ILibrarySalesAreaPassPrioritiesRepository librarySalesAreaPassPrioritiesRepository, ISalesAreaRepository salesAreaRepository) { _librarySalesAreaPassPrioritiesRepository = librarySalesAreaPassPrioritiesRepository; _salesAreaRepository = salesAreaRepository; RuleFor(a => a.Name).Must(ContainValidName).WithMessage("Name is required."); RuleFor(a => a.DaysOfWeek).NotNull().NotEmpty().Matches(_validDaysOfWeekRegEx) .WithMessage("DaysOfWeek is incorrect, Correct Format is: '1111111' which represents Monday to Sunday in 7 digits,use 1 to include the day or 0 to exclude the day"); RuleFor(a => a.SalesAreaPriorities).Must(ContainSomeSalesAreaPriorities).WithMessage("SalesAreaPriorities is required."); When(ContainSomeSalesAreaPriorities, () => { RuleFor(a => a.SalesAreaPriorities).Must(ContainOnlyValidSalesAreas) .WithMessage("SalesAreaPriorities should contain a valid 'SalesArea' for each item.") .Must(NotContainDuplicateSalesAreas) .WithMessage("{0}", (c) => CreateDuplicateSalesAreasErrorMessage()) .Must(ContainOnlyExistingSalesAreas) .WithMessage("{0}", (c) => CreateNonExistingSalesAreasErrorMessage()) .Must(ContainOnlyValidPriority) .WithMessage("{0}", (c) => CreateInvalidPriorityErrorMessage()); }); When(IsNotAllDay, () => { RuleFor(a => a.StartTime).Must(ContainValidTime).WithMessage($"StartTime is invalid, {_validTimeMessage}"); RuleFor(a => a.EndTime).Must(ContainValidTime).WithMessage($"EndTime is invalid, {_validTimeMessage}"); }); }
public LibrarySalesAreaPassPrioritiesDomainModelHandler( ILibrarySalesAreaPassPrioritiesRepository librarySalesAreaPassPrioritiesRepository, ISqlServerDbContext dbContext) { _librarySalesAreaPassPrioritiesRepository = librarySalesAreaPassPrioritiesRepository ?? throw new ArgumentNullException( nameof(librarySalesAreaPassPrioritiesRepository)); _dbContext = dbContext ?? throw new ArgumentNullException(nameof(dbContext)); }
/// <summary> /// Create an instance of <see cref="LibrarySalesAreaPassPrioritiesController"/> /// </summary> /// <param name="librarySalesAreaPassPrioritiesRepository">The repository to use for LibrarySalesAreaPassPriority</param> /// <param name="tenantSettingsRepository">The repository to use for TenantSettings</param> /// <param name="mapper">The mapper to use for Model Mappings</param> /// <param name="validatorForCreate">The Validator For Create</param> /// <param name="validatorForUpdate">The Validator For Update</param> public LibrarySalesAreaPassPrioritiesController(ILibrarySalesAreaPassPrioritiesRepository librarySalesAreaPassPrioritiesRepository, ITenantSettingsRepository tenantSettingsRepository, IMapper mapper, IModelDataValidator <CreateLibrarySalesAreaPassPriorityModel> validatorForCreate, IModelDataValidator <UpdateLibrarySalesAreaPassPriorityModel> validatorForUpdate) { _mapper = mapper; _librarySalesAreaPassPrioritiesRepository = librarySalesAreaPassPrioritiesRepository; _tenantSettingsRepository = tenantSettingsRepository; _validatorForCreate = validatorForCreate; _validatorForUpdate = validatorForUpdate; }
public UpdateLibrarySalesAreaPassPriorityModelValidation(ILibrarySalesAreaPassPrioritiesRepository repository, ISalesAreaRepository salesAreaRepository) : base(repository, salesAreaRepository) { RuleFor(a => a).MustAsync(ContainUniqueName).When(ContainsValidName).WithName("Name").WithMessage(NameAlreadyExistsMessage); }