Calendario y tareas electorales

Esta guia describe el modulo vigente de calendario y tareas de una eleccion en v3.0. El contenido fue contrastado contra la UI administrativa, los enums ElectionCalendarKey y ElectionTaskKey, los presets de creacion y la logica EJB que guarda, marca completitud y mantiene progreso de candidatos.

Ubicacion en el flujo

  • Dentro de la gestion de una eleccion, las tabs disponibles son Detalle, Convocatoria, Organizaciones, Padron, Calendario, Tareas, Candidatos y Auditores.
  • La pantalla de calendario se abre en /admin/election/calendar-module y la de tareas en /admin/election/tasks.
  • En el flujo tipo wizard, Calendario vuelve a Padron y continua hacia Tareas; Tareas vuelve a Calendario y continua hacia Candidatos.
  • Si la eleccion esta cerrada, ambas pantallas derivan a Eleccion cerrada y no permiten edicion.

Calendario electoral

  • La UI construye una fila por cada valor de ElectionCalendarKey. El sistema trabaja con las etapas N_1 a N_23.
  • Las etapas cuyo nombre contiene _PERIODO_ se editan con inicio y fin; las etapas SINGLE se editan solo con fecha/hora de inicio.
  • N_16_PERIODO_VOTING no admite Sin fecha definida. El resto de las etapas si puede quedar sin fecha y, en ese caso, la UI desactiva automaticamente el switch Publico.
  • La pantalla muestra y edita fechas usando diffUTC de la eleccion. Al leer datos desde base suma ese offset; al guardar vuelve a restarlo antes de persistir.
  • El preview mensual de la derecha no es decorativo: al hacer click en un evento desplaza la vista hacia la tarjeta de la etapa correspondiente.
  • El estado visual del timeline distingue etapas sin fecha, futuras y ya alcanzadas. Tambien marca Solapamiento detectado cuando una etapa comienza antes de que termine la anterior.
  • Importante: ese solapamiento es solo una advertencia visual. El guardado no lo bloquea. Las unicas validaciones duras del formulario son: fecha/hora de inicio obligatoria, fecha/hora de fin obligatoria en periodos y fin >= inicio.
  • Guardar persiste el calendario pero no marca la etapa como completada. Marcar como terminada y seguir persiste y ademas deja calendarSet=true. Ignorar navega a tareas sin guardar cambios.

Etapas disponibles

Codigo Tipo Descripcion operativa visible
N1SinglePublicacion de la eleccion.
N2PeriodoLlamado a candidatos.
N3SingleCierre del padron electoral.
N4SinglePublicacion del padron electoral.
N5PeriodoReclamos sobre el padron.
N6PeriodoPeriodo adicional de evaluacion.
N7PeriodoVerificacion de formularios de candidatos.
N8PeriodoValidacion de evaluaciones.
N9PeriodoRecepcion de reclamos de candidatos.
N10PeriodoResolucion de reclamos de candidatos.
N11SinglePublicacion de candidatos.
N12PeriodoPeriodo de preguntas a candidatos.
N13PeriodoResolucion de reclamos del padron.
N14SingleActualizacion del padron.
N15PeriodoRespuesta de CE a reclamos sobre candidatos.
N16PeriodoPeriodo de votacion.
N17SinglePublicacion de resultados provisorios.
N18PeriodoAuditoria de CE.
N19PeriodoAuditoria de votantes.
N20SinglePublicacion oficial sin reclamos.
N21PeriodoRespuesta a reclamos de votantes.
N22SinglePublicacion oficial con reclamos.
N23PeriodoVentana de sincronizacion del padron desde el servicio externo de organizaciones.

Presets y publicacion por defecto

  • Al crear una eleccion, el preset genera registros para todas las etapas del calendario.
  • Las etapas que arrancan con fecha por defecto dependen del tipo: BOARD agrega fecha a N1, N2, N4, N6, N7, N8, N11, N12, N16, N17, N18 y N23; los tipos tipo comision usan la misma base pero sin fecha por defecto en N6 ni N8.
  • Las fechas por defecto se crean a las 18:00 UTC, dos dias despues de la creacion, y luego la UI las presenta ajustadas por diffUTC.
  • Las etapas que quedan publicables por defecto en el preset son N1, N2, N4, N11, N12, N16, N17 y N18.
  • La bandera Publico del calendario tiene consumo real: el portal publico y los snapshots publicos solo exponen etapas marcadas como publicables.

