namespace CMSMicroservice.Application.InventoryItemCQ.Commands.ReleaseReservedInventory;

/// <summary>
/// Command برای آزاد کردن موجودی رزرو شده
/// </summary>
public record ReleaseReservedInventoryCommand : IRequest<ReleaseReservedInventoryResponseDto>
{
    /// <summary>شناسه آیتم موجودی</summary>
    public long Id { get; init; }
    /// <summary>تعداد آزادسازی</summary>
    public int Quantity { get; init; }
    /// <summary>شناسه سفارش عادی</summary>
    public long? OrderId { get; init; }
    /// <summary>شناسه سفارش تخفیفی</summary>
    public long? DiscountOrderId { get; init; }
    /// <summary>شماره مرجع</summary>
    public string? ReferenceNumber { get; init; }
    /// <summary>شناسه کاربر انجام‌دهنده</summary>
    public long? PerformedByUserId { get; init; }
}
