Ejemplo n.º 1
0
 private ItemCompra procurarItem(final ItemCompra itemProcurado) {
   for (ItemCompra item : this.itensDeCompra) {
     if (item.equals(itemProcurado)) {
       return item;
     }
   }
   throw new IllegalStateException("Item não encontrado");
 }
Ejemplo n.º 2
0
  private List<String> getCodigosDosItensImpressos() {
    List<String> codigos = new ArrayList<>();

    for (ItemCompra item : this.itensDeCompra) {
      if (item.isImpresso()) codigos.add(item.getCodigo());
    }
    return codigos;
  }
Ejemplo n.º 3
0
  public boolean isComLivrosImpressos() {

    for (ItemCompra itemCompra : this.itensDeCompra) {
      if (itemCompra.isImpresso()) {
        return true;
      }
    }
    return false;
  }
Ejemplo n.º 4
0
  private ItemCompra procurarItemPelaId(final String codigo, Formato formato) {

    for (ItemCompra item : this.itensDeCompra) {
      if (item.getCodigo().equals(codigo) && item.getFormato().equals(formato)) {
        return item;
      }
    }

    return null;
  }
Ejemplo n.º 5
0
  public BigDecimal getTotal() {

    BigDecimal total = BigDecimal.ZERO;

    for (ItemCompra item : this.itensDeCompra) {
      total = total.add(item.getTotal());
    }

    return total.add(valorFrete);
  }
Ejemplo n.º 6
0
  public void adicionarOuIncremantarQuantidadeDoItem(Livro livro, Formato formato) {

    ItemCompra item = new ItemCompra(livro, formato);

    if (jaExisteItem(item)) {
      ItemCompra itemCarrinho = this.procurarItem(item);
      itemCarrinho.incrementaQuantidade(item.getQuantidade());
    } else {
      this.itensDeCompra.add(item);
    }

    cancelarPagamento();
  }
Ejemplo n.º 7
0
  public void verificaDisponibilidadeNoEstoqueComRMI() {
    EstoqueService service = new EstoqueService();
    Estoque estoque = service.getEstoque();

    for (ItemCompra item : itensDeCompra) {
      if (item.isImpresso()) {
        ItemEstoque itemEstoque = estoque.getItemEstoque(item.getCodigo());

        System.out.println("Disponibilidade do item: " + itemEstoque);

        item.setQuantidadeNoEstoque(itemEstoque.getQuantidade());
      }
    }
  }
Ejemplo n.º 8
0
  private void atualizarQuantidadeDisponivelDoItemCompra(final ItemEstoque itemEstoque) {
    ItemCompra item =
        Iterables.find(
            this.itensDeCompra,
            new Predicate<ItemCompra>() {

              @Override
              public boolean apply(ItemCompra item) {
                return item.temCodigo(itemEstoque.getCodigo());
              }
            });

    item.setQuantidadeNoEstoque(itemEstoque.getQuantidade());
  }