private decimal CalcularMontoSegunCondicionIvaMayorista(decimal porcentajeFacturacion, CondicionIVA condicionIva, decimal monto) { //A los Excentos y Monotibutistas hay que agregarle el iva dado que los montos que manejan no tiene IVA switch (condicionIva) { case CondicionIVA.Responsable_Inscripto: return(monto * porcentajeFacturacion); case CondicionIVA.Monotributo: case CondicionIVA.Exento: decimal montoConIva = Monto.ObtenerConIVA(monto, this.Producto.SubCategoria.IVA.Valor, porcentajeFacturacion); return(montoConIva); default: throw new InvalidOperationException($"Error al realizar la facturación. Condición IVA no reconocido {condicionIva.ToString()}"); } }
internal decimal ObtenerMontoSegunTipoDeCliente(decimal monto, decimal iva) { switch (ResponsableIvaComprador) { case MONOTRIBUTISTA: case EXENTO: case CONSUMIDOR_FINAL: return(monto); case RESPONSABLE_INSCRIPTO: decimal montoConIva = Monto.ObtenerConIVA(monto, iva); return(Monto.Redondeo(montoConIva)); default: throw new InvalidOperationException($"Error al realizar la facturación. Tipo de cliente no reconocido {TipoCliente.ToString()}"); } }