using CMSMicroservice.Domain.Enums;

namespace CMSMicroservice.Application.InventoryItemCQ.Commands.CreateInventoryItem;

/// <summary>
/// Command برای ایجاد آیتم موجودی جدید
/// </summary>
public record CreateInventoryItemCommand : IRequest<CreateInventoryItemResponseDto>
{
    /// <summary>شناسه محصول عادی</summary>
    public long? ProductId { get; init; }
    /// <summary>شناسه محصول تخفیفی</summary>
    public long? DiscountProductId { get; init; }
    /// <summary>شناسه انبار</summary>
    public long WarehouseId { get; init; }
    /// <summary>تعداد موجودی</summary>
    public int Quantity { get; init; }
    /// <summary>حداقل موجودی (هشدار)</summary>
    public int MinQuantity { get; init; }
    /// <summary>حداکثر موجودی</summary>
    public int MaxQuantity { get; init; }
    /// <summary>فعال؟</summary>
    public bool IsActive { get; init; } = true;
}
