Exemplo n.º 1
0
        public LiquidacionDatos RegistrarFactura(FacturaDatos factura)
        {
            LiquidacionDatos liquidacion = Liquidar(factura);

            factura.Estado = "VIG";
            repoFacturacion.RegistrarFactura(factura);

            foreach (FacturaDetalle detalle in factura.Detalles)
            {
                detalle.Estado = "VIG";
                detalle.IdFac  = factura.IdFac;
                repoFacturacion.RegistarFacturaDetalle(detalle);
            }
            liquidacion.idFac = factura.IdFac;
            return(liquidacion);
        }
Exemplo n.º 2
0
        internal LiquidacionDatos Liquidar(FacturaDatos factura)
        {
            decimal valorBase = 0;

            foreach (FacturaDetalle detalle in factura.Detalles)
            {
                detalle.Subtotal = detalle.Cantidad * detalle.ValorUnidad;
                valorBase       += detalle.Subtotal;
                detalle.Estado   = "VIG";
            }

            factura.ValorBase      = valorBase;
            factura.ValorImpuestos = valorBase * (decimal)0.2;
            factura.ValorTotal     = factura.ValorBase + factura.ValorImpuestos;

            LiquidacionDatos liquidacion = new LiquidacionDatos
            {
                ValorBase      = factura.ValorBase,
                ValorImpuestos = factura.ValorImpuestos,
                ValorTotal     = factura.ValorTotal
            };

            return(liquidacion);
        }