コード例 #1
0
        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);
        }
コード例 #2
0
 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;
 }
コード例 #3
0
        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()}");
            });
        }