package gcom.gui.cadastro; import gcom.cadastro.empresa.Empresa; import gcom.cadastro.empresa.FiltroEmpresa; import gcom.cadastro.localidade.FiltroLocalidade; import gcom.cadastro.localidade.FiltroSetorComercial; import gcom.cadastro.localidade.Localidade; import gcom.cadastro.localidade.SetorComercial; import gcom.fachada.Fachada; import gcom.gui.ActionServletException; import gcom.gui.GcomAction; import gcom.gui.micromedicao.DadosLeiturista; import gcom.micromedicao.FiltroLeiturista; import gcom.micromedicao.Leiturista; import gcom.seguranca.acesso.usuario.Usuario; import gcom.util.ConstantesSistema; import gcom.util.Util; import gcom.util.filtro.ParametroSimples; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; public class ExibirConsultarArquivoTextoAtualizacaoCadastralAction extends GcomAction { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { ActionForward retorno = actionMapping.findForward("consultarArquivoTextoAtualizacaoCadastral"); Fachada fachada = Fachada.getInstancia(); HttpSession sessao = httpServletRequest.getSession(false); Usuario usuarioLogado = (Usuario) sessao.getAttribute("usuarioLogado"); ConsultarArquivoTextoAtualizacaoCadastralActionForm form = (ConsultarArquivoTextoAtualizacaoCadastralActionForm) actionForm; String objetoConsulta = (String) httpServletRequest.getParameter("objetoConsulta"); if (objetoConsulta != null && !objetoConsulta.trim().equalsIgnoreCase("") && (objetoConsulta.trim().equals("1"))) { pesquisarLocalidade(form, httpServletRequest); } if (objetoConsulta != null && !objetoConsulta.trim().equalsIgnoreCase("") && (objetoConsulta.trim().equals("2"))) { pesquisarSetorComercial(form, httpServletRequest); } FiltroEmpresa filtroEmpresa = new FiltroEmpresa(); filtroEmpresa.setCampoOrderBy(FiltroEmpresa.DESCRICAO); Collection colecaoEmpresa = fachada.pesquisar(filtroEmpresa, Empresa.class.getName()); if (colecaoEmpresa != null && !colecaoEmpresa.isEmpty()) { sessao.setAttribute("colecaoEmpresa", colecaoEmpresa); } else { throw new ActionServletException("atencao.naocadastrado", null, "Empresa"); } sessao.removeAttribute("permissao"); if (usuarioLogado.getEmpresa().getIndicadorEmpresaPrincipal().equals( new Short("1"))) { sessao.setAttribute("permissao", "1"); } else { sessao.setAttribute("permissao", "2"); } if (httpServletRequest.getParameter("menu") != null) { form.setIdEmpresa(""+ usuarioLogado.getEmpresa().getId()); } Collection colecaoLeiturista = new ArrayList(); if (form.getIdEmpresa() != null && !form.getIdEmpresa().equals("-1") && !form.getIdEmpresa().equals("")) { FiltroLeiturista filtroLeiturista = new FiltroLeiturista(FiltroLeiturista.ID); filtroLeiturista.adicionarParametro(new ParametroSimples( FiltroLeiturista.EMPRESA_ID,form.getIdEmpresa())); filtroLeiturista.adicionarParametro(new ParametroSimples( FiltroLeiturista.INDICADOR_USO,ConstantesSistema.SIM)); filtroLeiturista.adicionarCaminhoParaCarregamentoEntidade(FiltroLeiturista.CLIENTE); filtroLeiturista.adicionarCaminhoParaCarregamentoEntidade(FiltroLeiturista.FUNCIONARIO); Collection colecao = fachada.pesquisar(filtroLeiturista, Leiturista.class.getName()); if (colecao != null && !colecao.isEmpty()) { Iterator iterator = colecao.iterator(); while (iterator.hasNext()) { Leiturista leiturista = (Leiturista) iterator.next(); DadosLeiturista dadosLeiturista = null; if (leiturista.getFuncionario() != null) { dadosLeiturista = new DadosLeiturista(leiturista.getId(), leiturista.getFuncionario().getNome()); } else { dadosLeiturista = new DadosLeiturista(leiturista.getId(), leiturista.getCliente().getNome()); } colecaoLeiturista.add(dadosLeiturista); } } } sessao.setAttribute("colecaoLeiturista", colecaoLeiturista); return retorno; } private void pesquisarLocalidade(ConsultarArquivoTextoAtualizacaoCadastralActionForm form, HttpServletRequest request) { FiltroLocalidade filtro = new FiltroLocalidade(); filtro.adicionarParametro(new ParametroSimples(FiltroLocalidade.ID, (String) form.getIdLocalidade())); filtro.adicionarParametro(new ParametroSimples(FiltroLocalidade.INDICADORUSO, ConstantesSistema.INDICADOR_USO_ATIVO)); Collection pesquisa = Fachada.getInstancia().pesquisar(filtro, Localidade.class.getName()); if (pesquisa == null || pesquisa.isEmpty()) { form.setIdLocalidade(""); form.setNomeLocalidade("Localidade inexistente"); request.setAttribute("corLocalidadeOrigem", "exception"); request.setAttribute("nomeCampo","localidadeInicial"); } else { Localidade objetoLocalidade = (Localidade) Util.retonarObjetoDeColecao(pesquisa); form.setIdLocalidade(String.valueOf(objetoLocalidade.getId())); form.setNomeLocalidade(objetoLocalidade.getDescricao()); request.setAttribute("corLocalidadeOrigem", "valor"); request.setAttribute("nomeCampo","nomeLocalidadeInicial"); } } private void pesquisarSetorComercial(ConsultarArquivoTextoAtualizacaoCadastralActionForm form, HttpServletRequest request) { FiltroSetorComercial filtro = new FiltroSetorComercial(); filtro.adicionarParametro(new ParametroSimples(FiltroSetorComercial.CODIGO_SETOR_COMERCIAL, form.getCodigoSetorComercial())); filtro.adicionarParametro(new ParametroSimples(FiltroSetorComercial.LOCALIDADE, form.getIdLocalidade())); Collection pesquisa = Fachada.getInstancia().pesquisar(filtro, SetorComercial.class.getName()); if (pesquisa == null || pesquisa.isEmpty()) { form.setCodigoSetorComercial(""); form.setNomeSetorComercial("Setor inexistente"); request.setAttribute("corSetorComercialOrigem", "exception"); request.setAttribute("nomeCampo","nomeSetorComercialInicial"); } else { SetorComercial objetoSetorComercial = (SetorComercial) Util.retonarObjetoDeColecao(pesquisa); form.setCodigoSetorComercial(String.valueOf(objetoSetorComercial.getCodigo())); form.setNomeSetorComercial(objetoSetorComercial.getDescricao()); request.setAttribute("corSetorComercialOrigem", "valor"); request.setAttribute("nomeCampo","nomeSetorComercialInicial"); } } }