private Precio NuevoPrecio(decimal _precioNeto) { var rt = new Precio(); var pn = _precioNeto; var pf = 0.0m; if (_preferenciaPrecio == OOB.LibInventario.Configuracion.Enumerados.EnumPreferenciaRegistroPrecio.Full) { pf = pn + (pn * (s.tasaIva / 100)); switch (_redondeoPrecio) { case OOB.LibInventario.Configuracion.Enumerados.EnumForzarRedondeoPrecioVenta.Unidad: pf = Helpers.MetodosExtension.RoundUnidad((int)pf); break; case OOB.LibInventario.Configuracion.Enumerados.EnumForzarRedondeoPrecioVenta.Decena: pf = Helpers.MetodosExtension.RoundDecena((int)pf); break; } pn = Math.Round(pf / (1 + (s.tasaIva / 100)), 2, MidpointRounding.AwayFromZero); } else { switch (_redondeoPrecio) { case OOB.LibInventario.Configuracion.Enumerados.EnumForzarRedondeoPrecioVenta.Unidad: pn = Helpers.MetodosExtension.RoundUnidad((int)pn); break; case OOB.LibInventario.Configuracion.Enumerados.EnumForzarRedondeoPrecioVenta.Decena: pn = Helpers.MetodosExtension.RoundDecena((int)pn); break; } pf = pn + (pn * (s.tasaIva / 100)); } var pdf = Math.Round(pf / _tasaCambio, 2, MidpointRounding.AwayFromZero); rt.pneto = pn; rt.pdf = pdf; return(rt); }
public Item(OOB.LibInventario.Configuracion.MetodoCalculoUtilidad.CapturarData.Ficha s, decimal _tasaCambio, CalculaPrecio.metodoCalculoUtilidad _metodoCalculoUt, OOB.LibInventario.Configuracion.Enumerados.EnumPreferenciaRegistroPrecio _preferenciaPrecio, OOB.LibInventario.Configuracion.Enumerados.EnumForzarRedondeoPrecioVenta _redondeoPrecio) { this.s = s; this._tasaCambio = _tasaCambio; this._metodoCalculoUt = _metodoCalculoUt; this._preferenciaPrecio = _preferenciaPrecio; this._redondeoPrecio = _redondeoPrecio; if (_metodoCalculoUt == CalculaPrecio.metodoCalculoUtilidad.Lineal) { if (s.precio1_IsHabilitado) { precio_1 = CostoLineal(costoEmpaque_1, s.utilidad_1); } else { precio_1 = new Precio(); } if (s.precio2_IsHabilitado) { precio_2 = CostoLineal(costoEmpaque_2, s.utilidad_2); } else { precio_2 = new Precio(); } if (s.precio3_IsHabilitado) { precio_3 = CostoLineal(costoEmpaque_3, s.utilidad_3); } else { precio_3 = new Precio(); } if (s.precio4_IsHabilitado) { precio_4 = CostoLineal(costoEmpaque_4, s.utilidad_4); } else { precio_4 = new Precio(); } if (s.precio5_IsHabilitado) { precio_5 = CostoLineal(costoEmpaque_5, s.utilidad_5); } else { precio_5 = new Precio(); } } else { if (s.precio1_IsHabilitado) { precio_1 = CostoFinanciero(costoEmpaque_1, s.utilidad_1); } else { precio_1 = new Precio(); } if (s.precio2_IsHabilitado) { precio_2 = CostoFinanciero(costoEmpaque_2, s.utilidad_2); } else { precio_2 = new Precio(); } if (s.precio3_IsHabilitado) { precio_3 = CostoFinanciero(costoEmpaque_3, s.utilidad_3); } else { precio_3 = new Precio(); } if (s.precio4_IsHabilitado) { precio_4 = CostoFinanciero(costoEmpaque_4, s.utilidad_4); } else { precio_4 = new Precio(); } if (s.precio5_IsHabilitado) { precio_5 = CostoFinanciero(costoEmpaque_5, s.utilidad_5); } else { precio_5 = new Precio(); } } }