namespace Domain.Dtos.Stock { /// /// Representa un ítem de stock disponible encontrado mediante búsqueda o escaneo. /// Este DTO se utiliza como resultado en la UI para que el usuario elija qué ítem tomar. /// public class StockItemScanResultDto { /// /// Identificador único del ítem en la tabla PhLSM_StockItem. /// public int StockItemId { get; set; } /// /// Identificador del producto asociado. /// public int ProductId { get; set; } /// /// Código de fábrica del producto. /// public string FactoryCode { get; set; } = string.Empty; /// /// Código externo o alternativo (si existe). /// public string? ExternalCode { get; set; } /// /// Nombre formal o técnico del producto. /// public string ProductName { get; set; } = string.Empty; /// /// Descripción comercial o de uso. /// public string? Description { get; set; } /// /// Identificador de la ubicación física (depósito, sala, etc.). /// public int? LocationId { get; set; } /// /// Nombre descriptivo de la ubicación. /// public string? LocationName { get; set; } /// /// Número de lote (si aplica). /// public string? Batch { get; set; } /// /// Número de serie de la unidad individual, según etiqueta de trazabilidad del fabricante. /// public string? Serial { get; set; } /// /// Fecha de vencimiento (si aplica). /// public DateOnly? Expiration { get; set; } /// /// Tipo de trazabilidad del producto: /// 1 = No aplica, 2 = Por cantidad, 3 = Por lote y vencimiento. /// public int TraceabilityType { get; set; } /// /// Cantidad disponible actualmente. /// public decimal AvailableQty { get; set; } /// /// Indica si requiere proceso adicional (por ejemplo, esterilización). /// public bool PlusProcess { get; set; } } }