package gcom.gui.cadastro.imovel; import gcom.fachada.Fachada; import gcom.gui.ActionServletException; import gcom.gui.GcomAction; import gcom.gui.micromedicao.DadosLeiturista; import gcom.micromedicao.FiltroLeiturista; import gcom.micromedicao.FiltroSituacaoTransmissaoLeitura; import gcom.micromedicao.Leiturista; import gcom.micromedicao.SituacaoTransmissaoLeitura; import gcom.seguranca.acesso.usuario.Usuario; import gcom.util.ConstantesSistema; 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 ExibirGerarArquivoTextoAtualizacaoCadastralDispositivoMovelAction extends GcomAction { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { //Seta o retorno ActionForward retorno = actionMapping .findForward("exibirGerarArquivoTextoAtualizacaoCadastralDispositivoMovel"); //Obt�m a inst�ncia da fachada Fachada fachada = Fachada.getInstancia(); //Obt�m a sess�o HttpSession sessao = httpServletRequest.getSession(false); GerarArquivoTextoAtualizacaoCadastralDispositivoMovelActionForm form = (GerarArquivoTextoAtualizacaoCadastralDispositivoMovelActionForm) actionForm; Collection colecaoImovelFiltrado = (Collection)sessao.getAttribute("colecaoImovelFiltrado"); if ( colecaoImovelFiltrado != null && !colecaoImovelFiltrado.isEmpty() ) { form.setTamanhoColecaoImovel(colecaoImovelFiltrado.size()); } else { Integer quantidadeImovel = fachada.pesquisarImovelAtualizacaoCadastralComIndicadorExclusaoCount(); if ( quantidadeImovel == null || quantidadeImovel <= 0 ){ //Nenhum Imovel cadastrado throw new ActionServletException("atencao.pesquisa.nenhumresultado"); } form.setTamanhoColecaoImovel(quantidadeImovel); } //Pesquisar Leiturista Usuario usuario = (Usuario) sessao.getAttribute("usuarioLogado"); Integer idEmpresa = usuario.getEmpresa().getId(); Collection colecaoLeiturista = new ArrayList(); // Leiturista da Empresa if (idEmpresa != null && !idEmpresa.equals("")) { FiltroLeiturista filtroLeiturista = new FiltroLeiturista( FiltroLeiturista.ID); filtroLeiturista.adicionarParametro(new ParametroSimples( FiltroLeiturista.EMPRESA_ID, idEmpresa)); filtroLeiturista .adicionarCaminhoParaCarregamentoEntidade(FiltroLeiturista.CLIENTE); filtroLeiturista .adicionarCaminhoParaCarregamentoEntidade(FiltroLeiturista.FUNCIONARIO); Collection colecao = fachada.pesquisar(filtroLeiturista, Leiturista.class.getName()); if (colecao != null && !colecao.isEmpty()) { Iterator it = colecao.iterator(); while (it.hasNext()) { Leiturista leitu = (Leiturista) it.next(); DadosLeiturista dadosLeiu = null; if (leitu.getFuncionario() != null) { dadosLeiu = new DadosLeiturista(leitu.getId(), leitu .getFuncionario().getNome()); } else { dadosLeiu = new DadosLeiturista(leitu.getId(), leitu .getCliente().getNome()); } colecaoLeiturista.add(dadosLeiu); } } } sessao.setAttribute("colecaoLeiturista", colecaoLeiturista); //Pesquisar Situac�o Transmiss�o Leitura Collection colecaoSituacaoTransmissaoLeitura = (Collection)sessao.getAttribute("colecaoSituacaoTransmissaoLeitura"); if(colecaoSituacaoTransmissaoLeitura == null || colecaoSituacaoTransmissaoLeitura.isEmpty()){ FiltroSituacaoTransmissaoLeitura filtroSituacaoTransmissaoLeitura = new FiltroSituacaoTransmissaoLeitura(); filtroSituacaoTransmissaoLeitura .setCampoOrderBy(FiltroSituacaoTransmissaoLeitura.DESCRICAO); filtroSituacaoTransmissaoLeitura .adicionarParametro(new ParametroSimples( FiltroSituacaoTransmissaoLeitura.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); colecaoSituacaoTransmissaoLeitura = Fachada.getInstancia() .pesquisar(filtroSituacaoTransmissaoLeitura, SituacaoTransmissaoLeitura.class.getName()); sessao.setAttribute("colecaoSituacaoTransmissaoLeitura", colecaoSituacaoTransmissaoLeitura); } return retorno; } }