Guía de Uso y Revisión
FISIO FIND - GUIA DE USO Y REVISIÓN
ÍNDICE
- 1. INTRODUCCIÓN
- 2. ACCESO A LA APLICACIÓN
- 3. DESCRIPCIÓN DE FUNCIONALIDADES NO TERMINADAS
- 4. DESCRIPCIÓN Y GUÍA DE LOS CASOS DE USO
- 5. DESPLIEGUE LOCAL
Ficha del documento
-
Nombre del Proyecto: FISIO FIND
-
Número de Grupo: Grupo 6
-
Entregable: #SPRINT 3
-
Miembros del grupo: Alberto Carmona Sicre, Antonio Macías Ferrera, Benjamín Ignacio Maureira Flores, Francisco Capote García, Daniel Alors Romero, Daniel Fernández Caballero, Daniel Ruiz López, Daniel Tortorici Bartús, Daniel Vela Camacho, Delfín Santana Rubio, Guadalupe Ridruejo Pineda, Julen Redondo Pacheco, Miguel Encina Martínez, Francisco Mateos Villarejo, Pablo Fernández Pérez, Ramón Gavira Sánchez, Rafael Pulido Cifuentes.
-
Autores: Delfín Santana Rubio (autor) y Guadalupe Ridruejo Pineda (revisora)
-
Fecha de Creación: 10/04/2025
-
Versión: v1.0
Historial de modificaciones
Fecha | Versión | Realizada por | Descripción de los cambios |
---|---|---|---|
10/04/2025 | v1.0 | Delfín Santana Rubio | Versión inicial del documento |
1. INTRODUCCIÓN
FISIOFIND es una plataforma de consulta en línea diseñada para conectar fisioterapeutas y pacientes. La aplicación permite la gestión de citas, realización de consultas virtuales y procesamiento de pagos, facilitando la organización y seguimiento de sesiones terapéuticas de forma segura y eficiente. La solución se orienta a dos grandes grupos de usuarios: fisioterapeutas y pacientes.
En este documento, se detalla una guía para el despliegue en local de la apliación además de un desglose en detalle para la realización de las prueba del S3.
2. ACCESO A LA APLICACIÓN
Se podrá acceder a nuestra aplicación desplegada mediante el siguiente enlace: https://s3.fisiofind.com/
Además, se podrá visitar nuestra landing page en la que nos publicitamos en: https://fisiofind-landing-page.netlify.app/
Toda nuestra documentación actualizada en: https://fisiofind.vercel.app/
Y, nuestro repositorio en GitHub: https://github.com/Proyecto-ISPP/FISIOFIND
Una vez en nuestra aplicación, se podrá acceder sin necesidad de iniciar sesión a nuestra página principal y realizar una primeras búsquedas de fisioterapeutas. De todas formas, para probar nuestras funcionalidades completas, facilitamos los siguientes credenciales:
El panel de admin hemos decidido utilizar un subdominio para tenerlo. Esta práctica está recomendada desde el punto de vista de la seguridad y es una práctica extendida: https://s3-api.fisiofind.com/admin . No obstante, el administrador puede iniciar sesión en el frontend para editar los documentos legales más fácilmente.
Credenciales:
-
Administrador:
- Username: Administrador
- Password: 65471364R65471364R
-
Fisioterapeuta 1:
- Username: Alberto
- Password: 20029911Q20029911Q
-
Fisioterapeuta 2:
- Username: Lucía
- Password: 41653473J41653473J
-
Paciente 1:
- Username: Nerea
- Password: 92956178E92956178E
-
Paciente 2:
- Username: Claudia
- Password: 36372053Z36372053Z
Video demo: https://github.com/Proyecto-ISPP/FISIOFIND/blob/main/docs/demo_3.webp
URL Clokify: Tiempo S3
La aplicación implementa validación de fisioterapeutas por número de colegiado. Si se quiere crear un nuevo fisioterapeuta se recomienda coger datos de estas urls que tienen datos de colegiados:
- Aragón: https://ventanilla.colfisioaragon.org/buscador-colegiados
- Cantabria: https://colfisiocant.org/busqueda-profesionales/
- Galicia: https://www.cofiga.org/ciudadanos/colegiados
- Madrid: https://cfisiomad.com/#/ext/buscarcolegiado
- Murcia: https://cfisiomurcia.com/buscador-de-colegiados/
- Andalucía: https://colfisio.org/registro-censo-fisioterapeutas
- Asturias: https://www.cofispa.org/censo-colegiados
- Islas Baleares: http://www.colfisiobalear.org/es/area-social-y-ciudadana/profesionales-colegiados/
- Islas Canarias: https://www.consejo-fisioterapia.org/vu_colegiados.html
- Castilla-La mancha: https://www.coficam.org/ventanilla-unica/censo-colegial
- Extremadura: https://cofext.org/cms/colegiados.php
- Castilla y León: https://www.consejo-fisioterapia.org/vu_colegiados.html
- Cataluña: https://www.fisioterapeutes.cat/es/ciudadanos/profesionales
- La Rioja: https://www.coflarioja.org/ciudadanos/listado-de-fisioterapeutas/buscar-colegiados
- Navarra: https://www.consejo-fisioterapia.org/vu_colegiados.html
- País Vasco: https://cofpv.org/es/colegiados.asp
- Comunidad Valenciana: https://app.colfisiocv.com/college/collegiatelist/
3. DESCRIPCIÓN DE FUNCIONALIDADES NO TERMINADAS
Actualmente, no tenemos implementado ningún mecanismo para que finalicen las citas. Por lo que solo se pueden finalizar las citas desde el panel de admin.
Tampoco está terminada la subida de documentos por parte de los pacientes. Por lo que no se debe de comprobar. Tampoco está terminado en el panel de Admin. Caso de uso:
- El paciente entra en la sección de documentos dentro del tratamiento.
- Selecciona el documento que quiere subir y rellena los datos necesarios.
- Cuando completa el formulario, el fisio puede ver el documento.
4. DESCRIPCIÓN Y GUÍA DE LOS CASOS DE USO
En esta sección se explican los casos de uso que se entregan para el Sprint 3 y una pequeña guía para seguirlos. Muchos de estos casos ya se prueban en la demo.
Para empezar, en la pantalla del home del despliegue, podrá ver una navbar desplegable con distintos iconos y títulos descriptivos. Deberá de navegar por esas pestañas para probar la aplicación.
Si se quiere hacer una cuenta, deberá de dar click en la sección superior de la home en la parte que pone registrarse. Igual para iniciar sesión. Se recomienda poner un email real ya que hay funcionalidades que requieren validación por correo o que notifican a través del correo electrónico.
Si se registra como fisio, mientras se registra le aparecerá una sección para seleccionar el plan de pago a utilizar.
Si inicia sesión como fisioterapeuta, en el navbar desplegable, verá un botón con título "Mi perfil". Si accede a esa vista verá el perfil de fisio, dónde podrá modificar su información, su horario y sus servicios. También, es en esta vista donde un fisio puede valorar la aplicación, dando al botón que aparece en la sección de "Tu valoración de la App" debajo del horario del fisio. Cuando el fisio crea una valoración, esta se verá en la home para todo aquel que visite la app. El fisio también puede editar y eliminar su valoración.
Si entra en la sección de videollamdas podrá crear una sala de prueba para probar la funcionalidad antes de utilizarlo. Es sólo cuando un fisioterapeuta tenga una cita que aparecerá la sala para contectarse un tiempo antes de la hora de la cita. Si entra en la videollamada podrá ver distintas herramientas: "Historial","Pantalla", etc. El historial ES UN MOCKUP, no está implementado. Sin embargo, si puede compartir pantalla, acceder a modelos 3D(todos desde la misma sección), compartir con el usuario un mapa de dolor y cuestionarios.
Cuando una cita se termina, en la pantalla de tratamientos aparece la opción de crear un tratamiento.
Dentro del tratamiento el fisio puede gestionar sesiones de ejercicios para distintos días de la semana. Estas sesiones se componen de ejércitos creados específicamente para la sesión u otros ya creados por el fisio anteriormente, además de cuestionarios de control.
Cuando un paciente tiene una videollamada con un fisioterapeuta, al lado del botón de acceder aparece un botón para valorar. Si el usuario rellena la valoración, esto tiene un efecto que puede verse en el perfil de fisio.
Un paciente para buscar un fisioterapeuta puede acceder a la sección de buscar a través del botón de "Buscar" del desplegable.
Búsqueda avanzada
- Un usuario accede a la sección de buscar de fisios
- Si rellena sus preferencias para la búsqueda y le da a buscar le aparecen fisios que cumplen esos valores.
Cuestionario de preintervención
Caso de uso:
- Un usuario (paciente o que o ha iniciado sesión) accede a la vista de reservar una cita con un fisioterapeuta.
- Cuando selecciona el servicio y avanza en la vista, se le muestra un cuestionario de preintervención (porque se hace antes de la intervención) diseñado por el fisioterapeuta.
- El usuario rellena el cuestionario, avanza en la vista y termina de reservar la cita.
Caso de uso:
- Un fisioterapeuta accede a la vista de edición de su perfil.
- Hay una sección para modificar sus servicios y sus cuestionarios de preintervención asociados.
- El fisioterapeuta crea o edita un servicio o un cuestionario de preintervención.
- Cuando el fisioterapeuta guarda, el sistema queda actualizado.
Solicitud de una cita
Caso de uso:
- Un usuario con rol paciente busca por especialidad en la página principal.
- Se muestran los fisioterapeutas que tienen esa especialidad.
- El paciente hace click en un fisioterapeuta.
- Le lleva a una vista de reservar cita, en la que se muestra los servicios disponibles del fisioterapeuta y las fechas y horarios disponibles para la cita según avanza en la vista.
- Cuando la vista lo muestre en el proceso, el paciente rellena el cuestionario de preintervención asociado al servicio seleccionado.
- En el proceso, el usuario puede pagar y generar una factura.
- El paciente finalmente la acepta.
Gestión del calendario
Caso de uso:
- Un fisioterapeuta entra en la sección de sus citas.
- Puede visualizar las citas que han seleccionado los pacientes.
- El fisioterapeuta puede aceptar la cita, cancelarla o proponer un cambio. No puede cambiar el horario de la cita sin enviar una propuesta de cambio y que el paciente lo acepte.
- Si el paciente acepta el cambio, la cita queda confirmada.
Videollamada y herramientas de la videollamada
Actualmente esta funcionalidad tiene una sección que está mockeada en la vista de videollamada. No se ha eliminado porque se planea utilizar en el siguiente sprint.
Caso de uso:
- Un fisioterapeuta abre la sección de videollamadas.
- Si tiene citas programadas para ese día, desde 2 horas previas y hasta 2 horas después, podrá acceder a la sala correspondiente a esa cita (las citas deben reservarse al menos con 48 horas de antelación).
Caso de uso:
- Un paciente abre la sección de videollamadas.
- De forma análoga al fisioterapeuta, si tiene citas programadas para ese día, podrá acceder a la sala correspondiente a esa cita.
Caso de uso:
- Un fisioterapeuta se conecta con un paciente a una videollamada.
- El fisioterapeuta comparte su pantalla para compartir lo que necesite de su dispositivo.
- El paciente lo visualiza correctamente.
- El fisioterapeuta deja de compartir pantalla y vuelve a verse su cámara.
Caso de uso:
- Un fisioterapeuta se conecta con un paciente a una videollamada.
- El fisioterapeuta y el paciente tienen funcionalidades generales de videollamadas (silenciar audio, dejar de compartir cámara, etc.) y un chat para poder hablar.
- Estas funcionalidades pueden activarse y desactivarse y no causan problemas con la videollamada.
Caso de uso:
- Un fisioterapeuta se conecta con un paciente a una videollamada.
- El fisioterapeuta tiene acceso a mapas de dolor (cuerpos humanos con los que se puede interactuar) que puede enviar al paciente como herramienta para ejercer su labor.
- Cuando el paciente recibe el mapa de dolor, el fisioterapeuta y el paciente pueden interaccionar en tiempo real con el mapa de dolor.
- Cuando el fisioterapeuta deja de necesitar el mapa de dolor, puede dejar de compartirlo.
- Si el fisioterapeuta vuelve a enviar el mapa de dolor, el estado en el que se dejó se recupera. Esto solo funciona durante la videollamada (hasta que se cuelga o se recarga la página).
Caso de uso:
- Un fisioterapeuta se conecta con un paciente a una videollamada.
- El fisioterapeuta dispone de modelos 3D del cuerpo humano (sus músculos) y de ciertos músculos que resultan interesantes para un fisioterapeuta.
- El fisioterapeuta puede resolver sus dudas anatómicas o tener referencia para ayudar al paciente.
- El fisioterapeuta también puede compartir pantalla para poder enseñárselo al paciente.
Caso de uso:
- Un fisioterapeuta se conecta con un paciente a una videollamada.
- El fisioterapeuta dispone de formularios que puede pasar al paciente, pudiendo crearlos desde la misma videollamada.
- Si el fisio decide enviarselo al paciente, al paciente le aparece.
- Cuando el paciente lo rellena, el fisio puede ver el resultado.
Gestión de subida de archivos
En esta entrega se ha integrado esta funcionalidad con los tratamientos. En el panel de admin, la gestión de videos no está terminada.
Caso de uso:
- El fisioterapeuta entra en la sección de subida de videos dentro del tratamiento.
- Selecciona el archivo que quiere subir y rellena los datos necesarios.
- Cuando completa el formulario, el paciente puede ver el video.
Planes de precio
Caso de uso:
- Un fisioterapeuta no registrado quiere abrirse una cuenta en fisio find
- Accede a la vista de registrarse como fisioterapeuta
- Avanza rellenando campos hasta que se le da a elegir un plan de precio
- Cuando lo selecciona se permite seguir con el registro y finalmente completarlo
Tratamientos
Caso de uso:
- Un fisioterapeuta entra en la sección de tratamientos.
- En ella puede ver aquellos pacientes con los que tiene un tratamiento, que son aquellos con los que tiene una cita finalizada.
- El fisioterapeuta entra en uno de los tratamientos y ve un resumen de la información del tratamiento (estos solo se mostrarán si hay registros hechos por el paciente).
- Entra en la sección de nuevo ejercicio y puede crear un nuevo ejercicio desde cero o seleccionar uno existente.
Caso de uso:
- Un fisioterapeuta entra en la sección de tratamientos
- En ella puede ver aquellos pacientes con los que tiene un tratamiento
- El fisioterapeuta entra en uno de los tratamientos y modifica algún dato
- Cuanto termina, acepta el cambio y el sistema se actualiza
5. DESPLIEGUE LOCAL
Por último, en este epígrade se muestran las instrucciones para la puesta en funcionamiento del proyecto en un entorno local. También se pueden consular estas instrucciones en el archivo README del proyecto: https://github.com/Proyecto-ISPP/FISIOFIND/blob/main/README.md
Despliegue Local
Prerrequisitos
Antes de comenzar con FISIOFIND, asegúrese de que su entorno de ejecución cumpla con los siguientes requisitos:
- Lenguaje de Programación: Python
- Gestor de Paquetes: Npm, Pip
- Base de Datos: Postgres
Instalación
Instale FISIOFIND utilizando uno de los siguientes métodos:
- Clone el repositorio de FISIOFIND:
❯ git clone https://github.com/Proyecto-ISPP/FISIOFIND
- Navegue al directorio del proyecto:
❯ cd FISIOFIND
- Instale las dependencias del proyecto:
Primero, cree y active un entorno virtual de Python en el directorio backend
:
❯ cd backend
❯ python -m venv venv
❯ source venv/bin/activate
Luego proceda a instalar las dependencias:
❯ pip install -r requirements.txt
Ahora instalamos las dependencias del framework frontend en el directorio frontend
:
❯ cd ../frontend
❯ npm install
Configuración de la Base de Datos
Para configurar la base de datos para FISIOFIND, siga estos pasos:
- Crear la Base de Datos:
Asegúrese de tener PostgreSQL instalado y en ejecución. Luego, cree una nueva base de datos llamada fisiofind
:
❯ psql -U postgres
postgres=# CREATE DATABASE fisiofind;
postgres=# \q
- Configurar Variables de Entorno:
Copie el archivo .env.example
para crear un nuevo archivo .env
en el directorio backend
:
❯ cd backend
❯ cp .env.example .env
Abra el archivo .env
y actualice la configuración de la base de datos con sus credenciales de PostgreSQL:
DATABASE_NAME=fisiofind
DATABASE_USER=your_postgres_user
DATABASE_PASSWORD=your_postgres_password
DATABASE_HOST=localhost
DATABASE_PORT=5432
Reemplace your_postgres_user
y your_postgres_password
con su nombre de usuario y contraseña de PostgreSQL.
Hay valores del .env que son secretos. Si quiere obtenerlos para la prueba contacte con info@fisiofind.com.
- Aplicar Migraciones:
Con el entorno virtual activado, aplique las migraciones de la base de datos para configurar el esquema inicial:
❯ python manage.py makemigrations
❯ python manage.py migrate
- Crear un Superusuario:
Cree una cuenta de superusuario para acceder al panel de administración de Django:
❯ python manage.py createsuperuser
Siga las indicaciones para configurar las credenciales del superusuario.
Una vez completados estos pasos, su base de datos debería estar configurada y lista para usar con FISIOFIND.
Uso
La primera vez que el proyecto se despliega localmente, necesitamos crear un archivo .env en el directorio backend
según el archivo .env.example
.
Para ejecutar el servidor backend, siga estos pasos en el directorio backend
y con el entorno virtual activado:
❯ cd .\fisio_find
❯ python .\manage.py makemigrations
❯ python .\manage.py migrate
❯ python .\manage.py runserver
Adicionalmente, la primera vez que el proyecto se despliega localmente, necesitamos crear un superusuario para acceder al panel de administración:
❯ python.\manage.py createsuperuser
Después de que el servidor backend local esté en funcionamiento, podemos ejecutar el servidor frontend en una nueva ventana de terminal:
❯ cd ../../frontend
❯ npm run dev
Ejecución de la Aplicación
Una vez que tanto el backend como el frontend estén corriendo, podrá acceder a la aplicación a través de la URL de la landing page (http://localhost:3000
). Desde allí se podrá navegar entre las diferentes secciones de la aplicación, según el perfil de usuario (fisioterapeuta, paciente o administrador).