spr migrated books, and tester

This commit is contained in:
buenosairesam
2025-12-31 09:07:27 -03:00
parent 21b8eab3cb
commit cccc6b5a93
136 changed files with 15763 additions and 472 deletions

View File

@@ -0,0 +1,55 @@
# Registro de Usuario
## Tipo de usuario
Dueno de mascota (nuevo)
## Donde empieza
Pagina principal -> Boton "Registrarse" o `/register`
## Que quiere hacer el usuario
Crear una cuenta nueva para poder reservar turnos y gestionar sus mascotas
## Pasos
1. Click en "Registrarse" en la pagina principal
2. Ingresar email
3. Ingresar contraseña
4. Confirmar contraseña
5. Aceptar terminos y condiciones
6. Click en "Crear cuenta"
7. Recibir email de verificacion
8. Click en el link de verificacion
9. Cuenta activada, redirige al dashboard
## Que deberia pasar
- Usuario creado en el sistema
- Email de bienvenida enviado
- Puede iniciar sesion inmediatamente
- Ve su dashboard vacio (sin mascotas, sin turnos)
## Problemas comunes
- El email ya esta registrado pero el usuario no lo recuerda
- El email de verificacion llega a spam
- La contraseña no cumple los requisitos minimos
- El usuario cierra el browser antes de verificar y no encuentra el email despues
- Usuarios intentan registrarse con email de otra persona
## Casos especiales
- Si el email existe como usuario invitado (del turnero), deberia linkear las cuentas
- Si el usuario ya tiene cuenta pero no verificada, reenviar email de verificacion
- Registro desde el flujo de turnero (ya ingreso datos, solo falta contraseña)
## Flujos relacionados
- Login (despues de registrarse)
- Turnero (puede disparar registro)
- Recuperar contraseña (si ya tenia cuenta y no recuerda)
## Notas tecnicas
- API: `POST /common/users/create/`
- Validacion de contraseña: minimo 8 caracteres, 1 numero, 1 mayuscula
- Verificacion expira en 24 horas

View File

@@ -0,0 +1,77 @@
# Reservar Turno (Turnero)
## Tipo de usuario
Dueno de mascota (invitado, registrado, o recurrente)
## Donde empieza
Pagina principal -> Boton "Agendar visita" o enlace directo `/turnero`
## Que quiere hacer el usuario
Reservar un turno veterinario a domicilio para su mascota
## Pasos
1. Click en "Agendar visita"
2. Ingresar direccion en el popup de cobertura
3. Sistema verifica si hay cobertura en esa zona
4. Si hay cobertura, click "Siguiente"
5. Completar datos de la mascota:
- Nombre
- Tipo (Perro/Gato)
- Raza (opcional)
- Edad aproximada
- Peso aproximado
- Si esta castrado/a
6. Seleccionar categoria de servicio (Vacunacion, Consulta, etc.)
7. Seleccionar servicios especificos
8. Ver que algunos servicios se agregan automaticamente (ej: consulta clinica)
9. Seleccionar fechas preferidas (hasta 3)
10. Seleccionar franja horaria preferida
11. Ingresar datos de contacto:
- Nombre completo
- Telefono
- Email
12. Revisar resumen
13. Enviar solicitud
## Que deberia pasar
- Solicitud creada con estado "Pendiente"
- Email de confirmacion al usuario
- Notificacion a veterinarios de la zona
- Aparece en "Mis turnos" del usuario
## Problemas comunes
- No hay cobertura en la zona del usuario
- El autocompletado de direcciones no encuentra la calle
- Usuario no puede quitar "Consulta clinica" cuando selecciona vacunacion
- Confunden "fecha preferida" con "fecha confirmada"
- No entienden por que no pueden elegir hora exacta
- El total no se muestra hasta el final y sorprende al usuario
## Casos especiales
- Usuario invitado: se crea como guest, puede registrarse despues
- Usuario logueado: datos pre-llenados, mascota puede ser existente
- Usuario recurrente (mismo email): sistema detecta y sugiere linkear
- Mascota ya castrada: no mostrar servicio de castracion
- Servicios combo: algunos incluyen otros automaticamente
- Zona sin cobertura: mostrar formulario para avisar cuando haya
## Flujos relacionados
- Ver mis turnos (despues de reservar)
- Pagar turno (cuando se coordina)
- Cancelar turno
- Agregar mascota (si ya tiene cuenta)
## Notas tecnicas
- APIs:
- `POST /mascotas/api/v1/coverage-check/` (verificar cobertura)
- `POST /mascotas/api/v1/pet-owners/` (crear dueno invitado)
- `POST /mascotas/api/v1/pets/` (crear mascota)
- `GET /productos/api/v1/services/` (obtener servicios)
- `POST /solicitudes/api/v1/service-requests/` (crear solicitud)
- Estados de solicitud: pending -> coordinated -> payed -> completed

