Skip to content

Aplicación de escritorio de ayuda al alumno para la generación de la documentación administrativa del CEED

Notifications You must be signed in to change notification settings

CEED-Informatica/maya_forms

Repository files navigation

maya-forms

Aplicación multiplataforma que genera la documentación administrativa requerida para el CEED.

La aplicación se puede ejecutar en Linux/MacOS/Windows y permite a los estudiantes generar correctamente los anexos o formularios que se solicitan para realizar trámites en el Centro Especifico de Educación a Distancia de la Comunidad Valenciana.

Además, en fases posteriores, se pretende que:

  • se pueda firmar eletrónicamente la documentación
  • la aplicación ayude a la creación de un fichero comprimido con el resto de documentación necesaria en cada trámite
  • que conecte con la plataforma de entrega o que realice el envio de manera automática

Trámites soportados

Ciclos Formativos

  • Convalidaciones por estudios
  • Convalidaciones por experiencia profesional reconocida

Cómo empezar

Requisitos

La aplicación está desarrollada en Tauri (Rust) utilizando React para el desarrollo del interfaz gráfico

Configuración de IDE recomendada

Primeros pasos

Instalar los paquetes necesarios

yarn

Plantillas

El core de maya_forms se encarga de la creación de formularios HTML con sus correspondientes validaciones que, una vez completados correctamente, generen documentos pdf. Cada uno de esos formularios se modela a través de lo que se denomina internamente doc_template o plantilla de documento.

Cada uno de esos doc_template están compuestos a su vez de sections o secciones, lo que vendrían a ser bloques de formularios. Por ejemplo: datos personales, documentación aportada, etc

doc_template

  1. Cada doc_template es un fichero json.

  2. Su nombre se escribe en nomenclatura snake_case con el formato XXXX_nombre_del_template. Donde:

    • XXXXX: es un nemotécnico que indique a qué estudio está referido.

    • nombre_del_template: es el noombre que se le asigna a la platilla.

      Ejemplo: CF_studies_validation

  3. Se almacenan en la carpeta src-tauri/resources/doc_templates.

  4. Su estructura es:

    • "id": cadena en MAYÚSCULAS con el formato: DOCTMPL_XXXX_ID_DEL_TEMPLATE, donde XXXX es el nmotécnico del tipo de estudio para el está dirigida e ID_DEL_TEMPLATE es el identificador elegido. Por ejemplo: "DOCTMPL_CF_STUDIES_VALIDATION".

    • "version": número entero que indica la versión de la plantillla. Por ejemplo: 1.

    • "title": cadena que permite al ser humano entender cual es el formulario. Por ejemplo: "Convalidaciones por estudios",

    • "description": cadena que proporciona información detallada sobre el formulario. Será mostrada como ayuda para los usuarios finales. Por ejemplo: "Formulario para solicitar convalidaciones por estudios, no por experiencia profesional.",

    • "study_type": nmotécnico del tipo de estudio para el está dirigida la plantilla. Por ejemplo: "CF".

    • "sections_ids": array de todas las secciones que incluye el doc_template. Cada una de ella es un objeto con la siguiente estructura:

      • "id": Identificador de la sección. Por ejemplo: "PERSONAL_DATA".
      • "style": forma en la que se va a mostrar la sección. Hay dos posibilidades:
        1. "FIXED": modo fijo. Siempre visible.
        2. "ACC": modo acordeon. Se puede mostrar u ocultar pinchando en el título de al sección.

      Por ejemplo:

      "sections_ids": [ {
          "id": "PERSONAL_DATA",
          "style": "FIXED"
        }
      ]
      

    NOTA: El orden de las secciones en el doc_template será el orden en el que estás se mostrarán en el formulario.

section

  1. Cada section es un fichero json.

  2. Su nombre se escribe en nomenclatura snake_case indicando simplemente el nombre_del_template. Por ejemplo: personal_data

  3. Se almacenan en la carpeta src-tauri/resources/doc_templates/sections.

  4. Su estructura es:

    • "id": cadena en MAYÚSCULAS con el formato: SEC_ID_DEL_TEMPLATE, donde ID_DEL_TEMPLATE es el identificador elegido. Por ejemplo: "SEC_PERSONAL_DATA".

    • "title": cadena que indica el título de la sección. Se utilizará para ser renderizada como cabecera de la misma. Por ejemplo: "Datos personales".

    • "subtitle": cadena que indica el subtítulo de la sección. Se utilizará_ para ser renderizada como subcabecera de la misma. Por ejemplo: "Información general sobre el alumno/a"

    • "layout": cadena con el css grid areas template. Indica, mediante el uso de areas las distribución de los control. Cada fila va entercomillada con comillas simples y se separa del resto de filas con comas. Por ejemplo: "'name surname surname nia dni', 'address address address email phone', 'region city city city cp'"

    • "controls": array de todos los controles que incluye la section. El orden de los controles no es relevante ya que su posicionamiento viene definido por el layout.

Anexo I. Tipos de estudios

Nmotécnicos por estudios

  • GEN: general, todos los estudios
  • CF: Ciclo Formativo
  • BCH: Bachillerato

About

Aplicación de escritorio de ayuda al alumno para la generación de la documentación administrativa del CEED

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published