Diferencia entre revisiones de «Administración de censos - 17 18 - G2»
(→Miembros y contacto) |
(→API) |
||
Línea 28: | Línea 28: | ||
== API == | == API == | ||
− | + | Las funcionalidades aquí descritas y especificadas no son finales. Debido a la diversidad de funcionalidades y necesidades de los otros grupos, éstas pueden variar a lo largo del desarrollo (sea debido al despliege, conflictos, etc). | |
+ | |||
+ | |||
+ | === Creación de un censo === | ||
+ | |||
+ | ---- | ||
+ | |||
+ | Se hace una petición POST (a través del formulario descrito en su correspondiente vista) con los parámetros siguientes y se devolverá un JSON con la siguiente información. | ||
+ | |||
+ | '''URL:''' | ||
+ | http://egc-censos1718.es/api/create/censo.json | ||
+ | |||
+ | '''Parámetros:''' | ||
+ | * id_votacion: Identificador usado para la votación a la que quiere enlazar el censo. | ||
+ | * id_grupo: Identificador del grupo de usuarios al que quiere otorgar acceso a voto. | ||
+ | * nombre (opcional): Nombre a establecer para el censo a crear. | ||
+ | * fecha_ini (opcional): dd/mm/yyyy hh:mm Fecha en la que quiere iniciar la validez del censo (si no se establece, se tomará la fecha en el momento de creación). | ||
+ | * fecha_fin (opcional): dd/mm/yyyy hh:mm Fecha en la que quiere finalizar la validez del censo (si no se establece, se tomará la ''fecha de finalización de la votación'' como límite). | ||
+ | Todos los parámetros deberán ir correctamente parseados en el formato URL (ya que así será traducido e interpretado) | ||
+ | '''Ejemplo:''' | ||
+ | POST http://egc-censos1718.es/api/create/censo.json?id_votacion=314&id_grupo=3&nombre=Censo_de_prueba&fecha_ini=24%2F%0A11%2F%0A2017%20 | ||
+ | |||
+ | '''Formato JSON:''' | ||
+ | { | ||
+ | "exito": true, | ||
+ | "mensaje": "Creado con éxito", | ||
+ | "censo": { | ||
+ | "id": "1", | ||
+ | "id_votacion": "314", | ||
+ | "id_grupo": "3", | ||
+ | "nombre": "Censo_de_prueba", | ||
+ | "fecha_ini": "24/11/2017 16:00", | ||
+ | "fecha_fin": "30/11/2017 23:59" | ||
+ | } | ||
+ | } | ||
== Miembros y contacto == | == Miembros y contacto == |
Revisión del 17:53 24 nov 2017
Contenido
Objetivo del subsistema
- Gestionar lista de usuarios agrupados en quienes pueden votar o no en una determinada votación.
- Crear nuevos censos cada vez que se genere una determinada votación.
Consideraciones
- Repositorio del proyecto del año pasado: https://github.com/AgoraUS-G1-1617/CensoEGC
- Repositorio del proyecto actual: https://github.com/EGC-G2-Trabajo-1718/egc-censos
- Wiki del proyecto actual (wiki interna de github para uso interno del grupo): https://github.com/EGC-G2-Trabajo-1718/egc-censos/wiki
- ¿Dependencias con el grupo de autenticación / registro / administración de votaciones?
Tecnología usada
Subsistema: Administración de Censos Lenguaje/Herramienta: Django 1.11 -> Python 3.6 Sistema de gestión de bibliotecas: pip Bibliotecas: Django REST framework (djangorestframework): versión 3 Necesita Base de datos: Sí (Ninguna empleada actualmente, a la espera de directrices)
Hemos decidido hacer uso del framework Django en su versión 1.11 y que trabaja con Python 3.6 por su facilidad de trabajo con JSON, que será el formato de datos en el que se proveerán las funcionalidades de la API. Haremos uso de la librería de funcionalidades djangorestframework que nos provee utilidades para trabajar y crear una API.
Como IDE desarrollaremos sobre PyCharm (en su versión Community), corriendo sobre Ubuntu 16.04 (o una máquina virtual en la máquina de cada desarrollador).
Funcionalidades
Por detallar. Actualmente, ver los objetivos
API
Las funcionalidades aquí descritas y especificadas no son finales. Debido a la diversidad de funcionalidades y necesidades de los otros grupos, éstas pueden variar a lo largo del desarrollo (sea debido al despliege, conflictos, etc).
Creación de un censo
Se hace una petición POST (a través del formulario descrito en su correspondiente vista) con los parámetros siguientes y se devolverá un JSON con la siguiente información.
URL:
http://egc-censos1718.es/api/create/censo.json
Parámetros:
* id_votacion: Identificador usado para la votación a la que quiere enlazar el censo. * id_grupo: Identificador del grupo de usuarios al que quiere otorgar acceso a voto. * nombre (opcional): Nombre a establecer para el censo a crear. * fecha_ini (opcional): dd/mm/yyyy hh:mm Fecha en la que quiere iniciar la validez del censo (si no se establece, se tomará la fecha en el momento de creación). * fecha_fin (opcional): dd/mm/yyyy hh:mm Fecha en la que quiere finalizar la validez del censo (si no se establece, se tomará la fecha de finalización de la votación como límite). Todos los parámetros deberán ir correctamente parseados en el formato URL (ya que así será traducido e interpretado)
Ejemplo:
POST http://egc-censos1718.es/api/create/censo.json?id_votacion=314&id_grupo=3&nombre=Censo_de_prueba&fecha_ini=24%2F%0A11%2F%0A2017%20
Formato JSON:
{ "exito": true, "mensaje": "Creado con éxito", "censo": { "id": "1", "id_votacion": "314", "id_grupo": "3", "nombre": "Censo_de_prueba", "fecha_ini": "24/11/2017 16:00", "fecha_fin": "30/11/2017 23:59" } }
Miembros y contacto
- Fco. Javier García, fjgparrales@gmail.com Coordinador
- Miguel Ternero Algarín
- Daniel Lozano Portillo
- María Ruiz Gutiérrez
- Laura Vera Recacha