package gcom.gui.atendimentopublico.registroatendimento; import gcom.atendimentopublico.registroatendimento.FiltroSolicitacaoTipoEspecificacao; import gcom.atendimentopublico.registroatendimento.SolicitacaoTipoEspecificacao; import gcom.fachada.Fachada; import gcom.gui.ActionServletException; import gcom.gui.GcomAction; import gcom.util.filtro.ParametroSimples; import java.util.Collection; 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; /** * Esta classe tem por finalidade validar as informa��es da primeira aba do processo de inser��o * de um registro de atendimento * * @author Raphael Rossiter * @date 25/07/2006 */ public class InserirRegistroAtendimentoDadosGeraisAction extends GcomAction { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { ActionForward retorno = actionMapping.findForward(""); InserirRegistroAtendimentoActionForm inserirRegistroAtendimentoActionForm = (InserirRegistroAtendimentoActionForm) actionForm; HttpSession sessao = httpServletRequest.getSession(false); Fachada fachada = Fachada.getInstancia(); sessao.removeAttribute("gis"); FiltroSolicitacaoTipoEspecificacao filtroSolicitacaoTipoEspecificacao = new FiltroSolicitacaoTipoEspecificacao(); filtroSolicitacaoTipoEspecificacao.adicionarParametro(new ParametroSimples(FiltroSolicitacaoTipoEspecificacao.ID, inserirRegistroAtendimentoActionForm.getEspecificacao())); filtroSolicitacaoTipoEspecificacao.adicionarParametro(new ParametroSimples(FiltroSolicitacaoTipoEspecificacao.INDICADOR_ENCERRAMENTO_AUTOMATICO, SolicitacaoTipoEspecificacao.INDICADOR_COM_ENCERRAMENTO_AUTOMATICO)); Collection colecaoSolicitacaoTipoEspecificacao = fachada .pesquisar(filtroSolicitacaoTipoEspecificacao, SolicitacaoTipoEspecificacao.class.getName()); // Caso a especifica��o seja de encerramento autom�tico, verifica se a observa��o foi informada if (colecaoSolicitacaoTipoEspecificacao != null && !colecaoSolicitacaoTipoEspecificacao.isEmpty()) { if (inserirRegistroAtendimentoActionForm.getObservacao() == null || inserirRegistroAtendimentoActionForm.getObservacao().trim().equals("")) { throw new ActionServletException("atencao.campo_selecionado.obrigatorio", null, "Observa��o"); } } if(inserirRegistroAtendimentoActionForm.getObservacao() != null && !inserirRegistroAtendimentoActionForm.getObservacao().equals("") && inserirRegistroAtendimentoActionForm.getObservacao().length() > 400){ String[] msg = new String[2]; msg[0]="Observa��o"; msg[1]="400"; throw new ActionServletException("atencao.execedeu_limit_observacao",null,msg); } fachada.validarInserirRegistroAtendimentoDadosGerais(inserirRegistroAtendimentoActionForm.getDataAtendimento(), inserirRegistroAtendimentoActionForm.getHora(), inserirRegistroAtendimentoActionForm.getTempoEsperaInicial(), inserirRegistroAtendimentoActionForm.getTempoEsperaFinal(), inserirRegistroAtendimentoActionForm.getUnidade(), inserirRegistroAtendimentoActionForm.getNumeroAtendimentoManual()); return retorno; } }