package gcom.gui.faturamento.conta;
import gcom.fachada.Fachada;
import gcom.faturamento.conta.ContaMotivoCancelamento;
import gcom.faturamento.conta.FiltroMotivoCancelamentoConta;
import gcom.gui.ActionServletException;
import gcom.gui.GcomAction;
import gcom.util.ConstantesSistema;
import gcom.util.Util;
import gcom.util.filtro.ParametroSimples;
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 ExibirCancelarConjuntoContaAction extends GcomAction {
public ActionForward execute(ActionMapping actionMapping,
ActionForm actionForm, HttpServletRequest httpServletRequest,
HttpServletResponse httpServletResponse) {
//Seta o mapeamento de retorno
ActionForward retorno = actionMapping.findForward("exibirCancelarConjuntoConta");
HttpSession sessao = httpServletRequest.getSession(false);
Fachada fachada = Fachada.getInstancia();
Integer anoMes = null;
if(httpServletRequest.getParameter("mesAno") != null){
anoMes = Util.formatarMesAnoComBarraParaAnoMes(httpServletRequest.getParameter("mesAno"));
sessao.setAttribute("anoMes", anoMes);
}
Integer anoMesFim = null;
if(httpServletRequest.getParameter("mesAnoFim") != null){
anoMesFim = Util.formatarMesAnoComBarraParaAnoMes(httpServletRequest.getParameter("mesAnoFim"));
sessao.setAttribute("anoMesFim", anoMesFim);
}
Date dataVencimentoContaInicio = null;
Date dataVencimentoContaFim = null;
String indicadorContaPaga = null;
Integer idGrupoFaturamento = null;
if (httpServletRequest.getParameter("dataVencimentoContaInicial") != null){
dataVencimentoContaInicio = Util.converteStringParaDate(httpServletRequest.getParameter("dataVencimentoContaInicial"));
sessao.setAttribute("dataVencimentoContaInicial", dataVencimentoContaInicio);
}
if (httpServletRequest.getParameter("dataVencimentoContaFinal") != null){
dataVencimentoContaFim = Util.converteStringParaDate(httpServletRequest.getParameter("dataVencimentoContaFinal"));
sessao.setAttribute("dataVencimentoContaFinal", dataVencimentoContaFim);
}
if (httpServletRequest.getParameter("indicadorContaPaga") != null){
indicadorContaPaga = httpServletRequest.getParameter("indicadorContaPaga");
sessao.setAttribute("indicadorContaPaga", indicadorContaPaga);
}
if (httpServletRequest.getParameter("idGrupoFaturamento") != null){
idGrupoFaturamento = new Integer((String) httpServletRequest.getParameter("idGrupoFaturamento"));
sessao.setAttribute("idGrupoFaturamento", idGrupoFaturamento);
}
//Carregar: Lista dos motivos de cancelamento da conta
if (sessao.getAttribute("colecaoMotivoCancelamentoConta") == null){
FiltroMotivoCancelamentoConta filtroMotivoCancelamentoConta =
new FiltroMotivoCancelamentoConta(FiltroMotivoCancelamentoConta.DESCRICAO_MOTIVO_CANCELAMENTO_CONTA);
filtroMotivoCancelamentoConta.adicionarParametro(
new ParametroSimples(FiltroMotivoCancelamentoConta.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO));
Collection colecaoMotivoCancelamentoConta = fachada.pesquisar(filtroMotivoCancelamentoConta,
ContaMotivoCancelamento.class.getName());
if (colecaoMotivoCancelamentoConta == null || colecaoMotivoCancelamentoConta.isEmpty()){
throw new ActionServletException(
"atencao.pesquisa.nenhum_registro_tabela", null,
"MOTIVO_CANCELAMENTO_CONTA");
}
// Disponibiliza a cole��o pela sess�o
sessao.setAttribute("colecaoMotivoCancelamentoConta", colecaoMotivoCancelamentoConta);
}
return retorno;
}
}