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 ColorCodeQueryFunctionality(IUnitOfWork unitOfWork, IMapperFactory mapperFactory, IGenericReadRepository readRepository, IColorCodeFiltersProvider colorCodeFiltersProvider, IModelSupportsColorFiltersProvider modelColorFiltersProvider, IModelSupportsColorRelationsProvider modelColorRelationsProvider) : base(unitOfWork, mapperFactory, readRepository, colorCodeFiltersProvider) { _modelColorFiltersProvider = modelColorFiltersProvider; _modelColorRelationsProvider = modelColorRelationsProvider; }
public ColorCodeCreateCommandValidator(IGenericReadRepository readRepository, IColorCodeFiltersProvider filtersProvider) : base(readRepository) { _filtersProvider = filtersProvider; RuleFor(x => x.Name) .NotEmptyWithMessage() .MaxLengthWithMessage(ColorCodeConstraints.NameMaxLength) .MustNotExistWithMessageAsync(NameDoesNotExist); RuleFor(x => x.HexValue) .NotEmptyWithMessage() .MaxLengthWithMessage(ColorCodeConstraints.HexValueLength) .IsValidHexColorCodeWithMessage(); }
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); }