Пример #1
0
 public ColorCodeQueryFunctionality(IUnitOfWork unitOfWork, IMapperFactory mapperFactory, IGenericReadRepository readRepository,
                                    IColorCodeFiltersProvider colorCodeFiltersProvider, IModelSupportsColorFiltersProvider modelColorFiltersProvider,
                                    IModelSupportsColorRelationsProvider modelColorRelationsProvider) : base(unitOfWork, mapperFactory, readRepository, colorCodeFiltersProvider)
 {
     _modelColorFiltersProvider   = modelColorFiltersProvider;
     _modelColorRelationsProvider = modelColorRelationsProvider;
 }
        public CarColorAssignmentCommandValidator(IGenericReadRepository readRepository, ICarModelFiltersProvider modelFiltersProvider, IColorCodeFiltersProvider colorFiltersProvider, IModelSupportsColorFiltersProvider modelColorFiltersProvider) : base(readRepository)
        {
            _modelFiltersProvider      = modelFiltersProvider;
            _colorFiltersProvider      = colorFiltersProvider;
            _modelColorFiltersProvider = modelColorFiltersProvider;

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

            RuleFor(x => x.ColorId)
            .NotEmptyWithMessage()
            .MustExistsWithMessageAsync(ColorExists);
        }
Пример #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();
        }
Пример #4
0
 public ColorCodeCommandFunctionality(IUnitOfWork unitOfWork, IMapperFactory mapperFactory, IGenericWriteRepository writeRepository, IValidatorFactory validatorFactory, IGenericReadRepository readRepository, IModelSupportsColorFiltersProvider modelColorFiltersProvider) : base(unitOfWork, mapperFactory, writeRepository, validatorFactory)
 {
     _readRepository            = readRepository;
     _modelColorFiltersProvider = modelColorFiltersProvider;
 }