using FluentValidation;

namespace CMSMicroservice.Application.OrderManagementCQ.Commands.CancelOrderByAdmin;

public class CancelOrderByAdminCommandValidator : AbstractValidator<CancelOrderByAdminCommand>
{
    public CancelOrderByAdminCommandValidator()
    {
        RuleFor(x => x.OrderId)
            .GreaterThan(0).WithMessage("شناسه سفارش نامعتبر است");

        RuleFor(x => x.CancelReason)
            .NotEmpty().WithMessage("دلیل لغو الزامی است")
            .MaximumLength(500).WithMessage("دلیل لغو نمی‌تواند بیشتر از 500 کاراکتر باشد");
    }
}
