2.3 KiB
2.3 KiB
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
- Ingresar al dashboard veterinario
- Ver listado de solicitudes pendientes en su zona de cobertura
- 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
- Verificar disponibilidad en esas fechas
- Click en "Aceptar"
- Seleccionar fecha y hora disponible
- Confirmar aceptacion
Pasos - Rechazar solicitud
- Ver detalle de la solicitud
- Click en "Rechazar"
- Opcionalmente seleccionar motivo:
- No tengo disponibilidad
- Fuera de mi zona
- No realizo este servicio
- Otro
- 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=XPATCH /solicitudes/api/v1/service-requests/{id}/(aceptar/rechazar)
- Race condition: backend debe manejar caso de aceptacion simultanea
- Push notification al dueno cuando se acepta