package gcom.gui.cobranca.spcserasa; import java.util.Collection; import java.util.Date; import gcom.cadastro.sistemaparametro.FiltroSistemaParametro; import gcom.cadastro.sistemaparametro.SistemaParametro; import gcom.fachada.Fachada; import gcom.gui.ActionServletException; import gcom.gui.GcomAction; import gcom.util.Util; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; /** * Esta classe tem por finalidade validar as informa��es da 2� aba do processo de inser��o * de um Comando de Negativa��o * * @author Ana Maria * @date 06/11/2007 */ public class AtualizarComandoNegativacaoDadosDebitoAction extends GcomAction { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { ActionForward retorno = actionMapping.findForward(""); Fachada fachada = Fachada.getInstancia(); AtualizarComandoNegativacaoPorCriterioActionForm form = (AtualizarComandoNegativacaoPorCriterioActionForm) actionForm; FiltroSistemaParametro filtroSistemaParametro = new FiltroSistemaParametro(); Collection<SistemaParametro> collectionSistemaParametro = fachada .pesquisar(filtroSistemaParametro, SistemaParametro.class.getName()); SistemaParametro sistemaParametro = (SistemaParametro) collectionSistemaParametro .iterator().next(); //Per�odo de refer�ncia do d�bito Integer referenciaMinima = Util.subtrairAnoAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao(), 5); if(form.getReferenciaInicial() != null && !form.getReferenciaInicial().equals("")){ Integer referenciaDebInicialInformado = Util.formatarMesAnoComBarraParaAnoMes(form.getReferenciaInicial()); if(referenciaDebInicialInformado < referenciaMinima){ throw new ActionServletException( "atencao.periodo_referencia_debito_minimo"); } } if(form.getReferenciaFinal() != null && !form.getReferenciaFinal().equals("")){ Integer referenciaDebFinalInformado = Util.formatarMesAnoComBarraParaAnoMes(form.getReferenciaFinal()); if(referenciaDebFinalInformado < referenciaMinima){ throw new ActionServletException( "atencao.periodo_referencia_debito_minimo"); } } //Per�odo de vencimento do d�bito Integer numeroDiasVencimentoCobranca = new Integer(sistemaParametro.getNumeroDiasVencimentoCobranca()); Date dataMinima = Util.subtrairNumeroAnosDeUmaData(Util.subtrairNumeroDiasDeUmaData(new Date(), numeroDiasVencimentoCobranca), 5); if(form.getDataVencimentoInicial() != null && !form.getDataVencimentoInicial().equals("")){ Date vencimentoDebInicialInformado = Util.converteStringParaDate(form.getDataVencimentoInicial()); if(Util.compararData(vencimentoDebInicialInformado, dataMinima) == -1){ throw new ActionServletException( "atencao.periodo_vencimento_debito_minimo"); } } if(form.getDataVencimentoFinal() != null && !form.getDataVencimentoFinal().equals("")){ Date vencimentoDebFinalInformado = Util.converteStringParaDate(form.getDataVencimentoFinal()); if(Util.compararData(vencimentoDebFinalInformado, dataMinima) == -1){ throw new ActionServletException( "atencao.periodo_vencimento_debito_minimo"); } } return retorno; } }