public void adicionar(Produto produto) { int posicaoEncontrada = -1; for (int pos = 0; pos < listaItensVenda.size() && posicaoEncontrada < 0; pos++) { Itens_Venda itemTemp = listaItensVenda.get(pos); if (itemTemp.getProduto().equals(produto)) { posicaoEncontrada = pos; } } int testeQuantidade = produto.getQuantidade(); System.out.println("Quantidade ProdutoAAAAAAAAAAAAAAAA " + testeQuantidade); Itens_Venda item = new Itens_Venda(); item.setProduto(produto); if (produto.getQuantidade() != 0) { if (posicaoEncontrada < 0) { item.setQuantidade(1); item.setValor_parcial_venda(produto.getPreco()); listaItensVenda.add(item); } else { Itens_Venda itemTemp = listaItensVenda.get(posicaoEncontrada); item.setQuantidade(itemTemp.getQuantidade() + 1); if (item.getQuantidade() <= testeQuantidade) { // Novo BigDecicmal multiplico pelo preco do produto item.setValor_parcial_venda( produto.getPreco().multiply(new BigDecimal(item.getQuantidade()))); listaItensVenda.set(posicaoEncontrada, item); System.out.println("IGUAL OS VALORES AAA"); vendaCadastro.setValor_total_venda( vendaCadastro.getValor_total_venda().add(produto.getPreco())); vendaCadastro.setQuantidade(vendaCadastro.getQuantidade() + 1); } else { FacesUtil.adicionarMsgErro("Quantidade adicionada maior do que a do estoque"); } } if (posicaoEncontrada < 0) { vendaCadastro.setValor_total_venda( vendaCadastro.getValor_total_venda().add(produto.getPreco())); vendaCadastro.setQuantidade(vendaCadastro.getQuantidade() + 1); } } else { FacesUtil.adicionarMsgErro("Produto zerado em estoque"); } }
public void carregarProdutos() { try { ProdutoDAO dao = new ProdutoDAO(); listaProdutos = dao.listar(); } catch (RuntimeException ex) { FacesUtil.adicionarMsgErro("Erro ao tentar listar os produto: " + ex.getMessage()); } }
public void calcularTroco() { Double valorRecebido = vendaCadastro.getValorRecebido().doubleValue(); Double valorVenda = vendaCadastro.getValor_total_venda().doubleValue(); Double valorRestante = valorVenda - valorRecebido; Double valorCorrigido = formatarDecimal(valorRestante); if (vendaCadastro.getValorRecebido().equals(vendaCadastro.getValor_total_venda())) { FacesUtil.adicionarMsgErro("Valor Recebido igual ao da Venda"); } else if (valorRecebido < valorVenda) { FacesUtil.adicionarMsgErro("Ainda faltam R$ " + valorCorrigido); vendaCadastro.setValorTroco(new BigDecimal("0.00")); } else if (valorVenda == 0) { FacesUtil.adicionarMsgErro("Nenhum produto foi adcionado"); } else { vendaCadastro.setValorTroco( vendaCadastro.getValor_total_venda().subtract(vendaCadastro.getValorRecebido())); } }
public void salvar() { Integer verificarZero = new Integer(vendaCadastro.getQuantidade()); if (verificarZero == 0) { FacesUtil.adicionarMsgErro("Nenhum produto adicionado para venda"); } else { try { VendaDAO vendaDao = new VendaDAO(); Long idVenda = vendaDao.salvar(vendaCadastro); Venda vendaFK = vendaDao.buscarPorCodigo(idVenda); for (Itens_Venda item : listaItensVenda) { item.setVenda(vendaFK); Itens_VendaDAO itemDAO = new Itens_VendaDAO(); itemDAO.salvar(item); Produto produto = item.getProduto(); int quantidade = produto.getQuantidade() - item.getQuantidade(); produto.setQuantidade(quantidade); ProdutoDAO produtoDAO = new ProdutoDAO(); produtoDAO.editar(produto); } FacesUtil.adicionarMsgInfo("Venda Salva com sucesso"); vendaCadastro = new Venda(); vendaCadastro.setValor_total_venda(new BigDecimal(0)); vendaCadastro.setQuantidade(0); listaItensVenda = new ArrayList<Itens_Venda>(); vendaCadastro.setValorTroco(new BigDecimal("0.00")); } catch (RuntimeException ex) { FacesUtil.adicionarMsgErro("Erro ao tentar salvar a venda: " + ex.getMessage()); } } }
public void carregarDadosVenda() { double valorTeste = vendaCadastro.getValor_total_venda().doubleValue(); if (valorTeste == 0) { FacesUtil.adicionarMsgErro("Nenhum produto"); } else { vendaCadastro.setHorario_venda(new Date()); FuncionarioDAO dao = new FuncionarioDAO(); Funcionario fun = dao.buscarPorCodigo(autenticacaoBean.getFuncionarioLogado().getId()); vendaCadastro.setFuncionario(fun); } }
public void buscar() { try { VendaDAO venda = new VendaDAO(); listaVendasFiltradas = venda.buscar(filtro); // for(Venda vendas:listaVendasFiltradas){ // System.out.println(vendas); // } } catch (RuntimeException ex) { FacesUtil.adicionarMsgErro("Erro ao tentar buscar vendas: " + ex.getMessage()); } }