public SupplierUpdateCommandValidator(IGenericReadRepository readRepository, ISupplierFiltersProvider filtersProvider) : base(readRepository) { _filtersProvider = filtersProvider; RuleFor(x => x.Id) .NotEmptyWithMessage() .MustExistsWithMessageAsync(SupplierExists); RuleFor(x => x.CompanyName) .NotEmptyWithMessage() .MaxLengthWithMessage(SupplierConstraints.CompanyNameMaxLength); RuleFor(x => x.Ein) .NotEmptyWithMessage() .MaxLengthWithMessage(SupplierConstraints.EinMaxLength) .IsValidEinWithMessage() .MustNotExistWithMessageAsync(EinDoesNotExist); RuleFor(x => x.Phone) .NotEmptyWithMessage() .MaxLengthWithMessage(SupplierConstraints.PhoneMaxLength) .IsValidPhoneNumberWithMessage(); RuleFor(x => x.Email) .NotEmptyWithMessage() .MaxLengthWithMessage(SupplierConstraints.EmailMaxLength) .IsValidEmailWithMessage(); RuleFor(x => x.Address) .NotEmptyWithMessage() .MaxLengthWithMessage(SupplierConstraints.AddressMaxLength); }
public SupplierQueryFunctionality(IUnitOfWork unitOfWork, IMapperFactory mapperFactory, IGenericReadRepository readRepository, ISupplierFiltersProvider filtersProvider, ISupplierRelationsProvider relationsProvider, ISupplierPhotoFiltersProvider photoFiltersProvider, IFileManager fileManager) : base(unitOfWork, mapperFactory, readRepository) { _filtersProvider = filtersProvider; _relationsProvider = relationsProvider; _photoFiltersProvider = photoFiltersProvider; _fileManager = fileManager; }
public SupplierPhotoCreateCommandValidator(IGenericReadRepository readRepository, ISupplierFiltersProvider supplierFiltersProvider) : base(readRepository) { _supplierFiltersProvider = supplierFiltersProvider; RuleFor(x => x.SupplierId) .NotEmptyWithMessage() .MustExistsWithMessageAsync(SupplierExists); RuleFor(x => x.Photo) .NotEmptyWithMessage() .DependentRules(() => { RuleFor(x => x.Photo) .Cascade(CascadeMode.Continue) .MustAsync(FileSizeIsValid) .WithMessage($"File size should be up to {SupplierPhotoConstraints.FileMaxSize / 1000000.0f}MB") .MustAsync(FileTypeIsValid) .WithMessage($"File type is prohibited. Allowed types - {GetSupportedFileTypesString()}"); }); }