Tareas electorales

  • La pantalla de tareas requiere que exista al menos un calendario. Si no hay calendarios cargados, muestra un mensaje y deja deshabilitada la configuracion de nuevas tareas.
  • El formulario de alta solo ofrece claves de tarea que todavia no esten usadas en la eleccion. El backend ademas vuelve a bloquear duplicados por ElectionTaskKey.
  • Cada tarea se define por: tarea, calendario asociado, nivel de dependencia, posicion visual (displayOrder) y flag Publicable.
  • La tabla de tareas configuradas permite editar esos campos, mover filas hacia arriba/abajo y eliminar.
  • Guardar persiste los cambios de las tareas pero no marca la etapa como completada. Marcar como terminada y seguir exige que exista al menos una tarea y luego deja tasksSet=true. Ignorar navega a candidatos sin guardar.
  • Al agregar o editar una tarea, el backend crea progreso inicial NOT_STARTED para todos los candidatos actuales que todavia no tengan progreso en esa tarea; no lo crea para candidatos de abstencion.
  • Una tarea no puede eliminarse si ya tiene progreso de candidatos asociado. En la practica, esto suele bloquear la eliminacion una vez que la eleccion ya tiene candidatos y la tarea fue agregada o reconfigurada.
  • El orden visible se resuelve por displayOrder y, ante empate o nulo, por identificador interno. Los botones subir/bajar renumeran secuencialmente todas las tareas.

Catalogo de tareas

Tarea Default Nivel por defecto Posicion por defecto
PROFILEPerfilNivel 110
COUNTRIESPaisesNivel 120
INCOMPATIBILITIESIncompatibilidadesNivel 130
COURSECapacitacionNivel 240
ORG_SUPPORTSApoyos de organizacionesNivel 250
USER_SUPPORTS_2Apoyos por contacto (2)Nivel 260
USER_SUPPORTS_5Apoyos por contacto (5)Nivel 270
ORGANIZATIONSOrganizacionesNivel 280
OTHER_STATUTORY_QUESTIONSPreguntas de la comision electoral (e)Nivel 290
OTHER_NON_STATUTORY_QUESTIONSPreguntas de la comision electoral (ne)Nivel 2100
DECLARATIONSDeclaracionesNivel 2110
DECLARATIONS_NON_STATUTORYDeclaraciones (n.e)Nivel 2120
EVALUATIONEvaluacionNivel 3130

Publicacion por defecto de tareas

  • En los presets de alta quedan publicables por defecto PROFILE, COUNTRIES, ORG_SUPPORTS, USER_SUPPORTS_2, USER_SUPPORTS_5, ORGANIZATIONS, OTHER_STATUTORY_QUESTIONS y OTHER_NON_STATUTORY_QUESTIONS.
  • La bandera Publicable de las tareas tambien tiene consumo en la experiencia publica y en snapshots: la visibilidad se resuelve por clave de tarea.

Siguiente modulo

Despues de tareas, el wizard continua en candidaturas.

  • Candidaturas y nominaciones: gestione altas manuales, nominaciones, apoyos y publicacion de candidatos desde esta guia.

Fuentes contrastadas

ElectionCalendarModuleDashboard, ElectionTasksDashboard, ElectionTasksPanel, ManageElectionTabsPanel, DashboardElectionBasePage, ElectionCalendarKey, ElectionTaskKey, TaskDependencyLevel, ElectionPresetConfigurations, ElectionsManagerEJBBean.saveElectionCalendars, addElectionTask, editElectionTask, moveElectionTaskUp, moveElectionTaskDown, removeElectionTask, persistElectionCalendarSet, persistElectionTasksSet, PublicElectionSnapshotBuilder y PublicElectionPage.