using FluentValidation;
using Indotalent.Shared.Consts;

namespace Indotalent.Features.Inventory.UnitMeasure.Cqrs;

public class UpdateUnitMeasureValidator : AbstractValidator<UpdateUnitMeasureRequest>
{
    public UpdateUnitMeasureValidator()
    {
        RuleFor(x => x.Id)
            .NotEmpty().WithMessage("ID is required for update");

        RuleFor(x => x.Name)
            .NotEmpty().WithMessage("Unit Name is required")
            .MaximumLength(GlobalConsts.StringLengthShort);

        RuleFor(x => x.Description)
            .MaximumLength(GlobalConsts.StringLengthMedium);
    }
}