package gcom.gui.cadastro.tarifasocial; import gcom.atendimentopublico.registroatendimento.AtendimentoMotivoEncerramento; import gcom.atendimentopublico.registroatendimento.AtendimentoRelacaoTipo; import gcom.atendimentopublico.registroatendimento.RegistroAtendimento; import gcom.atendimentopublico.registroatendimento.RegistroAtendimentoUnidade; import gcom.atendimentopublico.registroatendimento.SolicitacaoTipoEspecificacao; import gcom.atendimentopublico.registroatendimento.bean.ObterDadosRegistroAtendimentoHelper; import gcom.cadastro.imovel.Imovel; import gcom.fachada.Fachada; import gcom.gui.GcomAction; import gcom.seguranca.acesso.usuario.Usuario; import java.util.Collection; import java.util.Date; 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 ManterTarifaSocialAction extends GcomAction { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { ActionForward retorno = actionMapping.findForward("telaSucesso"); // Instancia da Fachada Fachada fachada = Fachada.getInstancia(); // Pega uma instancia da sessao HttpSession sessao = httpServletRequest.getSession(false); Usuario usuarioLogado = (Usuario) sessao.getAttribute("usuarioLogado"); RegistroAtendimento registroAtendimento = null; RegistroAtendimentoUnidade registroAtendimentoUnidade = null; if (sessao.getAttribute("pesquisaImovel") == null) { registroAtendimento = (RegistroAtendimento) sessao .getAttribute("ra"); // AtendimentoMotivoEncerramento atendimentoMotivoEncerramento = new AtendimentoMotivoEncerramento(); // atendimentoMotivoEncerramento.setId(15); // // registroAtendimento // .setAtendimentoMotivoEncerramento(atendimentoMotivoEncerramento); registroAtendimentoUnidade = new RegistroAtendimentoUnidade(); registroAtendimentoUnidade .setRegistroAtendimento(registroAtendimento); registroAtendimentoUnidade.setUnidadeOrganizacional(usuarioLogado .getUnidadeOrganizacional()); registroAtendimentoUnidade.setUsuario(usuarioLogado); AtendimentoRelacaoTipo atendimentoRelacaoTipo = new AtendimentoRelacaoTipo(); atendimentoRelacaoTipo.setId(AtendimentoRelacaoTipo.ENCERRAR); registroAtendimentoUnidade .setAtendimentoRelacaoTipo(atendimentoRelacaoTipo); registroAtendimentoUnidade.setUltimaAlteracao(new Date()); } // Im�vel que est� sendo trabalhado Imovel imovelSessao = (Imovel) sessao.getAttribute("imovelTarifa"); Collection colecaoTarifaSocialHelperAtualizar = (Collection) sessao .getAttribute("colecaoTarifaSocialHelperAtualizar"); // Im�veis Anteriores do Usu�rios que foram exclu�dos da Tarifa Social Collection colecaoImoveisExcluidosTarifaSocial = (Collection) sessao .getAttribute("colecaoImoveisExcluidosTarifaSocial"); // Para apenas uma economia Collection colecaoTarifaSocialExcluida = (Collection) sessao .getAttribute("colecaoTarifaSocialExcluida"); // Recadastramento Collection colecaoTarifasSociaisRecadastradas = (Collection) sessao .getAttribute("colecaoTarifasSociaisRecadastradas"); AtendimentoMotivoEncerramento atendimentoMotivoEncerramento = fachada.manterTarifaSocial(imovelSessao, colecaoTarifaSocialHelperAtualizar, colecaoImoveisExcluidosTarifaSocial, colecaoTarifaSocialExcluida, colecaoTarifasSociaisRecadastradas,usuarioLogado); if (sessao.getAttribute("pesquisaImovel") == null) { registroAtendimento.setAtendimentoMotivoEncerramento(atendimentoMotivoEncerramento); registroAtendimento.setDataEncerramento(new Date()); //Colocado por Raphael Rossiter em 10/03/2008 ObterDadosRegistroAtendimentoHelper registroAtendimentoHelper = fachada.obterDadosRegistroAtendimento(registroAtendimento.getId()); SolicitacaoTipoEspecificacao especificacao = registroAtendimentoHelper .getRegistroAtendimento().getSolicitacaoTipoEspecificacao(); if (especificacao.getDebitoTipo() != null){ fachada.encerrarRegistroAtendimento(registroAtendimento,registroAtendimentoUnidade, usuarioLogado, especificacao.getDebitoTipo().getId(), especificacao.getValorDebito(), 1, "100", false,null,false); } else{ fachada.encerrarRegistroAtendimento(registroAtendimento,registroAtendimentoUnidade, usuarioLogado, null, null, null, null, false,null,false ); } } montarPaginaSucesso(httpServletRequest, "Im�vel de matr�cula " + imovelSessao.getId() + " mantido na tarifa social com sucesso.", "Manter outra tarifa social", "exibirManterTarifaSocialAction.do?menu=sim"); return retorno; } }