using FluentValidation;

namespace CMSMicroservice.Application.DiscountShopCQ.Commands.PlaceOrder;

public class PlaceOrderCommandValidator : AbstractValidator<PlaceOrderCommand>
{
    public PlaceOrderCommandValidator()
    {
        RuleFor(x => x.UserId)
            .GreaterThan(0).WithMessage("شناسه کاربر باید مثبت باشد");

        RuleFor(x => x.UserAddressId)
            .GreaterThan(0).WithMessage("آدرس تحویل باید انتخاب شود");

        RuleFor(x => x.DiscountBalanceToUse)
            .GreaterThanOrEqualTo(0).WithMessage("مبلغ استفاده از موجودی تخفیف نمی‌تواند منفی باشد");
    }
}
