package gcom.gui.micromedicao; import gcom.gui.ActionServletException; import gcom.gui.GcomAction; import gcom.gui.ManutencaoRegistroActionForm; import gcom.micromedicao.TelemetriaMovReg; import gcom.util.ConstantesSistema; import java.util.Collection; import java.util.Date; 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; /** * [UC1069] Consultar Leituras Telemetria * * @author Hugo Amorim * @date 28/09/2010 * */ public class ManterLeiturasTelemetriaAction extends GcomAction { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { // Seta o caminho de retorno ActionForward retorno = actionMapping.findForward("telaSucesso"); ManutencaoRegistroActionForm form = (ManutencaoRegistroActionForm) actionForm; // Registros selecionados para reprocessamento. String[] ids = form.getIdRegistrosAutorizar(); // Mensagem de erro quando o usu�rio tenta excluir sem ter selecionado // nenhum registro; if (ids == null || ids.length == 0) { throw new ActionServletException( "atencao.registros.nao_selecionados"); } // [FS0002] - Verificar grupo de faturamento if(this.getFachada().verificarGruposDiferentesLeiturasTelemetria(ids)){ throw new ActionServletException("atencao.grupos_dos_imoveis_sao_diferente"); } Collection<TelemetriaMovReg> colecaoDados = this.getFachada().perquisarLeiturasTelemetriaPorId(ids); // Obtem data Atual Date dataAtual = new Date(); for (TelemetriaMovReg telemetriaMovReg : colecaoDados) { boolean flagConsistiu = this.getFachada().consistirLeituraTelemetria(telemetriaMovReg); if(flagConsistiu){ telemetriaMovReg.setIndicadorProcessado(ConstantesSistema.SIM); telemetriaMovReg.setUltimaAlteracao(dataAtual); this.getFachada().atualizar(telemetriaMovReg); } } // Monta a p�gina de sucesso montarPaginaSucesso(httpServletRequest, "Leituras Reprocessadas com sucesso.", "Realizar outra Consultar Leituras Transmitidas Via Telemetria", "exibirFiltrarLeiturasTelemetriaAction.do?menu=sim"); return retorno; } }