// EN: Validators for Subscription commands.
// VI: Validators cho các commands Subscription.

using FluentValidation;
using MerchantService.API.Application.Commands.Subscriptions;

namespace MerchantService.API.Application.Validations;

/// <summary>
/// EN: Validator for SubscribeCommand.
/// VI: Validator cho SubscribeCommand.
/// </summary>
public class SubscribeCommandValidator : AbstractValidator<SubscribeCommand>
{
    public SubscribeCommandValidator()
    {
        RuleFor(x => x.PlanId)
            .InclusiveBetween(0, 3)
            .WithMessage("Plan ID must be between 0 and 3 (0=Starter, 1=Growth, 2=Pro, 3=Enterprise) / ID gói phải từ 0 đến 3 (0=Starter, 1=Growth, 2=Pro, 3=Enterprise)");
    }
}
