namespace BackOffice.BFF.Application.InventoryCQ.Queries.GetStockMovements; public record GetStockMovementsQuery : IRequest { public long? InventoryItemId { get; init; } public long? ProductId { get; init; } public int? ProductType { get; init; } public int? MovementType { get; init; } public DateTime? FromDate { get; init; } public DateTime? ToDate { get; init; } public int PageIndex { get; init; } = 1; public int PageSize { get; init; } = 20; } public class GetStockMovementsResponseDto { public int TotalCount { get; set; } public MetaData MetaData { get; set; } = new(); public List Movements { get; set; } = new(); } public class StockMovementDto { public long Id { get; set; } public long InventoryItemId { get; set; } public string ProductName { get; set; } = string.Empty; public int MovementType { get; set; } public string MovementTypeName { get; set; } = string.Empty; public int Quantity { get; set; } public int QuantityBefore { get; set; } public int QuantityAfter { get; set; } public long? OrderId { get; set; } public long? DiscountOrderId { get; set; } public string? ReferenceNumber { get; set; } public string? Note { get; set; } public long? PerformedByUserId { get; set; } public string? PerformedByUserName { get; set; } public DateTime CreatedAt { get; set; } }