Beispiel #1
0
 public CarComplectationQueryFunctionality(IUnitOfWork unitOfWork, IMapperFactory mapperFactory, IGenericReadRepository readRepository,
                                           ICarComplectationFiltersProvider complectationFiltersProvider, ICarComplectationOptionFiltersProvider complectationOptionFiltersProvider)
     : base(unitOfWork, mapperFactory, readRepository, complectationFiltersProvider)
 {
     _complectationFiltersProvider       = complectationFiltersProvider;
     _complectationOptionFiltersProvider = complectationOptionFiltersProvider;
 }
Beispiel #2
0
        public CarComplectationOptionsAssignCommandValidator(IGenericReadRepository readRepository, ICarComplectationFiltersProvider filtersProvider) : base(readRepository)
        {
            _filtersProvider = filtersProvider;

            RuleFor(x => x.ComplectationId)
            .NotEmptyWithMessage()
            .MustExistsWithMessageAsync(ComplectationExists);

            RuleForEach(x => x.Options)
            .NotEmptyWithMessage()
            .MaxLengthWithMessage(CarComplectationConstraints.NameMaxLength);
        }
Beispiel #3
0
        public CarStockUpdateCommandValidator(IGenericReadRepository readRepository, IModelSupportsBodyTypeFiltersProvider modelBodyTypeFiltersProvider, ICarModelFiltersProvider modelFiltersProvider, IModelSupportsColorFiltersProvider modelColorFiltersProvider, ICarComplectationFiltersProvider complectationFiltersProvider, IEngineSupportsGearboxFiltersProvider engineGearboxFiltersProvider, ICarStockFiltersProvider carStockFiltersProvider) : base(readRepository)
        {
            _modelBodyTypeFiltersProvider = modelBodyTypeFiltersProvider;
            _modelFiltersProvider         = modelFiltersProvider;
            _modelColorFiltersProvider    = modelColorFiltersProvider;
            _complectationFiltersProvider = complectationFiltersProvider;
            _engineGearboxFiltersProvider = engineGearboxFiltersProvider;
            _carStockFiltersProvider      = carStockFiltersProvider;

            RuleFor(x => x.Id)
            .NotEmptyWithMessage()
            .MustExistsWithMessageAsync(CarExists);

            RuleFor(x => x.ModelId)
            .NotEmptyWithMessage()
            .MustExistsWithMessageAsync(ModelExists)
            .DependentRules(() =>
            {
                RuleFor(x => x.BodyTypeId)
                .NotEmptyWithMessage()
                .MustAsync(BodyTypeIsValid)
                .WithMessage($"The {{PropertyName}} is not compatible with the provided model.");

                RuleFor(x => x.ColorId)
                .NotEmptyWithMessage()
                .MustAsync(ColorIsValid)
                .WithMessage($"The {{PropertyName}} is not compatible with the provided model.");

                RuleFor(x => x.EngineGearboxId)
                .NotEmptyWithMessage()
                .MustAsync(EngineGearboxIsValid)
                .WithMessage($"The {{PropertyName}} is not compatible with the provided model.");

                RuleFor(x => x.ComplectationId)
                .NotEmptyWithMessage()
                .MustAsync(ComplectationIsValid)
                .WithMessage($"The {{PropertyName}} is not compatible with the provided model.");
            });

            RuleFor(x => x.Amount)
            .IsPositiveOrZeroWithMessage();

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