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 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); }
public CarComplectationCreateCommandValidator(IGenericReadRepository readRepository, ICarModelFiltersProvider modelFiltersProvider) : base(readRepository) { _modelFiltersProvider = modelFiltersProvider; RuleFor(x => x.Name) .NotEmptyWithMessage() .MaxLengthWithMessage(CarComplectationConstraints.NameMaxLength); RuleFor(x => x.Price) .IsPositiveOrZeroWithMessage(); RuleFor(x => x.ModelId) .NotEmptyWithMessage() .MustExistsWithMessageAsync(ModelExists); }
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(); }
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 CarModelUpdateCommandValidator(IGenericReadRepository readRepository, IBrandFiltersProvider brandFiltersProvider, ICarModelFiltersProvider carModelFiltersProvider) : base(readRepository) { _brandFiltersProvider = brandFiltersProvider; _carModelFiltersProvider = carModelFiltersProvider; RuleFor(x => x.Id) .NotEmptyWithMessage() .MustExistsWithMessageAsync(CarModelExists); RuleFor(x => x.Name) .NotEmptyWithMessage() .MaxLengthWithMessage(CarModelConstraints.NameMaxLength); RuleFor(x => x.Price) .IsPositiveWithMessage(); RuleFor(x => x.BrandId) .NotEmptyWithMessage() .MustExistsWithMessageAsync(BrandExists); }
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(); }
public CarModelQueryFunctionality(IUnitOfWork unitOfWork, IMapperFactory mapperFactory, IGenericReadRepository readRepository, ICarModelFiltersProvider filtersProvider) : base(unitOfWork, mapperFactory, readRepository, filtersProvider) { _filtersProvider = filtersProvider; }