Skip to content

Instantly share code, notes, and snippets.

View alexduarte's full-sized avatar

Alexsander Duarte Pimenta alexduarte

  • IFood
  • São Paulo
View GitHub Profile
public class DescontaPorVendaCasada implements Desconto {
private Desconto proximo;
public double desconta(Orcamento orcamento) {
if(existe("Lapis",orcamento)&& existe("Caneta", orcamento)){
return orcamento.getValor()*0.05;
}
return proximo.desconta(orcamento);
}
public interface Desconto {
double desconta(Orcamento orcamento);
void setProximo(Desconto proximo);
}
<code>
public class CalculadorDeDescontos {
public double calculaDesconto(Orcamento orcamento){
DescontaPorCincoItens d1 = new DescontaPorCincoItens();
DescontaPorMaisDeQuinhentosReais d2 = new DescontaPorMaisDeQuinhentosReais();
//DescontaPorVendaCasada d3 = new DescontaPorVendaCasada();
SemDesconto d3 = new SemDesconto();
d1.setProximo(d2);
d2.setProximo(d3);