package gcom.gui.faturamento.conta; import gcom.fachada.Fachada; import gcom.faturamento.conta.Conta; import gcom.faturamento.conta.ContaMotivoRetificacao; import gcom.gui.ActionServletException; import gcom.gui.GcomAction; import gcom.seguranca.acesso.usuario.Usuario; import java.util.ArrayList; 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 RetirarDebitoCobradoConjuntoContaAction extends GcomAction { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { //Seta o mapeamento de retorno ActionForward retorno = actionMapping.findForward("exibirRetirarDebitoCobradoConjuntoConta"); HttpSession sessao = httpServletRequest.getSession(false); //Inst�ncia do formul�rio que est� sendo utilizado RetirarDebitoCobradoActionForm retirarDebitoCobradoActionForm = (RetirarDebitoCobradoActionForm) actionForm; Fachada fachada = Fachada.getInstancia(); //MotivoReatificacaoConta selecinado pelo usu�rio ContaMotivoRetificacao contaMotivoRetificacao = new ContaMotivoRetificacao(); contaMotivoRetificacao.setId(new Integer(retirarDebitoCobradoActionForm.getIdMotivoRetificacao())); Collection debitosTipoRetirar = new ArrayList(); if(sessao.getAttribute("debitosTipoRetirar") != null){ debitosTipoRetirar = (Collection)sessao.getAttribute("debitosTipoRetirar"); }else{ throw new ActionServletException("atencao.campo.informado", null, "Tipo de D�bito"); } if (sessao.getAttribute("colecaoImovel") != null){ Collection<Conta> colecaoImovel = (Collection) sessao.getAttribute("colecaoImovel"); Integer anoMes = null; if(sessao.getAttribute("anoMes") != null){ anoMes = (Integer)sessao.getAttribute("anoMes"); } Integer anoMesFim = null; if(sessao.getAttribute("anoMesFim") != null){ anoMesFim = (Integer)sessao.getAttribute("anoMesFim"); } Date dataVencimentoContaInicio = null; Date dataVencimentoContaFim = null; String indicadorContaPaga = null; Integer idGrupoFaturamento = null; if (sessao.getAttribute("dataVencimentoContaInicial") != null){ dataVencimentoContaInicio = (Date) sessao.getAttribute("dataVencimentoContaInicial"); } if (sessao.getAttribute("dataVencimentoContaFinal") != null){ dataVencimentoContaFim = (Date) sessao.getAttribute("dataVencimentoContaFinal"); } if (sessao.getAttribute("indicadorContaPaga") != null){ indicadorContaPaga = (String) sessao.getAttribute("indicadorContaPaga"); } if (sessao.getAttribute("idGrupoFaturamento") != null){ idGrupoFaturamento = (Integer) sessao.getAttribute("idGrupoFaturamento"); } //Retificar uma ou v�rias contas Usuario usuarioLogado = (Usuario)sessao.getAttribute(Usuario.USUARIO_LOGADO); //Cancelando uma ou v�rias contas /*Integer codigoCliente = null; if(sessao.getAttribute("codigoCliente") != null){ codigoCliente = new Integer((String)sessao.getAttribute("codigoCliente")); } if(codigoCliente != null){ Short relacaoTipo = null; if(sessao.getAttribute("relacaoTipo") != null){ relacaoTipo = ((Integer)sessao.getAttribute("relacaoTipo")).shortValue(); } fachada.retificarConjuntoContaCliente(codigoCliente, relacaoTipo, anoMes, contaMotivoRetificacao, debitosTipoRetirar, usuarioLogado, dataVencimentoContaInicio, dataVencimentoContaFim, anoMesFim); fachada.retificarConjuntoConta(colecaoImovel, anoMes, contaMotivoRetificacao, debitosTipoRetirar, usuarioLogado, dataVencimentoContaInicio, dataVencimentoContaFim, anoMesFim, indicadorContaPaga); } else*/ if (idGrupoFaturamento != null){ fachada.retificarConjuntoConta(idGrupoFaturamento, anoMes, contaMotivoRetificacao, debitosTipoRetirar, usuarioLogado, dataVencimentoContaInicio, dataVencimentoContaFim, anoMesFim); } else{ fachada.retificarConjuntoConta(colecaoImovel, anoMes, contaMotivoRetificacao, debitosTipoRetirar, usuarioLogado, dataVencimentoContaInicio, dataVencimentoContaFim, anoMesFim, indicadorContaPaga); } httpServletRequest.setAttribute("mensagemSucesso","Retirar debitos cobrados de conjunto de contas encaminhado para processamento."); } //Realizar um reload na tela de manter conta httpServletRequest.setAttribute("fecharPopup", "OK"); //sessao.setAttribute("cancelar", "1"); sessao.removeAttribute("anoMes"); sessao.removeAttribute("anoMesFim"); sessao.removeAttribute("dataVencimentoContaInicial"); sessao.removeAttribute("dataVencimentoContaFinal"); sessao.removeAttribute("indicadorContaPaga"); return retorno; } }