Skip to content

Instantly share code, notes, and snippets.

@AlfredoCasado
Created January 10, 2011 18:14
Show Gist options
  • Save AlfredoCasado/773172 to your computer and use it in GitHub Desktop.
Save AlfredoCasado/773172 to your computer and use it in GitHub Desktop.
iteracion 3 anémico
public class Descuento {
private int porcentajeDeDescuento;
private int cantidadFijaDeDescuento;
private String tipoDeDescuento;
public int getPorcentajeDeDescuento() {
return porcentajeDeDescuento;
}
public void setPorcentajeDeDescuento(int porcentajeDeDescuento) {
this.porcentajeDeDescuento = porcentajeDeDescuento;
}
public int getCantidadFijaDeDescuento() {
return cantidadFijaDeDescuento;
}
public void setCantidadFija(int cantidadFija) {
this.cantidadFijaDeDescuento = cantidadFija;
}
public String getTipoDeDescuento() {
return tipoDeDescuento;
}
public void setTipoDeDescuento(String tipoDeDescuento) {
this.tipoDeDescuento = tipoDeDescuento;
}
}
public class CalculoImporteTotalCompra {
public static final String PORCENTAJE = "porcentaje";
public int calcularImporteTotalde(Compra compra) {
List<Producto> productosComprados = compra.getProductosComprados();
int total = 0;
for (Producto unProductoComprado : productosComprados) {
int precio = unProductoComprado.getPrecio();
List<Descuento> descuentosAsociados = unProductoComprado.getDescuentosAsociados();
for (Descuento descuento : descuentosAsociados) {
if (descuento.getTipoDeDescuento().equals(PORCENTAJE)) {
precio-=(descuento.getPorcentajeDeDescuento()/100)*precio;
} else {
precio-=descuento.getCantidadFijaDeDescuento();
}
}
total+=precio;
}
return total;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment