示例#1
0
 public CarBodyTypeQueryFunctionality(IUnitOfWork unitOfWork, IMapperFactory mapperFactory, IGenericReadRepository readRepository,
                                      ICarBodyTypeFiltersProvider bodyTypeFiltersProvider, IModelSupportsBodyTypeFiltersProvider modelBodyTypeFiltersProvider,
                                      IModelSupportsBodyTypeRelationsProvider relationsProvider) : base(unitOfWork, mapperFactory, readRepository, bodyTypeFiltersProvider)
 {
     _modelBodyTypeFiltersProvider = modelBodyTypeFiltersProvider;
     _relationsProvider            = relationsProvider;
 }
示例#2
0
        public CarPhotoCreateCommandValidator(IGenericReadRepository readRepository, ICarModelFiltersProvider modelFiltersProvider, ICarBodyTypeFiltersProvider bodyTypeFiltersProvider, IColorCodeFiltersProvider colorFiltersProvider) : base(readRepository)
        {
            _modelFiltersProvider    = modelFiltersProvider;
            _bodyTypeFiltersProvider = bodyTypeFiltersProvider;
            _colorFiltersProvider    = colorFiltersProvider;

            RuleFor(x => x.ModelId)
            .NotEmptyWithMessage()
            .MustExistsWithMessageAsync(ModelExists);

            RuleFor(x => x.BodyTypeId)
            .NotEmptyWithMessage()
            .MustExistsWithMessageAsync(BodyTypeExists);

            RuleFor(x => x.ColorId)
            .NotEmptyWithMessage()
            .MustExistsWithMessageAsync(ColorExists);

            RuleFor(x => x.Photo)
            .NotEmptyWithMessage()
            .DependentRules(() =>
            {
                RuleFor(x => x.Photo)
                .Cascade(CascadeMode.Continue)
                .MustAsync(FileSizeIsValid)
                .WithMessage($"File size should be up to {CarPhotoConstraints.FileMaxSize / 1000000.0f}MB")
                .MustAsync(FileTypeIsValid)
                .WithMessage($"File type is prohibited. Allowed types - {GetSupportedFileTypesString()}");
            });
        }
        public CarBodyTypeCreateCommandValidator(IGenericReadRepository readRepository, ICarBodyTypeFiltersProvider filtersProvider) : base(readRepository)
        {
            _filtersProvider = filtersProvider;

            RuleFor(x => x.Name)
            .NotEmptyWithMessage()
            .MaxLengthWithMessage(CarBodyTypeConstraints.NameMaxLength)
            .MustNotExistWithMessageAsync(NameDoesNotExist);
        }
        public CarBodyTypeAssignCommandValidator(IGenericReadRepository readRepository, ICarModelFiltersProvider modelFiltersProvider, ICarBodyTypeFiltersProvider bodyTypeFiltersProvider, IModelSupportsBodyTypeFiltersProvider modelBodyTypeFiltersProvider) : base(readRepository)
        {
            _modelFiltersProvider         = modelFiltersProvider;
            _bodyTypeFiltersProvider      = bodyTypeFiltersProvider;
            _modelBodyTypeFiltersProvider = modelBodyTypeFiltersProvider;

            RuleFor(x => x.ModelId)
            .NotEmptyWithMessage()
            .MustExistsWithMessageAsync(ModelExists);

            RuleFor(x => x.BodyTypeId)
            .NotEmptyWithMessage()
            .MustExistsWithMessageAsync(BodyTypeExists);

            RuleFor(x => x.Price)
            .IsPositiveOrZeroWithMessage();
        }