/** * consiste em pesquisar os tipos de débitos cadastrados no sistema * * <p>[UC0303] Pesquisar Tipo de Débito * * <p><Breve descrição sobre o subfluxo> * * <p><Identificador e nome do subfluxo> * * <p><Breve descrição sobre o fluxo secundário> * * <p><Identificador e nome do fluxo secundário> * * @author Administrador * @date 09/03/2006 * @param actionMapping * @param actionForm * @param httpServletRequest * @param httpServletResponse * @return */ public ActionForward execute( ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { // seta o mapeamento de retorno para a tela de pesquisar tipos de débitos ActionForward retorno = actionMapping.findForward("pesquisarTipoDebito"); // cria uma instância da fachada Fachada fachada = Fachada.getInstancia(); HttpSession sessao = httpServletRequest.getSession(false); // se essa variavel tiver algum valor, isso indica que apenas do Tipo de Financimento SERVIÇO // deve ser carregado na colecao String tipoFinanciamentoServico = ""; if (httpServletRequest.getParameter("tipoFinanciamentoServico") != null && !httpServletRequest.getParameter("tipoFinanciamentoServico").equals("")) { tipoFinanciamentoServico = httpServletRequest.getParameter("tipoFinanciamentoServico"); sessao.setAttribute( "tipoFinanciamentoServico", httpServletRequest.getParameter("tipoFinanciamentoServico")); } else if (sessao.getAttribute("tipoFinanciamentoServico") != null && !sessao.getAttribute("tipoFinanciamentoServico").equals("")) { tipoFinanciamentoServico = (String) sessao.getAttribute("tipoFinanciamentoServico"); } PesquisarTipoDebitoActionForm pesquisarTipoDebitoActionForm = (PesquisarTipoDebitoActionForm) actionForm; if ((httpServletRequest.getParameter("limparForm") != null && httpServletRequest.getParameter("limparForm").equalsIgnoreCase("1")) || (httpServletRequest.getParameter("objetoConsulta") == null && httpServletRequest.getParameter("tipoConsulta") == null && httpServletRequest.getParameter("voltarPesquisa") == null)) { pesquisarTipoDebitoActionForm.setIdTipoDebito(""); pesquisarTipoDebitoActionForm.setDescricao(""); pesquisarTipoDebitoActionForm.setIdTipoFinanciamento(null); pesquisarTipoDebitoActionForm.setIdItemLancamentoContabil(null); pesquisarTipoDebitoActionForm.setIntervaloValorLimiteInicial(""); pesquisarTipoDebitoActionForm.setIntervaloValorLimiteFinal(""); pesquisarTipoDebitoActionForm.setTipoPesquisa( ConstantesSistema.TIPO_PESQUISA_INICIAL.toString()); } // cria o filtro de lançamentos de item contábil para pesquisa FiltroLancamentoItemContabil filtroLancamentoItemContabil = new FiltroLancamentoItemContabil(); // seta a ordenação do resultado da pesquisa de lançamentos de item contábil pela descrição filtroLancamentoItemContabil.setCampoOrderBy(FiltroLancamentoItemContabil.DESCRICAO); // pesquisa a coleção de lançamentos de item contábil no sistema Collection colecaoLancamentoItemContabil = fachada.pesquisar(filtroLancamentoItemContabil, LancamentoItemContabil.class.getName()); // se nenhum lançamento de item contábil cadastrado no sistema if (colecaoLancamentoItemContabil == null || colecaoLancamentoItemContabil.isEmpty()) { // levanta a exceção para a próxima camada throw new ActionServletException( "atencao.naocadastrado", null, "Lançamento de Item Contábil"); } else { // se existir lançamento de item contábil cadastrado(s) no sistema, manda // a coleção pesquisada no request para a página de pesquisar item de lançamento contábil httpServletRequest.setAttribute( "colecaoLancamentoItemContabil", colecaoLancamentoItemContabil); } // cria o filtro de tipo de financiamento para pesquisa FiltroFinanciamentoTipo filtroFinanciamentoTipo = new FiltroFinanciamentoTipo(); // seta para pesquisar apenas o tipo de financiamento SERVIÇO if (tipoFinanciamentoServico != null && !tipoFinanciamentoServico.equals("")) { filtroFinanciamentoTipo.adicionarParametro( new ParametroSimples(FiltroFinanciamentoTipo.ID, FinanciamentoTipo.SERVICO_NORMAL)); } // seta a ordenação do resultado da pesquisa de tipo de financiamento pela descrição filtroFinanciamentoTipo.setCampoOrderBy(FiltroFinanciamentoTipo.DESCRICAO); // pesquisa a coleção de tipo(s) de financiamento no sistema Collection colecaoFinanciamentoTipo = fachada.pesquisar(filtroFinanciamentoTipo, FinanciamentoTipo.class.getName()); // se nenhum tipo de financiamento cadastrado no sistema if (colecaoFinanciamentoTipo == null || colecaoFinanciamentoTipo.isEmpty()) { // levanta a exceção para a próxima camada throw new ActionServletException("atencao.naocadastrado", null, "Tipo de Financiamento"); } else { // se existir tipo(s) de financiamento cadastrado(s) no sistema, manda // a coleção pesquisada no request para a página de pesquisar tipo de financiamento httpServletRequest.setAttribute("colecaoFinanciamentoTipo", colecaoFinanciamentoTipo); } if (httpServletRequest.getParameter("caminhoRetornoTelaPesquisaTipoDebito") != null) { sessao.setAttribute( "caminhoRetornoTelaPesquisaTipoDebito", httpServletRequest.getParameter("caminhoRetornoTelaPesquisaTipoDebito")); } // retorna o mapeamento contido na variável "retorno" return retorno; }
/** * Este caso de uso permite inserir um Tipo de Credito * * <p>[UC0515] Inserir Tipo de Credito * * @param actionMapping * @param actionForm * @param httpServletRequest * @param httpServletResponse * @return * @author Thiago Tenório */ public ActionForward execute( ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { // Seta o retorno ActionForward retorno = actionMapping.findForward("telaSucesso"); // Obtém a sessão HttpSession sessao = httpServletRequest.getSession(false); // Usuario logado no sistema Usuario usuarioLogado = (Usuario) sessao.getAttribute(Usuario.USUARIO_LOGADO); // Obtém a instância da fachada Fachada fachada = Fachada.getInstancia(); InserirTipoCreditoActionForm inserirTipoCreditoActionForm = (InserirTipoCreditoActionForm) actionForm; String descricao = inserirTipoCreditoActionForm.getDescricao(); String abreviatura = inserirTipoCreditoActionForm.getAbreviatura(); String tipoLancamentoContabil = inserirTipoCreditoActionForm.getTipoLancamentoContabil(); String indicadorgeracaoAutomaica = inserirTipoCreditoActionForm.getIndicadorgeracaoAutomaica(); String valorLimiteCredito = inserirTipoCreditoActionForm.getValorLimiteCredito(); CreditoTipo tipoCreditoInserir = new CreditoTipo(); Collection colecaoPesquisa = null; sessao.removeAttribute("tipoPesquisaRetorno"); if (Util.validarNumeroMaiorQueZERO(inserirTipoCreditoActionForm.getTipoLancamentoContabil())) { // Constrói o filtro para pesquisa do Tipo do Lançamento do Item Contábil FiltroLancamentoItemContabil filtroLancamentoItemContabil = new FiltroLancamentoItemContabil(); filtroLancamentoItemContabil.adicionarParametro( new ParametroSimples( FiltroCreditoTipo.LANCAMENTO_ITEM_CONTABIL, inserirTipoCreditoActionForm.getTipoLancamentoContabil())); } // Descrição do Tipo de Crédito é obrigatório. if (descricao == null || descricao.equalsIgnoreCase("")) { throw new ActionServletException("atencao.required", null, "Descrição do Tipo de Crédito"); } // Descrição do Tipo de Crédito Abreviada if (abreviatura != null && !abreviatura.equalsIgnoreCase("")) { tipoCreditoInserir.setDescricaoAbreviada(abreviatura); } // Valor Limite do Crédito é obrigatório. if (valorLimiteCredito == null || valorLimiteCredito.equalsIgnoreCase("")) { throw new ActionServletException("atencao.required", null, "Valor Limite do Crédito"); } // indicador de Geração Automática do Crédito é obrigatório. if (indicadorgeracaoAutomaica == null || indicadorgeracaoAutomaica.equalsIgnoreCase("")) { throw new ActionServletException( "atencao.required", null, "indicador de Geração Automática do Crédito"); } tipoCreditoInserir.setDescricao(descricao); tipoCreditoInserir.setDescricaoAbreviada(abreviatura); tipoCreditoInserir.setIndicadorGeracaoAutomatica(new Short(indicadorgeracaoAutomaica)); valorLimiteCredito = valorLimiteCredito.replace(".", ""); valorLimiteCredito = valorLimiteCredito.replace(",", "."); tipoCreditoInserir.setValorLimite(new BigDecimal(valorLimiteCredito)); // Tipo do Lançamento do Item Contábil LancamentoItemContabil lancamentoItemContabil = new LancamentoItemContabil(); if (tipoLancamentoContabil != null && !tipoLancamentoContabil.equalsIgnoreCase( String.valueOf(ConstantesSistema.NUMERO_NAO_INFORMADO))) { FiltroLancamentoItemContabil filtroLancamentoItemContabil = new FiltroLancamentoItemContabil(); filtroLancamentoItemContabil.adicionarParametro( new ParametroSimples(FiltroLancamentoItemContabil.ID, tipoLancamentoContabil)); filtroLancamentoItemContabil.adicionarParametro( new ParametroSimples( FiltroLancamentoItemContabil.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); // Retorna Tipo do Lançamento do Item Contábil colecaoPesquisa = fachada.pesquisar(filtroLancamentoItemContabil, LancamentoItemContabil.class.getName()); if (colecaoPesquisa == null || colecaoPesquisa.isEmpty()) { throw new ActionServletException("atencao.pesquisa_elo_nao_inexistente"); } else { lancamentoItemContabil = (LancamentoItemContabil) Util.retonarObjetoDeColecao(colecaoPesquisa); if (lancamentoItemContabil.getId().intValue() != lancamentoItemContabil.getId().intValue()) { throw new ActionServletException("atencao.localidade_nao_e_elo"); } else { tipoCreditoInserir.setLancamentoItemContabil(lancamentoItemContabil); } } } CreditoTipo creditoTipo = new CreditoTipo(); creditoTipo.setLancamentoItemContabil(lancamentoItemContabil); // Ultima alteração tipoCreditoInserir.setUltimaAlteracao(new Date()); // Pesquisa se a descrição informada já foi cadastrada FiltroCreditoTipo filtroCreditoTipo = new FiltroCreditoTipo(); filtroCreditoTipo.adicionarParametro( new ParametroSimples(FiltroCreditoTipo.DESCRICAO, descricao)); Collection colCreditoTipo = fachada.pesquisar(filtroCreditoTipo, CreditoTipo.class.getName()); if (colCreditoTipo != null && !colCreditoTipo.isEmpty()) { throw new ActionServletException( "atencao.credito_tipo.descricao_ja_existente", null, descricao); } // ***************************************************** // Pesquisa se a descrição abreviada informada já foi cadastrada filtroCreditoTipo = new FiltroCreditoTipo(); filtroCreditoTipo.adicionarParametro( new ParametroSimples(FiltroCreditoTipo.DESCRICAO_ABREVIADA, abreviatura)); colCreditoTipo = fachada.pesquisar(filtroCreditoTipo, CreditoTipo.class.getName()); if (colCreditoTipo != null && !colCreditoTipo.isEmpty()) { throw new ActionServletException( "atencao.credito_tipo.abreviatura_ja_existente", null, abreviatura); } // ***************************************************** Integer idTipoCredito = null; tipoCreditoInserir.setIndicadorUso(1); idTipoCredito = fachada.inserirTipoCredito(tipoCreditoInserir, usuarioLogado); montarPaginaSucesso( httpServletRequest, "Tipo de Crédito de código " + tipoCreditoInserir.getId() + " inserido com sucesso.", "Inserir outro Tipo de Crédito", "exibirInserirTipoCreditoAction.do?menu=sim", "exibirAtualizarTipoCreditoAction.do?idRegistroAtualizacao=" + idTipoCredito, "Atualizar Tipo de Crédito Inserido"); // } // devolve o mapeamento de retorno return retorno; }