/** pesquisa no banco de Dados por um carro de acordo com a placa */ public void pesquisarPorPlaca() { setEhCadastrado(false); setJaPesquisei(true); // Retorna um estado completo de acordo com um ID ICommand command = mapCommands.get("CONSULTAR"); Resultado resultado = new Resultado(); resultado = command.execute(revisao.getCarro()); // CArro foi encontrado if (resultado.getEntidades().get(0) != null) { revisao.setCarro((Carro) resultado.getEntidades().get(0)); setEhCadastrado(true); setJaPesquisei(false); return; } else { revisao.setCarro(new Carro()); return; } }
@Override public void carregarListagem() { // escolhe o Command corretamente de acordo com a operacao ICommand command = mapConducaoCommands.get("LISTAR"); Resultado resultado = new Resultado(); resultado = command.execute(new Revisao()); if (resultado != null) { listaRevisao = resultado.getEntidades(); } totaoRevisaoRealizada = listaRevisao.size(); command = mapConducaoCommands.get("CONSULTAR"); resultado = new Resultado(); resultado = command.execute(new Devolucao()); if (resultado != null) { listaDevolucaoAguardandoRevisao = resultado.getEntidades(); } totalRevisaoNaFila = listaDevolucaoAguardandoRevisao.size(); // se nao for vazio limpa para nao ocorrer duplicação if (!produtosCadastrados.isEmpty()) { produtosCadastrados.clear(); } carregarProdutosCadastrados(); /* * verifica se ja ja tem uma Devolução preenchida Se tiver significa que * foi clicado para Revisar na View Devolucao.xhtml */ if (revisao.getDevolucao().getId() > 0) { revisao.setCarro(revisao.getDevolucao().getRetirada().getCarro()); revisao.setQuilometragem(Long.valueOf(revisao.getDevolucao().getQuilometragem())); pesquisarPorPlaca(); } }
/** limpa a tela de pesquisa de REvisao Deixando pronto para uma nova Pesquisa */ public void limparObjetos() { revisao = new Revisao(); revisao.setCarro(new Carro()); arrefecimento = new Arrefecimento(); bateria = new Bateria(); embreagem = new Embreagem(); freio = new Freio(); motor = new Motor(); suspensao = new Suspensao(); dianteiroDireito = new Pneu(); dianteiroEsquerdo = new Pneu(); traseiroDireito = new Pneu(); traseiroEsquerdo = new Pneu(); estepe = new Pneu(); // limpar Produtos amortecedorProduto = new Amortecedor(); correiaDentadaProduto = new CorreiaDentada(); embreagemProduto = new br.com.dealercar.domain.produtosrevisao.Embreagem(); farolProduto = new Farol(); filtroDeArProduto = new FiltroDeAr(); filtroDeOleoMotorProduto = new FiltroDeOleoMotor(); fluidoDeFreioProduto = new FluidoDeFreio(); pastilhaFreioProduto = new PastilhaFreio(); pneuProduto = new br.com.dealercar.domain.produtosrevisao.Pneu(); velasIgnicaoProduto = new VelasIgnicao(); pneus.clear(); produtosCadastrados.clear(); produtosUtilizados.clear(); produtoRevisao = new ProdutoRevisao(); quantidadeProduto.put(Amortecedor.class.getSimpleName(), 0); quantidadeProduto.put(CorreiaDentada.class.getSimpleName(), 0); quantidadeProduto.put( br.com.dealercar.domain.produtosrevisao.Embreagem.class.getSimpleName(), 0); quantidadeProduto.put(Farol.class.getSimpleName(), 0); quantidadeProduto.put(FiltroDeAr.class.getSimpleName(), 0); quantidadeProduto.put(FiltroDeOleoMotor.class.getSimpleName(), 0); quantidadeProduto.put(FluidoDeFreio.class.getSimpleName(), 0); quantidadeProduto.put(PastilhaFreio.class.getSimpleName(), 0); quantidadeProduto.put(br.com.dealercar.domain.produtosrevisao.Pneu.class.getSimpleName(), 0); quantidadeProduto.put(VelasIgnicao.class.getSimpleName(), 0); setEhCadastrado(false); setJaPesquisei(false); }
/** Adiciona o produto utilizado na Revisão */ public void addProduto() { // recebe a operacao a ser realizada String operacao = FacesContext.getCurrentInstance() .getExternalContext() .getRequestParameterMap() .get("param"); ICommand command = mapCommands.get(operacao); if (revisao.getQuilometragem().equals("") || revisao.getQuilometragem() < 0) { org.primefaces.context.RequestContext.getCurrentInstance() .update(":frmNovaRevisaoTab:pnlNovaRevisao :msgGlobal"); } produtoRevisao.setQuantidade(produtoRevisao.getQuantidade() - 1); quantidadeProduto.put( produtoRevisao.getClass().getSimpleName(), quantidadeProduto.get(produtoRevisao.getClass().getSimpleName()) + 1); if (produtoRevisao instanceof Amortecedor) { amortecedorProduto = (Amortecedor) produtoRevisao; command.execute((Amortecedor) produtoRevisao); amortecedorProduto.setQuantidade(quantidadeProduto.get(Amortecedor.class.getSimpleName())); // adicionanto a table de produtos utilizados produtosUtilizados.add(amortecedorProduto); } else if (produtoRevisao instanceof CorreiaDentada) { correiaDentadaProduto = (CorreiaDentada) produtoRevisao; command.execute((CorreiaDentada) produtoRevisao); correiaDentadaProduto.setQuantidade( quantidadeProduto.get(CorreiaDentada.class.getSimpleName())); produtosUtilizados.add(correiaDentadaProduto); } else if (produtoRevisao instanceof br.com.dealercar.domain.produtosrevisao.Embreagem) { embreagemProduto = (br.com.dealercar.domain.produtosrevisao.Embreagem) produtoRevisao; command.execute((br.com.dealercar.domain.produtosrevisao.Embreagem) produtoRevisao); embreagemProduto.setQuantidade(quantidadeProduto.get(Embreagem.class.getSimpleName())); produtosUtilizados.add(embreagemProduto); } else if (produtoRevisao instanceof Farol) { farolProduto = (Farol) produtoRevisao; command.execute((Farol) produtoRevisao); farolProduto.setQuantidade(quantidadeProduto.get(Farol.class.getSimpleName())); produtosUtilizados.add(farolProduto); } else if (produtoRevisao instanceof FiltroDeAr) { filtroDeArProduto = (FiltroDeAr) produtoRevisao; command.execute((FiltroDeAr) produtoRevisao); filtroDeArProduto.setQuantidade(quantidadeProduto.get(FiltroDeAr.class.getSimpleName())); produtosUtilizados.add(filtroDeArProduto); } else if (produtoRevisao instanceof FiltroDeOleoMotor) { filtroDeOleoMotorProduto = (FiltroDeOleoMotor) produtoRevisao; command.execute((FiltroDeOleoMotor) produtoRevisao); filtroDeOleoMotorProduto.setQuantidade( quantidadeProduto.get(FiltroDeOleoMotor.class.getSimpleName())); produtosUtilizados.add(filtroDeOleoMotorProduto); } else if (produtoRevisao instanceof FluidoDeFreio) { fluidoDeFreioProduto = (FluidoDeFreio) produtoRevisao; command.execute((FluidoDeFreio) produtoRevisao); fluidoDeFreioProduto.setQuantidade( quantidadeProduto.get(FluidoDeFreio.class.getSimpleName())); produtosUtilizados.add(fluidoDeFreioProduto); } else if (produtoRevisao instanceof PastilhaFreio) { pastilhaFreioProduto = (PastilhaFreio) produtoRevisao; command.execute((PastilhaFreio) produtoRevisao); pastilhaFreioProduto.setQuantidade( quantidadeProduto.get(PastilhaFreio.class.getSimpleName())); produtosUtilizados.add(pastilhaFreioProduto); } else if (produtoRevisao instanceof br.com.dealercar.domain.produtosrevisao.Pneu) { pneuProduto = (br.com.dealercar.domain.produtosrevisao.Pneu) produtoRevisao; command.execute((br.com.dealercar.domain.produtosrevisao.Pneu) produtoRevisao); pneuProduto.setQuantidade( quantidadeProduto.get( br.com.dealercar.domain.produtosrevisao.Pneu.class.getSimpleName())); produtosUtilizados.add(pneuProduto); } else if (produtoRevisao instanceof VelasIgnicao) { velasIgnicaoProduto = (VelasIgnicao) produtoRevisao; command.execute((VelasIgnicao) produtoRevisao); velasIgnicaoProduto.setQuantidade(quantidadeProduto.get(VelasIgnicao.class.getSimpleName())); produtosUtilizados.add(velasIgnicaoProduto); } produtoRevisao = new ProdutoRevisao(); }
/** Efetua a revisao do carro pesquisado */ @Override public void executar() { // recebe a operacao a ser realizada String operacao = FacesContext.getCurrentInstance() .getExternalContext() .getRequestParameterMap() .get("param"); // Retorna um estado completo de acordo com um ID ICommand command = mapConducaoCommands.get(operacao); // recebendo os componentes revisao.getComponentes().add(arrefecimento); revisao.getComponentes().add(bateria); revisao.getComponentes().add(embreagem); revisao.getComponentes().add(freio); revisao.getComponentes().add(lanterna); revisao.getComponentes().add(motor); revisao.getComponentes().add(suspensao); // recebendo os pneus dianteiroDireito.setPosicaoPneu(PosicaoPneu.DIANTEIRO_DIREITO); dianteiroEsquerdo.setPosicaoPneu(PosicaoPneu.DIANTEIRO_ESQUERDO); traseiroDireito.setPosicaoPneu(PosicaoPneu.TRASEIRO_DIREITO); traseiroEsquerdo.setPosicaoPneu(PosicaoPneu.TRASEIRO_ESQUERDO); estepe.setPosicaoPneu(PosicaoPneu.ESTEPE); pneus.add(dianteiroDireito); pneus.add(dianteiroEsquerdo); pneus.add(traseiroDireito); pneus.add(traseiroEsquerdo); pneus.add(estepe); // Adicionando cada pneu da lista Pneus na lista Componentes for (int j = 0; j < pneus.size(); j++) { revisao.getComponentes().add(pneus.get(j)); } // pega a data atual do sistema revisao.setDataRevisao(DataUtil.pegarDataAtualDoSistema()); // pega o funcionario que realizou a Revisão revisao.setFuncionario((Funcionario) SessionUtil.getParam("usuarioLogado")); if (revisao.getDevolucao().getId() > 0) { revisao.getDevolucao().setAguardaRevisao(false); command = mapConducaoCommands.get("EDITAR"); command.execute(revisao.getDevolucao()); } // armazena a lista de produtos utilizados na Revisao new ProdutoRevisaoDAO().cadastrar(verificarTotalUtilizado()); revisao.setListaProdutoRevisao(new ProdutoRevisaoDAO().pesquisarPorUltimoCadastrado()); command = mapConducaoCommands.get(operacao); command.execute(revisao); limparObjetos(); }