View File

@@ -0,0 +1,79 @@
# Gestion de Mascotas
## Tipo de usuario
Dueno de mascota (registrado)
## Donde empieza
Dashboard -> Seccion "Mis mascotas" o `/user/pets`
## Que quiere hacer el usuario
Agregar, editar o ver informacion de sus mascotas
## Pasos - Agregar mascota
1. Ir a "Mis mascotas"
2. Click en "Agregar mascota"
3. Completar formulario:
- Nombre (obligatorio)
- Tipo: Perro o Gato (obligatorio)
- Raza (opcional, lista segun tipo)
- Fecha de nacimiento o edad aproximada
- Peso en kg (opcional)
- Sexo
- Esta castrado/a (checkbox)
- Foto (opcional)
4. Guardar
## Pasos - Editar mascota
1. Ir a "Mis mascotas"
2. Click en la tarjeta de la mascota
3. Click en "Editar"
4. Modificar campos deseados
5. Guardar
## Pasos - Ver historial medico
1. Ir a "Mis mascotas"
2. Click en la tarjeta de la mascota
3. Ver seccion "Historial de visitas"
4. Click en una visita para ver el informe completo
## Que deberia pasar
- Mascota aparece en el listado
- Disponible para seleccionar en el turnero
- Historial medico accesible
- Foto visible en la tarjeta
## Problemas comunes
- Usuarios quieren agregar mascotas de otros tipos (conejo, ave) - no soportado
- No encuentran donde ver el historial medico
- Quieren eliminar mascota pero tiene turnos pendientes
- Foto muy grande no sube
- Confunden edad con fecha de nacimiento
## Casos especiales
- Mascota creada desde turnero como invitado: aparece cuando linkea cuenta
- Mascota fallecida: deberia poder marcarse (soft delete)
- Multiples mascotas con mismo nombre: permitido pero confuso
- Cambio de peso significativo: registrar historial?
## Flujos relacionados
- Reservar turno (seleccionar mascota existente)
- Ver historial medico
- Registro (crear primera mascota)
## Notas tecnicas
- APIs:
- `GET /mascotas/api/v1/pets/` (listar)
- `POST /mascotas/api/v1/pets/` (crear)
- `PATCH /mascotas/api/v1/pets/{id}/` (editar)
- `DELETE /mascotas/api/v1/pets/{id}/` (soft delete)
- `GET /mascotas/api/v1/vet-visits/?pet={id}` (historial)
- Tipos soportados: solo Perro y Gato por ahora
- Razas: lista predefinida por tipo

View File

