erp-mecanicas-diesel/docs/02-definicion-modulos/MMD-003-diagnosticos/historias-usuario/US-MMD003-005-adjuntar-fotos.md

136 lines
2.9 KiB
Markdown

# US-MMD003-005: Adjuntar Fotos de Evidencia
## Metadata
| Campo | Valor |
|-------|-------|
| **ID** | US-MMD003-005 |
| **Epica** | EPIC-MMD-003 - Diagnosticos |
| **Modulo** | diagnosticos |
| **Prioridad** | P1 |
| **Story Points** | 5 |
| **Sprint** | Sprint 3 |
| **Estado** | Backlog |
---
## Historia de Usuario
**Como** mecanico,
**quiero** adjuntar fotos de partes danadas o hallazgos,
**para** documentar visualmente el estado del componente y justificar la reparacion.
## Descripcion Detallada
Las fotos son evidencia importante para mostrar al cliente el estado de las piezas, documentar el trabajo realizado, y respaldo en caso de garantias.
---
## Criterios de Aceptacion
**Escenario 1: Tomar foto desde celular**
```gherkin
DADO que estoy en el diagnostico
CUANDO hago clic en "Agregar foto"
ENTONCES puedo tomar foto con la camara del dispositivo
O seleccionar de galeria
```
**Escenario 2: Agregar descripcion a foto**
```gherkin
DADO que subo una foto
CUANDO agrego descripcion: "Tobera de inyector danada"
ENTONCES la foto se guarda con la descripcion
Y aparece en la galeria del diagnostico
```
**Escenario 3: Categorizar fotos**
```gherkin
DADO que subo varias fotos
CUANDO las categorizo:
| Foto | Categoria |
| foto1.jpg | Antes |
| foto2.jpg | Dano encontrado |
| foto3.jpg | Despues |
ENTONCES se agrupan por categoria
```
**Escenario 4: Compresion automatica**
```gherkin
DADO que subo foto de 8MB
CUANDO el sistema procesa
ENTONCES comprime a ~500KB
Y mantiene calidad suficiente
```
**Escenario 5: Ver galeria de fotos**
```gherkin
DADO que el diagnostico tiene 5 fotos
CUANDO veo la galeria
ENTONCES puedo:
- Ver miniaturas
- Ampliar cada foto
- Navegar entre fotos
- Descargar originales
```
---
## Categorias de Fotos
| Categoria | Uso |
|-----------|-----|
| Antes | Estado al recibir |
| Dano | Problemas encontrados |
| Proceso | Durante reparacion |
| Despues | Trabajo terminado |
| Otro | General |
---
## Tareas Tecnicas
**Database:**
- [ ] DB-069: Crear tabla `diagnostic_photos`
- [ ] DB-070: Campos: url, description, category, order
**Backend:**
- [ ] BE-136: Endpoint POST /api/diagnostics/:id/photos
- [ ] BE-137: Servicio de compresion de imagenes
- [ ] BE-138: Almacenamiento (S3 o local)
- [ ] BE-139: Generacion de thumbnails
**Frontend:**
- [ ] FE-137: Crear PhotoUpload component
- [ ] FE-138: Crear PhotoGallery component
- [ ] FE-139: Lightbox para ver ampliado
- [ ] FE-140: Captura desde camara
---
## Especificaciones Tecnicas
| Parametro | Valor |
|-----------|-------|
| Formatos | JPG, PNG |
| Tamanio max upload | 10MB |
| Tamanio comprimido | ~500KB |
| Thumbnail | 200x200px |
| Almacenamiento | S3 o disco local |
---
## Definition of Done (DoD)
- [ ] Subir fotos desde galeria
- [ ] Tomar foto con camara
- [ ] Descripcion y categoria
- [ ] Compresion automatica
- [ ] Galeria con lightbox
- [ ] Tests pasando
---
**Creada por:** Requirements-Analyst
**Fecha:** 2025-12-06