public CarEngineCommandFunctionality(IUnitOfWork unitOfWork, IMapperFactory mapperFactory, IGenericWriteRepository writeRepository, IValidatorFactory validatorFactory, IGenericReadRepository readRepository, IEngineSupportsGearboxFiltersProvider engineGearboxFiltersProvider) : base(unitOfWork, mapperFactory, writeRepository, validatorFactory) { _readRepository = readRepository; _engineGearboxFiltersProvider = engineGearboxFiltersProvider; }
public CarEngineQueryFunctionality(IUnitOfWork unitOfWork, IMapperFactory mapperFactory, IGenericReadRepository readRepository, ICarEngineFiltersProvider engineFiltersProvider, ICarEngineRelationsProvider engineRelationsProvider, IEngineSupportsGearboxFiltersProvider engineGearboxFiltersProvider, IEngineSupportsGearboxRelationsProvider engineGearboxRelationsProvider) : base(unitOfWork, mapperFactory, readRepository) { _engineFiltersProvider = engineFiltersProvider; _engineRelationsProvider = engineRelationsProvider; _engineGearboxFiltersProvider = engineGearboxFiltersProvider; _engineGearboxRelationsProvider = engineGearboxRelationsProvider; }
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(); }
public CarEngineGearboxAssignCommandValidator(IGenericReadRepository readRepository, ICarEngineFiltersProvider engineFiltersProvider, IGearboxFiltersProvider gearboxFiltersProvider, ICarModelFiltersProvider modelFiltersProvider, IEngineSupportsGearboxFiltersProvider engineSupportsGearboxFiltersProvider) : base(readRepository) { _engineFiltersProvider = engineFiltersProvider; _gearboxFiltersProvider = gearboxFiltersProvider; _modelFiltersProvider = modelFiltersProvider; _engineSupportsGearboxFiltersProvider = engineSupportsGearboxFiltersProvider; RuleFor(x => x.ModelId) .NotEmptyWithMessage() .MustExistsWithMessageAsync(ModelExists); RuleFor(x => x.EngineId) .NotEmptyWithMessage() .MustExistsWithMessageAsync(EngineExists); RuleFor(x => x.GearboxId) .NotEmptyWithMessage() .MustExistsWithMessageAsync(GearboxExists); RuleFor(x => x.Price) .IsPositiveOrZeroWithMessage(); }