@@ -0,0 +1,66 @@
# Pago de Turno
## Tipo de usuario
Dueno de mascota (con turno coordinado)
## Donde empieza
Email de confirmacion de turno -> Link "Pagar" o Dashboard -> Mis turnos -> Boton "Pagar"
## Que quiere hacer el usuario
Pagar un turno que ya fue coordinado con fecha y veterinario asignado
## Pasos
1. Recibir email/notificacion de que el turno fue coordinado
2. Ver detalle del turno con fecha, hora y veterinario asignado
3. Verificar el monto total
4. Click en "Pagar"
5. Redireccion a Mercado Pago
6. Seleccionar metodo de pago:
- Tarjeta de credito/debito
- Dinero en cuenta MP
- Transferencia bancaria
- Efectivo (Rapipago/PagoFacil)
7. Completar pago
8. Redireccion de vuelta a la plataforma
9. Ver confirmacion de pago exitoso
## Que deberia pasar
- Estado del turno cambia a "Pagado"
- Email de confirmacion de pago
- Comprobante disponible
- Veterinario notificado
- Turno aparece como confirmado en el calendario
## Problemas comunes
- Usuario cierra el browser durante el pago y no sabe si se proceso
- Pago rechazado por fondos insuficientes
- Link de pago expira y no pueden pagr
- Quieren pagar en efectivo el dia de la visita
- Precio cambio entre coordinacion y pago
- Quieren aplicar descuento/cupon y no encuentran donde
## Casos especiales
- Pago parcial: no soportado actualmente
- Pago con tarjeta rechazada: puede reintentar
- Pago por transferencia: demora en acreditarse (pendiente de confirmacion)
- Usuario paga pero webhook falla: requiere intervencion manual
- Turno cancelado despues de pagar: proceso de reembolso
## Flujos relacionados
- Ver mis turnos (antes y despues de pagar)
- Cancelar turno (si decide no pagar)
- Contactar soporte (problemas con pago)
## Notas tecnicas
- APIs:
- `POST /payments/api/v1/requests/{id}/preference/` (generar link MP)
- Webhook: `POST /payments/mp/webhook/` (notificacion de MP)
- Integracion: Mercado Pago Checkout Pro
- Estados: coordinated -> payed (despues de webhook exitoso)
- Timeout de preferencia: 24 horas

View File

@@ -0,0 +1,79 @@
# Ver Historial Medico
## Tipo de usuario
Dueno de mascota (registrado, con visitas completadas)
## Donde empieza
Dashboard -> Mis mascotas -> Mascota -> "Ver historial" o Mis turnos -> Turno completado -> "Ver informe"
## Que quiere hacer el usuario
Ver los informes medicos de las visitas veterinarias de su mascota
## Pasos - Desde mascotas
1. Ir a "Mis mascotas"
2. Seleccionar la mascota
3. Ver seccion "Historial de visitas"
4. Lista de visitas ordenadas por fecha (mas reciente primero)
5. Click en una visita para ver detalle
## Pasos - Desde turnos
1. Ir a "Mis turnos"
2. Filtrar por "Completados"
3. Click en un turno completado
4. Click en "Ver informe medico"
## Que muestra el informe
- Fecha de la visita
- Veterinario que atendio
- Motivo de consulta / servicios realizados
- Examen fisico:
- Peso registrado
- Temperatura
- Frecuencia cardiaca
- Observaciones generales
- Diagnostico
- Tratamiento indicado
- Medicamentos recetados (nombre, dosis, frecuencia, duracion)
- Estudios solicitados
- Proximos pasos / seguimiento recomendado
- Observaciones adicionales
## Que deberia pasar
- Usuario puede ver todos los informes de sus mascotas
- Puede descargar/imprimir el informe
- Informacion clara y entendible
## Problemas comunes
- Visita completada pero informe no cargado todavia
- Usuario quiere editar algo del informe (no puede, es del vet)
- Terminologia medica confusa
- No encuentra informe de visita antigua
- Quiere compartir informe con otro veterinario
## Casos especiales
- Visita sin informe: vet no lo cargo (deberia ser obligatorio)
- Informe incompleto: campos vacios
- Multiples visitas mismo dia: mostrar todas
- Mascota transferida de otro dueno: historial previo?
- Estudios pendientes: mostrar estado
## Flujos relacionados
- Gestion de mascotas
- Reservar turno de seguimiento
- Contactar veterinario (dudas sobre informe)
## Notas tecnicas
- APIs:
- `GET /mascotas/api/v1/vet-visits/?pet={id}` (listar visitas)
- `GET /mascotas/api/v1/vet-visits/{id}/` (detalle visita)
- `GET /mascotas/api/v1/vetvisitreport/?vet_visit={id}` (informe)
- PDF: generado on-demand o pre-generado?
- Permisos: solo dueno de la mascota puede ver