Пример #1
0
        internal static Decimal GetDescuentoCliente(ProductoClienteInfo productoCliente, Decimal pDescuento)
        {
            Decimal p_descuento = pDescuento;

            if (productoCliente != null)
            {
                p_descuento = (productoCliente.ETipoDescuento == ETipoDescuento.Porcentaje) ? productoCliente.PDescuento : pDescuento;
            }

            return(Decimal.Round(p_descuento, 2));
        }
Пример #2
0
        internal void CopyValues(ProductoClienteInfo source)
        {
            if (source == null)
            {
                return;
            }

            _record.CopyValues(source.Base.Record);

            _producto     = source.Producto;
            _oid_familia  = source.OidFamilia;
            _oid_impuesto = source.OidImpuesto;
            _p_impuesto   = source.PImpuesto;
        }
Пример #3
0
        internal static Decimal GetPrecioCliente(ProductoClienteInfo productoCliente, BatchInfo partida, ProductInfo producto, ETipoFacturacion tipo)
        {
            Decimal          precio          = 0;
            ETipoFacturacion tipoFacturacion = tipo;

            if (productoCliente != null)
            {
                precio          = (productoCliente.ETipoDescuento == ETipoDescuento.Precio) ? productoCliente.Precio : producto.PrecioVenta;
                tipoFacturacion = productoCliente.ETipoFacturacion;
            }
            else
            {
                precio          = producto.PrecioVenta;
                tipoFacturacion = producto.ETipoFacturacion;
            }

            Decimal kilosBulto = (partida != null) ? partida.KilosPorBulto : producto.KilosBulto;

            kilosBulto = (kilosBulto == 0) ? 1 : kilosBulto;

            switch (tipo)
            {
            case ETipoFacturacion.Peso:

                if (tipoFacturacion != ETipoFacturacion.Peso)
                {
                    precio = precio * kilosBulto;
                }

                break;

            default:

                if (tipoFacturacion == ETipoFacturacion.Peso)
                {
                    precio = precio / kilosBulto;
                }

                break;
            }

            return(Decimal.Round(precio, Common.ModulePrincipal.GetNDecimalesPreciosSetting()));
        }
Пример #4
0
 public virtual Decimal GetDescuentoVenta(ProductoClienteInfo productoCliente, Decimal pDescuento)
 {
     return(ProductoClienteInfo.GetDescuentoCliente(productoCliente, pDescuento));
 }
Пример #5
0
 public virtual Decimal GetPrecioVenta(ProductoClienteInfo productoCliente, BatchInfo batch, ETipoFacturacion tipo)
 {
     return(ProductoClienteInfo.GetPrecioCliente(productoCliente, this, batch, tipo));
 }