spr migrated books, and tester
This commit is contained in:
@@ -0,0 +1,92 @@
|
||||
# Gestion de Solicitudes de Servicio
|
||||
|
||||
## Tipo de usuario
|
||||
Administrador / Operaciones
|
||||
|
||||
## Donde empieza
|
||||
Backoffice `/admin/` -> Dashboard o Seccion "Solicitudes"
|
||||
|
||||
## Que quiere hacer el usuario
|
||||
Ver, filtrar y gestionar todas las solicitudes de servicio del sistema
|
||||
|
||||
## Pasos - Ver solicitudes
|
||||
|
||||
1. Acceder al backoffice
|
||||
2. Ir a seccion "Solicitudes"
|
||||
3. Ver listado con todas las solicitudes
|
||||
4. Usar filtros para encontrar solicitudes especificas:
|
||||
- Por estado (Pendiente, Coordinado, Pagado, Completado, Cancelado)
|
||||
- Por fecha
|
||||
- Por barrio/zona
|
||||
- Por veterinario
|
||||
- Por dueno
|
||||
|
||||
## Pasos - Ver detalle de solicitud
|
||||
|
||||
1. Click en una solicitud del listado
|
||||
2. Ver toda la informacion:
|
||||
- Datos del dueno
|
||||
- Datos de la mascota
|
||||
- Servicios solicitados
|
||||
- Fechas preferidas
|
||||
- Veterinario asignado (si hay)
|
||||
- Estado de pago
|
||||
- Historial de cambios de estado
|
||||
|
||||
## Pasos - Asignar veterinario manualmente
|
||||
|
||||
1. Abrir solicitud en estado "Pendiente"
|
||||
2. Click en "Asignar veterinario"
|
||||
3. Ver lista de vets disponibles en la zona
|
||||
4. Seleccionar veterinario
|
||||
5. Seleccionar fecha y hora
|
||||
6. Confirmar asignacion
|
||||
7. Sistema notifica al vet y al dueno
|
||||
|
||||
## Pasos - Cambiar estado manualmente
|
||||
|
||||
1. Abrir solicitud
|
||||
2. Click en "Cambiar estado"
|
||||
3. Seleccionar nuevo estado
|
||||
4. Ingresar motivo (si aplica)
|
||||
5. Confirmar
|
||||
6. Se registra en el historial
|
||||
|
||||
## Que deberia pasar
|
||||
|
||||
- Vision completa de todas las solicitudes
|
||||
- Capacidad de intervenir cuando algo falla
|
||||
- Trazabilidad de cambios
|
||||
- Notificaciones a las partes afectadas
|
||||
|
||||
## Problemas comunes
|
||||
|
||||
- Solicitud sin vet disponible en la zona
|
||||
- Usuario pago pero webhook fallo
|
||||
- Vet no puede asistir y hay que reasignar
|
||||
- Dueno quiere cancelar pero ya pago
|
||||
- Solicitudes duplicadas del mismo dueno
|
||||
|
||||
## Casos especiales
|
||||
|
||||
- Solicitud urgente sin vets disponibles
|
||||
- Reasignacion a ultimo momento
|
||||
- Cancelacion con reembolso
|
||||
- Solicitud con datos incompletos
|
||||
- Dueno no responde a confirmaciones
|
||||
|
||||
## Flujos relacionados
|
||||
|
||||
- Proceso de reembolso
|
||||
- Gestion de usuarios
|
||||
- Reportes
|
||||
|
||||
## Notas tecnicas
|
||||
|
||||
- APIs:
|
||||
- `GET /solicitudes/api/v1/service-requests/` (listado con filtros)
|
||||
- `GET /solicitudes/api/v1/service-requests/{id}/` (detalle)
|
||||
- `PATCH /solicitudes/api/v1/service-requests/{id}/` (asignar vet)
|
||||
- `PATCH /solicitudes/api/v1/change-service-request-state/` (cambiar estado)
|
||||
- Estados validos: pending, coordinated, payed, completed, cancelled
|
||||
- Permisos: solo staff puede ver todas las solicitudes
|
||||
@@ -0,0 +1,106 @@
|
||||
# Gestion de Usuarios
|
||||
|
||||
## Tipo de usuario
|
||||
Administrador / Operaciones
|
||||
|
||||
## Donde empieza
|
||||
Backoffice `/admin/` -> Seccion "Usuarios" o "Duenos" / "Veterinarios"
|
||||
|
||||
## Que quiere hacer el usuario
|
||||
Administrar duenos de mascotas y veterinarios del sistema
|
||||
|
||||
## Pasos - Ver/Buscar duenos
|
||||
|
||||
1. Ir a "Duenos de mascotas"
|
||||
2. Ver listado de todos los duenos
|
||||
3. Usar buscador (nombre, email, telefono)
|
||||
4. Filtrar por:
|
||||
- Tipo (Registrado / Invitado)
|
||||
- Fecha de registro
|
||||
- Con/sin turnos activos
|
||||
|
||||
## Pasos - Ver detalle de dueno
|
||||
|
||||
1. Click en un dueno
|
||||
2. Ver informacion completa:
|
||||
- Datos personales
|
||||
- Direcciones registradas
|
||||
- Mascotas
|
||||
- Historial de solicitudes
|
||||
- Historial de pagos
|
||||
|
||||
## Pasos - Editar dueno
|
||||
|
||||
1. En el detalle, click "Editar"
|
||||
2. Modificar campos permitidos:
|
||||
- Nombre
|
||||
- Telefono
|
||||
- Email
|
||||
- Direccion
|
||||
3. Guardar cambios
|
||||
|
||||
## Pasos - Gestionar veterinarios
|
||||
|
||||
1. Ir a "Veterinarios"
|
||||
2. Ver listado con:
|
||||
- Nombre y matricula
|
||||
- Zonas de cobertura
|
||||
- Estado (Activo/Inactivo)
|
||||
- Turnos del mes
|
||||
|
||||
## Pasos - Agregar nuevo veterinario
|
||||
|
||||
1. Click en "Agregar veterinario"
|
||||
2. Completar datos:
|
||||
- Nombre completo
|
||||
- Numero de matricula
|
||||
- Email
|
||||
- Telefono
|
||||
- Especialidades
|
||||
- Zonas de cobertura inicial
|
||||
3. Crear credenciales de acceso
|
||||
4. Guardar
|
||||
|
||||
## Pasos - Desactivar veterinario
|
||||
|
||||
1. Abrir perfil del vet
|
||||
2. Click en "Desactivar"
|
||||
3. Confirmar
|
||||
4. Vet deja de recibir solicitudes
|
||||
5. Visitas ya aceptadas se mantienen o se reasignan
|
||||
|
||||
## Que deberia pasar
|
||||
|
||||
- Gestion completa de usuarios del sistema
|
||||
- Capacidad de corregir datos erroneos
|
||||
- Alta/baja de veterinarios
|
||||
- Vision del estado de cada usuario
|
||||
|
||||
## Problemas comunes
|
||||
|
||||
- Duenos duplicados (se registraron con email diferente)
|
||||
- Vet quiere darse de baja pero tiene citas pendientes
|
||||
- Email incorrecto y no reciben notificaciones
|
||||
- Cuenta de invitado que quiere convertirse en registrada
|
||||
|
||||
## Casos especiales
|
||||
|
||||
- Fusionar cuentas duplicadas
|
||||
- Transferir mascota a otro dueno
|
||||
- Vet de vacaciones temporalmente
|
||||
- Cambio de numero de matricula
|
||||
|
||||
## Flujos relacionados
|
||||
|
||||
- Gestion de solicitudes (ver historial por usuario)
|
||||
- Reportes (filtrar por usuario)
|
||||
|
||||
## Notas tecnicas
|
||||
|
||||
- APIs:
|
||||
- `GET /mascotas/api/v1/pet-owners/` (duenos)
|
||||
- `GET /mascotas/api/v1/veterinarians/` (vets)
|
||||
- `POST /mascotas/api/v1/veterinarians/` (crear vet)
|
||||
- `PATCH /mascotas/api/v1/veterinarians/{id}/` (editar/desactivar)
|
||||
- Permisos: solo staff puede modificar usuarios
|
||||
- Soft delete para mantener historial
|
||||
@@ -0,0 +1,98 @@
|
||||
# Gestion de Servicios y Precios
|
||||
|
||||
## Tipo de usuario
|
||||
Administrador
|
||||
|
||||
## Donde empieza
|
||||
Backoffice `/admin/` -> Seccion "Servicios" o Django Admin -> Productos
|
||||
|
||||
## Que quiere hacer el usuario
|
||||
Administrar el catalogo de servicios veterinarios y sus precios
|
||||
|
||||
## Pasos - Ver servicios
|
||||
|
||||
1. Ir a "Servicios"
|
||||
2. Ver listado de todos los servicios
|
||||
3. Filtrar por:
|
||||
- Categoria (Vacunacion, Consulta, Cirugia, etc.)
|
||||
- Tipo de mascota (Perro, Gato, Ambos)
|
||||
- Estado (Activo/Inactivo)
|
||||
|
||||
## Pasos - Agregar nuevo servicio
|
||||
|
||||
1. Click en "Agregar servicio"
|
||||
2. Completar datos:
|
||||
- Nombre del servicio
|
||||
- Descripcion
|
||||
- Categoria
|
||||
- Tipo de mascota aplicable
|
||||
- Precio base
|
||||
- Duracion estimada
|
||||
- Requiere otros servicios (dependencias)
|
||||
3. Guardar
|
||||
|
||||
## Pasos - Editar servicio
|
||||
|
||||
1. Abrir servicio existente
|
||||
2. Modificar campos
|
||||
3. Guardar
|
||||
4. Cambios aplican a nuevas solicitudes
|
||||
|
||||
## Pasos - Gestionar precios
|
||||
|
||||
1. Abrir servicio
|
||||
2. Ir a seccion "Precios"
|
||||
3. Ver precio actual
|
||||
4. Para cambiar precio:
|
||||
- Click "Agregar precio"
|
||||
- Ingresar monto
|
||||
- Definir fecha de vigencia
|
||||
- Guardar
|
||||
5. Precio anterior queda en historial
|
||||
|
||||
## Pasos - Configurar combos
|
||||
|
||||
1. Ir a "Combos" o "Paquetes"
|
||||
2. Crear nuevo combo:
|
||||
- Nombre del combo
|
||||
- Servicios incluidos
|
||||
- Precio del combo (con descuento)
|
||||
- Condiciones de aplicacion
|
||||
3. Guardar
|
||||
|
||||
## Que deberia pasar
|
||||
|
||||
- Catalogo actualizado de servicios
|
||||
- Precios correctos en el turnero
|
||||
- Combos aplicados automaticamente
|
||||
- Historial de precios para facturacion
|
||||
|
||||
## Problemas comunes
|
||||
|
||||
- Cambio de precio afecta solicitudes ya creadas
|
||||
- Servicio deprecado pero con solicitudes pendientes
|
||||
- Combo no se aplica automaticamente
|
||||
- Precio diferente por zona/vet
|
||||
|
||||
## Casos especiales
|
||||
|
||||
- Servicio con precio variable (depende de peso mascota)
|
||||
- Servicio estacional (solo ciertas epocas)
|
||||
- Promocion temporal
|
||||
- Precio especial por vet
|
||||
|
||||
## Flujos relacionados
|
||||
|
||||
- Turnero (muestra servicios disponibles)
|
||||
- Facturacion (usa precios)
|
||||
|
||||
## Notas tecnicas
|
||||
|
||||
- APIs:
|
||||
- `GET /productos/api/v1/services/` (servicios)
|
||||
- `POST /productos/api/v1/services/` (crear)
|
||||
- `PATCH /productos/api/v1/services/{id}/` (editar)
|
||||
- `GET /productos/api/v1/prices/` (precios)
|
||||
- `POST /productos/api/v1/prices/` (nuevo precio)
|
||||
- Modelo Price tiene fecha de vigencia
|
||||
- Precio se congela al momento de crear solicitud
|
||||
@@ -0,0 +1,82 @@
|
||||
# Proceso de Reembolso
|
||||
|
||||
## Tipo de usuario
|
||||
Administrador / Operaciones
|
||||
|
||||
## Donde empieza
|
||||
Backoffice -> Solicitud pagada -> "Procesar reembolso" o Seccion "Pagos"
|
||||
|
||||
## Que quiere hacer el usuario
|
||||
Procesar un reembolso para un turno que fue cancelado despues del pago
|
||||
|
||||
## Pasos - Identificar solicitud a reembolsar
|
||||
|
||||
1. Buscar la solicitud por:
|
||||
- ID de solicitud
|
||||
- Nombre del dueno
|
||||
- Numero de operacion de Mercado Pago
|
||||
2. Verificar que esta en estado "Pagado"
|
||||
3. Verificar que el pago fue exitoso
|
||||
|
||||
## Pasos - Procesar reembolso
|
||||
|
||||
1. Abrir detalle de la solicitud
|
||||
2. Click en "Procesar reembolso"
|
||||
3. Ver informacion del pago:
|
||||
- Monto pagado
|
||||
- Fecha de pago
|
||||
- Metodo de pago
|
||||
- ID de operacion MP
|
||||
4. Seleccionar tipo de reembolso:
|
||||
- Total
|
||||
- Parcial (ingresar monto)
|
||||
5. Ingresar motivo del reembolso
|
||||
6. Confirmar
|
||||
7. Sistema procesa reembolso en Mercado Pago
|
||||
8. Actualizar estado de la solicitud
|
||||
|
||||
## Pasos - Verificar reembolso
|
||||
|
||||
1. Ir a seccion "Pagos" o historial de la solicitud
|
||||
2. Verificar que el reembolso fue procesado
|
||||
3. Ver estado del reembolso en Mercado Pago
|
||||
|
||||
## Que deberia pasar
|
||||
|
||||
- Reembolso procesado en Mercado Pago
|
||||
- Dueno recibe el dinero (segun tiempos de MP)
|
||||
- Solicitud actualiza estado
|
||||
- Registro en el historial
|
||||
- Dueno notificado por email
|
||||
|
||||
## Problemas comunes
|
||||
|
||||
- Reembolso parcial no soportado por el metodo de pago
|
||||
- Plazo de reembolso vencido (politica de MP)
|
||||
- Dueno reclama que no recibio el dinero
|
||||
- Reembolso duplicado por error
|
||||
- Pago original en disputa
|
||||
|
||||
## Casos especiales
|
||||
|
||||
- Reembolso por mala atencion
|
||||
- Reembolso parcial (solo algunos servicios)
|
||||
- Visita incompleta (reembolso proporcional)
|
||||
- Dueno quiere credito en vez de reembolso
|
||||
- Reembolso fuera de plazo (solucion alternativa)
|
||||
|
||||
## Flujos relacionados
|
||||
|
||||
- Gestion de solicitudes
|
||||
- Cancelacion de turno
|
||||
- Atencion al cliente
|
||||
|
||||
## Notas tecnicas
|
||||
|
||||
- API Mercado Pago: `POST /v1/payments/{id}/refunds`
|
||||
- Tiempos de acreditacion:
|
||||
- Tarjeta credito: 1-2 estados de cuenta
|
||||
- Tarjeta debito: 5-10 dias habiles
|
||||
- Dinero en cuenta MP: inmediato
|
||||
- Plazo maximo para reembolso: 180 dias desde el pago
|
||||
- Se debe guardar log de todos los reembolsos
|
||||
@@ -0,0 +1,99 @@
|
||||
# Reportes y Dashboard
|
||||
|
||||
## Tipo de usuario
|
||||
Administrador / Gerencia
|
||||
|
||||
## Donde empieza
|
||||
Backoffice `/admin/` -> Dashboard o Seccion "Reportes"
|
||||
|
||||
## Que quiere hacer el usuario
|
||||
Ver metricas del negocio, generar reportes y analizar datos
|
||||
|
||||
## Pasos - Ver dashboard
|
||||
|
||||
1. Acceder al backoffice
|
||||
2. Ver dashboard principal con:
|
||||
- Solicitudes del dia/semana/mes
|
||||
- Ingresos del periodo
|
||||
- Visitas completadas
|
||||
- Conversion (solicitudes -> pagos)
|
||||
- Vets activos
|
||||
|
||||
## Pasos - Generar reporte de solicitudes
|
||||
|
||||
1. Ir a "Reportes" -> "Solicitudes"
|
||||
2. Seleccionar rango de fechas
|
||||
3. Filtrar por:
|
||||
- Estado
|
||||
- Zona
|
||||
- Veterinario
|
||||
- Tipo de servicio
|
||||
4. Click "Generar"
|
||||
5. Ver tabla con resultados
|
||||
6. Opcion de exportar (CSV/Excel)
|
||||
|
||||
## Pasos - Generar reporte de ingresos
|
||||
|
||||
1. Ir a "Reportes" -> "Ingresos"
|
||||
2. Seleccionar periodo
|
||||
3. Agrupar por:
|
||||
- Dia/Semana/Mes
|
||||
- Veterinario
|
||||
- Servicio
|
||||
- Zona
|
||||
4. Ver grafico y tabla
|
||||
5. Exportar si es necesario
|
||||
|
||||
## Pasos - Reporte de veterinarios
|
||||
|
||||
1. Ir a "Reportes" -> "Veterinarios"
|
||||
2. Ver para cada vet:
|
||||
- Visitas completadas
|
||||
- Calificacion promedio
|
||||
- Ingresos generados
|
||||
- Tasa de cancelacion
|
||||
3. Filtrar por periodo
|
||||
4. Ordenar por metrica
|
||||
|
||||
## Pasos - Exportar datos
|
||||
|
||||
1. En cualquier reporte, click "Exportar"
|
||||
2. Seleccionar formato (CSV, Excel)
|
||||
3. Descargar archivo
|
||||
4. Usar para analisis externo o contabilidad
|
||||
|
||||
## Que deberia pasar
|
||||
|
||||
- Vision clara del estado del negocio
|
||||
- Datos para toma de decisiones
|
||||
- Reportes exportables para contabilidad
|
||||
- Identificacion de tendencias
|
||||
|
||||
## Problemas comunes
|
||||
|
||||
- Datos no actualizados en tiempo real
|
||||
- Filtros que no devuelven lo esperado
|
||||
- Discrepancia entre reportes y realidad
|
||||
- Exportacion con formato incorrecto
|
||||
|
||||
## Casos especiales
|
||||
|
||||
- Reporte de prueba vs produccion
|
||||
- Datos historicos antes de implementar filtro
|
||||
- Comparativa año vs año
|
||||
- Reporte personalizado para inversores
|
||||
|
||||
## Flujos relacionados
|
||||
|
||||
- Gestion de solicitudes (fuente de datos)
|
||||
- Facturacion AFIP
|
||||
- Google Sheets sync
|
||||
|
||||
## Notas tecnicas
|
||||
|
||||
- API:
|
||||
- `GET /mascotas/api/v1/stats-summary` (metricas principales)
|
||||
- `GET /solicitudes/api/v1/service-requests/?date_from=X&date_to=Y` (datos crudos)
|
||||
- Google Sheets: sincronizacion automatica via Celery
|
||||
- Dashboard actualiza cada 5 minutos
|
||||
- Reportes pesados: generar async y notificar cuando estan listos
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -0,0 +1,77 @@
|
||||
# Aceptar/Rechazar Solicitud de Servicio
|
||||
|
||||
## Tipo de usuario
|
||||
Veterinario
|
||||
|
||||
## Donde empieza
|
||||
Dashboard veterinario `/vet/` -> Seccion "Solicitudes pendientes"
|
||||
|
||||
## Que quiere hacer el usuario
|
||||
Revisar las solicitudes de servicio en su zona y decidir si las acepta o rechaza
|
||||
|
||||
## Pasos - Aceptar solicitud
|
||||
|
||||
1. Ingresar al dashboard veterinario
|
||||
2. Ver listado de solicitudes pendientes en su zona de cobertura
|
||||
3. Click en una solicitud para ver detalle:
|
||||
- Datos del dueno (nombre, telefono, direccion)
|
||||
- Datos de la mascota (nombre, tipo, edad, historial previo)
|
||||
- Servicios solicitados
|
||||
- Fechas preferidas por el dueno
|
||||
4. Verificar disponibilidad en esas fechas
|
||||
5. Click en "Aceptar"
|
||||
6. Seleccionar fecha y hora disponible
|
||||
7. Confirmar aceptacion
|
||||
|
||||
## Pasos - Rechazar solicitud
|
||||
|
||||
1. Ver detalle de la solicitud
|
||||
2. Click en "Rechazar"
|
||||
3. Opcionalmente seleccionar motivo:
|
||||
- No tengo disponibilidad
|
||||
- Fuera de mi zona
|
||||
- No realizo este servicio
|
||||
- Otro
|
||||
4. Confirmar rechazo
|
||||
|
||||
## Que deberia pasar
|
||||
|
||||
Al aceptar:
|
||||
- Solicitud pasa a estado "Coordinado"
|
||||
- Vet queda asignado a la solicitud
|
||||
- Dueno recibe notificacion con fecha/hora y datos del vet
|
||||
- Aparece en el calendario del vet
|
||||
|
||||
Al rechazar:
|
||||
- Solicitud sigue disponible para otros vets
|
||||
- Si la rechazo yo, ya no la veo en mi lista
|
||||
|
||||
## Problemas comunes
|
||||
|
||||
- Multiples vets aceptan la misma solicitud casi simultaneamente
|
||||
- El vet acepta pero el dueno no puede en esa fecha
|
||||
- No hay suficientes vets en la zona y la solicitud queda sin atender
|
||||
- Vet acepta por error y quiere deshacer
|
||||
- Las fechas preferidas ya pasaron
|
||||
|
||||
## Casos especiales
|
||||
|
||||
- Solicitud con mascota que el vet ya atendio antes: mostrar historial
|
||||
- Solicitud urgente/emergencia: destacar visualmente
|
||||
- Vet con agenda completa: no deberia poder aceptar
|
||||
- Solicitud con multiples mascotas: revisar tiempo necesario
|
||||
- Zona limite: solicitud que aparece para vets de zonas adyacentes
|
||||
|
||||
## Flujos relacionados
|
||||
|
||||
- Ver mi agenda (despues de aceptar)
|
||||
- Realizar visita
|
||||
- Cancelar visita aceptada
|
||||
|
||||
## Notas tecnicas
|
||||
|
||||
- APIs:
|
||||
- `GET /solicitudes/api/v1/service-requests/?state=pending&veterinarian_area=X`
|
||||
- `PATCH /solicitudes/api/v1/service-requests/{id}/` (aceptar/rechazar)
|
||||
- Race condition: backend debe manejar caso de aceptacion simultanea
|
||||
- Push notification al dueno cuando se acepta
|
||||
@@ -0,0 +1,87 @@
|
||||
# Gestion de Agenda
|
||||
|
||||
## Tipo de usuario
|
||||
Veterinario
|
||||
|
||||
## Donde empieza
|
||||
Dashboard veterinario `/vet/` -> Menu "Mi agenda" o `/vet/turnos`
|
||||
|
||||
## Que quiere hacer el usuario
|
||||
Ver su calendario de visitas, gestionar disponibilidad y marcar dias no disponibles
|
||||
|
||||
## Pasos - Ver agenda
|
||||
|
||||
1. Ir a "Mi agenda"
|
||||
2. Ver calendario con:
|
||||
- Visitas confirmadas (con detalle al hacer click)
|
||||
- Dias/horarios bloqueados
|
||||
- Disponibilidad por franja horaria
|
||||
3. Navegar entre semanas/meses
|
||||
4. Filtrar por estado (pendientes, confirmadas, completadas)
|
||||
|
||||
## Pasos - Configurar disponibilidad semanal
|
||||
|
||||
1. Ir a "Configuracion" -> "Mi disponibilidad"
|
||||
2. Para cada dia de la semana:
|
||||
- Marcar si trabajo ese dia
|
||||
- Definir franja horaria (ej: 9:00-18:00)
|
||||
- Definir pausa (ej: 13:00-14:00)
|
||||
3. Guardar configuracion
|
||||
|
||||
## Pasos - Bloquear dias especificos
|
||||
|
||||
1. En el calendario, click en un dia
|
||||
2. Seleccionar "Marcar como no disponible"
|
||||
3. Opcionalmente agregar motivo (vacaciones, curso, etc.)
|
||||
4. Confirmar
|
||||
5. Ese dia no aparece como opcion para nuevas solicitudes
|
||||
|
||||
## Pasos - Ver detalle de visita
|
||||
|
||||
1. Click en una visita en el calendario
|
||||
2. Ver informacion completa:
|
||||
- Dueno: nombre, telefono, direccion
|
||||
- Mascota: nombre, tipo, edad, foto
|
||||
- Servicios a realizar
|
||||
- Historial previo de esa mascota
|
||||
- Estado de pago
|
||||
- Notas especiales
|
||||
|
||||
## Que deberia pasar
|
||||
|
||||
- Calendario siempre actualizado con visitas
|
||||
- No puedo recibir solicitudes en dias bloqueados
|
||||
- Cambios de disponibilidad afectan solo solicitudes futuras
|
||||
- Puedo ver toda la informacion necesaria para la visita
|
||||
|
||||
## Problemas comunes
|
||||
|
||||
- Vet olvida desbloquear dia despues de terminar vacaciones
|
||||
- Visitas muy seguidas en zonas distantes (logistica)
|
||||
- Vet quiere mover visita a otro horario
|
||||
- Visita cancelada a ultimo momento
|
||||
- Vet no marco indisponibilidad y le llegan solicitudes que no puede atender
|
||||
|
||||
## Casos especiales
|
||||
|
||||
- Visita reprogramada: mostrar historial de cambios
|
||||
- Visita cancelada por el dueno: liberar espacio en agenda
|
||||
- Emergencia: poder agregar visita fuera de horario normal
|
||||
- Feriados: bloquear automaticamente?
|
||||
- Multiples visitas mismo dia/zona: optimizar ruta?
|
||||
|
||||
## Flujos relacionados
|
||||
|
||||
- Aceptar solicitud (agrega a la agenda)
|
||||
- Realizar visita (inicia desde la agenda)
|
||||
- Gestionar zonas de cobertura
|
||||
|
||||
## Notas tecnicas
|
||||
|
||||
- APIs:
|
||||
- `GET /mascotas/api/v1/vet-visits/?veterinarian=X`
|
||||
- `GET /mascotas/api/v1/vet_availabilities/`
|
||||
- `PUT /mascotas/api/v1/vet_availabilities/{id}/`
|
||||
- `POST /mascotas/api/v1/vet_unavailabilities/` (dias bloqueados)
|
||||
- Vista calendario: usar libreria tipo FullCalendar
|
||||
- Colores por estado: pendiente (amarillo), pagado (verde), completado (azul)
|
||||
@@ -0,0 +1,97 @@
|
||||
# Realizar Visita y Crear Informe
|
||||
|
||||
## Tipo de usuario
|
||||
Veterinario
|
||||
|
||||
## Donde empieza
|
||||
Agenda del dia -> Visita programada -> "Iniciar visita" o `/vet/visita/{id}`
|
||||
|
||||
## Que quiere hacer el usuario
|
||||
Registrar la visita medica, crear el informe clinico y completar el flujo
|
||||
|
||||
## Pasos - Antes de la visita
|
||||
|
||||
1. Ver agenda del dia
|
||||
2. Click en la visita programada
|
||||
3. Ver datos del dueno (direccion, telefono) para llegar
|
||||
4. Ver datos de la mascota e historial
|
||||
5. Preparar insumos segun servicios solicitados
|
||||
|
||||
## Pasos - Iniciar visita
|
||||
|
||||
1. Al llegar al domicilio, click "Iniciar visita"
|
||||
2. Estado cambia a "En progreso"
|
||||
3. Se registra hora de inicio
|
||||
|
||||
## Pasos - Crear informe medico
|
||||
|
||||
1. Durante o despues de la atencion, ir a "Crear informe"
|
||||
2. Completar examen fisico:
|
||||
- Peso actual
|
||||
- Temperatura
|
||||
- Frecuencia cardiaca
|
||||
- Frecuencia respiratoria
|
||||
- Estado general (mucosas, hidratacion, etc.)
|
||||
3. Registrar hallazgos clinicos
|
||||
4. Escribir diagnostico
|
||||
5. Indicar tratamiento:
|
||||
- Descripcion del tratamiento
|
||||
- Medicamentos recetados (nombre, dosis, frecuencia, duracion)
|
||||
- Indicaciones especiales
|
||||
6. Solicitar estudios si es necesario:
|
||||
- Tipo de estudio
|
||||
- Laboratorio sugerido
|
||||
7. Programar seguimiento:
|
||||
- Fecha sugerida de control
|
||||
- Motivo del seguimiento
|
||||
8. Agregar observaciones adicionales
|
||||
9. Guardar informe
|
||||
|
||||
## Pasos - Completar visita
|
||||
|
||||
1. Verificar que el informe este guardado
|
||||
2. Click en "Completar visita"
|
||||
3. Confirmar finalizacion
|
||||
4. Se genera factura automaticamente (AFIP)
|
||||
5. Dueno recibe notificacion con acceso al informe
|
||||
|
||||
## Que deberia pasar
|
||||
|
||||
- Informe queda guardado y asociado a la mascota
|
||||
- Dueno puede ver el informe desde su cuenta
|
||||
- Se genera factura electronica
|
||||
- Visita se marca como "Completada"
|
||||
- Vet puede ver la visita en su historial
|
||||
|
||||
## Problemas comunes
|
||||
|
||||
- Vet olvida completar el informe y cierra la visita
|
||||
- Mala conexion a internet durante la visita
|
||||
- Informe muy largo y se pierde por timeout
|
||||
- Dueno no esta en el domicilio
|
||||
- Mascota agresiva, no se puede atender
|
||||
- Necesita derivar a clinica
|
||||
|
||||
## Casos especiales
|
||||
|
||||
- Visita cancelada in situ: registrar motivo, posible cargo
|
||||
- Emergencia durante visita rutinaria: agregar servicios
|
||||
- Multiples mascotas en la visita: un informe por cada una
|
||||
- Vet necesita segundo opinion: derivar a especialista
|
||||
- Fallecimiento durante la visita: protocolo especial
|
||||
|
||||
## Flujos relacionados
|
||||
|
||||
- Ver historial de paciente (antes de atender)
|
||||
- Cobro de la visita (Mercado Pago del vet)
|
||||
- Seguimiento post-visita
|
||||
|
||||
## Notas tecnicas
|
||||
|
||||
- APIs:
|
||||
- `PATCH /mascotas/api/v1/vet-visits/{id}/` (cambiar estado)
|
||||
- `POST /mascotas/api/v1/vetvisitreport/` (crear informe)
|
||||
- `GET /mascotas/api/v1/vet-visits/?pet=X` (historial previo)
|
||||
- Integracion AFIP via django_afip
|
||||
- Guardado automatico del informe cada 30 segundos
|
||||
- Modo offline: guardar localmente y sincronizar despues
|
||||
@@ -0,0 +1,66 @@
|
||||
# Gestionar Zonas de Cobertura
|
||||
|
||||
## Tipo de usuario
|
||||
Veterinario
|
||||
|
||||
## Donde empieza
|
||||
Dashboard veterinario -> Menu "Mi cobertura" o Perfil -> "Zonas de atencion"
|
||||
|
||||
## Que quiere hacer el usuario
|
||||
Definir en que barrios/zonas esta dispuesto a atender visitas a domicilio
|
||||
|
||||
## Pasos - Ver zonas actuales
|
||||
|
||||
1. Ir a "Mi cobertura"
|
||||
2. Ver mapa con zonas actualmente cubiertas
|
||||
3. Ver listado de barrios seleccionados
|
||||
|
||||
## Pasos - Agregar zona
|
||||
|
||||
1. En el mapa o listado, buscar el barrio
|
||||
2. Click en el barrio para seleccionarlo
|
||||
3. El barrio se agrega a mi cobertura
|
||||
4. Guardar cambios
|
||||
|
||||
## Pasos - Quitar zona
|
||||
|
||||
1. En mi listado de zonas
|
||||
2. Click en "X" o deseleccionar el barrio
|
||||
3. Confirmar eliminacion
|
||||
4. Guardar cambios
|
||||
|
||||
## Que deberia pasar
|
||||
|
||||
- Solo recibo solicitudes de las zonas que seleccione
|
||||
- Si agrego zona, empiezo a ver solicitudes pendientes de esa zona
|
||||
- Si quito zona, dejo de ver nuevas solicitudes de esa zona
|
||||
- Visitas ya aceptadas no se afectan
|
||||
|
||||
## Problemas comunes
|
||||
|
||||
- Vet quiere zona muy especifica (solo algunas calles)
|
||||
- Zonas con poca demanda, vet no recibe solicitudes
|
||||
- Zonas con mucha demanda, vet saturado
|
||||
- Limites de zona confusos (calle pertenece a 2 barrios)
|
||||
- Vet quiere cobertura condicional (solo ciertos dias)
|
||||
|
||||
## Casos especiales
|
||||
|
||||
- Zona nueva no listada: solicitar a ops que la agregue
|
||||
- Cobertura temporal (ej: cubriendo a otro vet)
|
||||
- Cobertura por horario (mañana en zona A, tarde en zona B)
|
||||
- Vet se muda: actualizar todas las zonas
|
||||
|
||||
## Flujos relacionados
|
||||
|
||||
- Aceptar solicitud (solo veo solicitudes de mis zonas)
|
||||
- Ver agenda (optimizar ruta por zonas)
|
||||
|
||||
## Notas tecnicas
|
||||
|
||||
- APIs:
|
||||
- `GET /common/api/v1/neighborhoods/` (lista de barrios)
|
||||
- `GET /mascotas/api/v1/veterinarians/{id}/` (zonas actuales)
|
||||
- `PATCH /mascotas/api/v1/veterinarians/{id}/` (actualizar zonas)
|
||||
- Modelo: Veterinarian tiene M2M con Neighborhood
|
||||
- Coeficiente de distancia por barrio para calcular viabilidad
|
||||
@@ -0,0 +1,81 @@
|
||||
# Ver Historial de Pacientes
|
||||
|
||||
## Tipo de usuario
|
||||
Veterinario
|
||||
|
||||
## Donde empieza
|
||||
Dashboard veterinario -> "Historia clinica" o `/vet/historia-clinica`
|
||||
|
||||
## Que quiere hacer el usuario
|
||||
Buscar y revisar el historial medico de pacientes que ha atendido
|
||||
|
||||
## Pasos - Buscar paciente
|
||||
|
||||
1. Ir a "Historia clinica"
|
||||
2. Usar el buscador:
|
||||
- Por nombre del dueno
|
||||
- Por nombre de la mascota
|
||||
- Por telefono
|
||||
- Por email
|
||||
3. Ver resultados de busqueda
|
||||
4. Click en el paciente deseado
|
||||
|
||||
## Pasos - Ver historial de mascota
|
||||
|
||||
1. Seleccionar la mascota
|
||||
2. Ver ficha de la mascota:
|
||||
- Datos basicos (nombre, tipo, raza, edad)
|
||||
- Foto
|
||||
- Peso historico
|
||||
- Estado de vacunacion
|
||||
3. Ver listado de visitas (todas, no solo las mias)
|
||||
4. Click en una visita para ver el informe completo
|
||||
|
||||
## Pasos - Revisar informe anterior
|
||||
|
||||
1. En el listado de visitas, click en una
|
||||
2. Ver informe completo:
|
||||
- Fecha y veterinario que atendio
|
||||
- Examen fisico
|
||||
- Diagnostico
|
||||
- Tratamiento
|
||||
- Medicamentos indicados
|
||||
- Estudios solicitados
|
||||
- Seguimiento
|
||||
|
||||
## Que deberia pasar
|
||||
|
||||
- Puedo ver historial completo de pacientes que atendi
|
||||
- Puedo ver informes de otros vets (para continuidad de atencion)
|
||||
- Tengo contexto para tomar decisiones clinicas
|
||||
|
||||
## Problemas comunes
|
||||
|
||||
- Busqueda no encuentra al paciente (nombre mal escrito)
|
||||
- Mascota atendida por otro vet, no tengo acceso?
|
||||
- Historial muy extenso, dificil encontrar info relevante
|
||||
- Informes anteriores incompletos o ilegibles
|
||||
- Duplicados de pacientes (mismo dueno registrado 2 veces)
|
||||
|
||||
## Casos especiales
|
||||
|
||||
- Mascota nueva sin historial
|
||||
- Mascota atendida en otra clinica (historial externo)
|
||||
- Dueno tiene multiples mascotas
|
||||
- Mascota transferida a otro dueno
|
||||
- Paciente de urgencia/emergencia sin cita previa
|
||||
|
||||
## Flujos relacionados
|
||||
|
||||
- Realizar visita (consultar historial antes/durante)
|
||||
- Aceptar solicitud (ver si ya lo atendi antes)
|
||||
|
||||
## Notas tecnicas
|
||||
|
||||
- APIs:
|
||||
- `GET /mascotas/api/v1/pet-owners/?search=X`
|
||||
- `GET /mascotas/api/v1/pets/?pet_owner=X`
|
||||
- `GET /mascotas/api/v1/vet-visits/?pet=X`
|
||||
- `GET /mascotas/api/v1/vetvisitreport/?vet_visit=X`
|
||||
- Permisos: vet puede ver historial de cualquier paciente que haya atendido
|
||||
- Busqueda: usar indice de texto completo para rendimiento
|
||||
Reference in New Issue
Block a user