namespace Domain.Entities
{
public partial class ESalesDocumentDetail
{
public int Id { get; set; }
///
/// Documento comercial al que pertenece el detalle.
///
public int SalesdocumentId { get; set; }
///
/// Numero de linea dentro del documento.
///
public int LineNumber { get; set; }
///
/// Origen logico del item: Manual, QuoteDetail, Adjustment u otro valor definido por Domain/Core.
///
public string OriginType { get; set; } = null!;
///
/// Identificador generico del origen cuando aplique.
///
public int? OriginId { get; set; }
///
/// Detalle del presupuesto aprobado que origina la linea, cuando exista. Puede ser NULL en ventas manuales.
///
public int? QuoteDetailId { get; set; }
///
/// Producto asociado a la linea, si aplica.
///
public int? ProductId { get; set; }
///
/// Descripcion visible de la linea facturada.
///
public string Description { get; set; } = null!;
///
/// Cantidad facturada.
///
public decimal Quantity { get; set; }
///
/// Precio unitario autorizado o de referencia proveniente del origen comercial.
///
public decimal? AuthorizedUnitPrice { get; set; }
///
/// Importe autorizado o de referencia proveniente del origen comercial.
///
public decimal? AuthorizedAmount { get; set; }
///
/// Porcentaje facturado sobre el origen. Permite facturacion parcial obra social / particular.
///
public decimal? BilledPercentage { get; set; }
///
/// Precio unitario efectivo de la linea del documento.
///
public decimal UnitPrice { get; set; }
///
/// Importe neto de la linea.
///
public decimal NetAmount { get; set; }
///
/// Importe de impuestos de la linea.
///
public decimal TaxAmount { get; set; }
///
/// Importe total de la linea.
///
public decimal TotalAmount { get; set; }
///
/// Snapshot JSON del origen de la linea para trazabilidad historica.
///
public string? OriginSnapshotJson { get; set; }
public DateTime Createdat { get; set; }
public DateTime? Modifiedat { get; set; }
public virtual ICollection PhSSalesDocumentCoverages { get; set; } = new List();
}
}