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)); }
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; }
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())); }
public virtual Decimal GetDescuentoVenta(ProductoClienteInfo productoCliente, Decimal pDescuento) { return(ProductoClienteInfo.GetDescuentoCliente(productoCliente, pDescuento)); }
public virtual Decimal GetPrecioVenta(ProductoClienteInfo productoCliente, BatchInfo batch, ETipoFacturacion tipo) { return(ProductoClienteInfo.GetPrecioCliente(productoCliente, this, batch, tipo)); }