using CMSMicroservice.Domain.Enums;

namespace CMSMicroservice.Application.UserOrderCQ.Commands.CancelOrder;

/// <summary>
/// Command برای لغو سفارش
/// </summary>
public record CancelOrderCommand : IRequest<CancelOrderResponseDto>
{
    /// <summary>
    /// شناسه سفارش
    /// </summary>
    public long OrderId { get; init; }
    
    /// <summary>
    /// دلیل لغو سفارش
    /// </summary>
    public string CancelReason { get; init; }
    
    /// <summary>
    /// آیا مبلغ باید بازگردانده شود؟
    /// </summary>
    public bool RefundPayment { get; init; }
}
