clinica-dental/docs/01-epicas/DENTAL-003-ortodoncia.md
rckrdmrd 0cb74ec2c1 [SPRINT-6] docs: Agregar documentacion y reportes
- Epicas documentadas
- Reporte de ejecucion Sprint 6

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-10 08:53:42 -06:00

250 lines
6.1 KiB
Markdown

# DENTAL-003: Ortodoncia
## Metadata
- **Codigo:** DENTAL-003
- **Modulo:** Ortodoncia
- **Prioridad:** P1
- **Estado:** DDL Completado
- **Fase:** 3 - Especialidades
## Descripcion
Sistema de gestion de tratamientos de ortodoncia: registro de casos, tipos de aparatologia, seguimiento de citas de ajuste, control de progreso, planes de pago, y finalizacion con retenedores.
## Objetivos
1. Registro de casos de ortodoncia
2. Tipos de aparatologia (brackets, alineadores)
3. Citas de ajuste mensuales
4. Seguimiento de progreso
5. Plan de pagos (enganche + mensualidades)
## Alcance
### Incluido
- Tipos: brackets metalicos, esteticos, linguales, alineadores
- Registro de fecha inicio/fin estimada
- Citas de control con detalles de ajuste
- Fotos de progreso (vinculo a storage)
- Control de arcos, ligas, elasticos
- Plan de pago con financiamiento
### Excluido
- Cefalometria digital
- Simulacion de resultados
- Analisis de modelos 3D
## Tipos de Ortodoncia
| Tipo | Descripcion | Duracion Tipica |
|------|-------------|-----------------|
| brackets_metalicos | Brackets tradicionales | 18-24 meses |
| brackets_esteticos | Brackets ceramicos/zafiro | 18-24 meses |
| brackets_linguales | Brackets en cara interna | 18-30 meses |
| alineadores | Alineadores transparentes | 12-18 meses |
| removible | Aparatos removibles | Variable |
| retenedor | Post-tratamiento | Indefinido |
## Modelo de Datos
### Tablas
**dental.ortodoncia**
- id, tenant_id, patient_id, odontologo_id
- tipo (ENUM), marca
- fecha_inicio, fecha_estimada_fin, fecha_real_fin
- estado, meses_estimados
- costo_total, enganche, mensualidad
- notas
**dental.ortodoncia_citas**
- id, tenant_id, ortodoncia_id
- appointment_id
- fecha, numero_cita
- procedimiento
- arco_superior, arco_inferior, ligas
- observaciones, proxima_cita
## Endpoints API
| Metodo | Endpoint | Descripcion |
|--------|----------|-------------|
| GET | /ortodoncia | Listar casos activos |
| GET | /ortodoncia/:id | Detalle de caso |
| POST | /ortodoncia | Crear caso |
| PUT | /ortodoncia/:id | Actualizar caso |
| PUT | /ortodoncia/:id/finalizar | Finalizar tratamiento |
| GET | /ortodoncia/:id/citas | Historial de citas |
| POST | /ortodoncia/:id/citas | Registrar cita |
| GET | /patients/:id/ortodoncia | Casos del paciente |
| GET | /ortodoncia/proximas-citas | Citas proximas |
## Interfaz del Servicio
```typescript
interface OrtodonticService {
getCasosActivos(): Promise<CasoOrtodoncia[]>;
getById(id: string): Promise<CasoOrtodoncia>;
create(data: CreateCasoOrtodoncia): Promise<CasoOrtodoncia>;
registrarCita(casoId: string, data: CitaOrtodoncia): Promise<CitaOrtodoncia>;
finalizar(id: string, data: FinalizarOrtodoncia): Promise<CasoOrtodoncia>;
getProximasCitas(dias: number): Promise<CitaOrtodoncia[]>;
}
interface CreateCasoOrtodoncia {
patientId: string;
odontologoId: string;
tipo: TipoOrtodoncia;
marca?: string;
fechaInicio: Date;
mesesEstimados: number;
costoTotal: number;
enganche?: number;
mensualidad?: number;
}
interface CitaOrtodoncia {
fecha: Date;
numeroCita: number;
procedimiento: string;
arcoSuperior?: string;
arcoInferior?: string;
ligas?: string;
observaciones?: string;
proximaCita?: Date;
}
```
## Flujos
### Iniciar Caso de Ortodoncia
```
1. Consulta de valoracion ortodontica
2. Estudios iniciales (Rx panoramica, fotos, modelos)
3. Diagnostico y plan de tratamiento
4. Presentar presupuesto al paciente
5. Paciente acepta y paga enganche
6. Crear caso de ortodoncia en sistema
7. Agendar cita de colocacion
8. Colocar aparatologia
9. Registrar primera cita
```
### Cita de Ajuste Mensual
```
1. Paciente llega a cita programada
2. Revision de aparatologia
3. Cambio de arcos/ligas si necesario
4. Registrar procedimiento realizado
5. Tomar fotos de progreso (opcional)
6. Agendar proxima cita
7. Cobrar mensualidad
```
### Finalizacion
```
1. Tratamiento activo completo
2. Retiro de aparatologia
3. Colocacion de retenedores
4. Marcar caso como "finalizado"
5. Crear nuevo caso tipo "retenedor"
6. Programar citas de revision (3, 6, 12 meses)
```
## Plan de Pagos
```typescript
interface PlanPagoOrtodoncia {
costoTotal: number; // $45,000
enganche: number; // $10,000
saldoPendiente: number; // $35,000
numeroPagos: number; // 18
montoPago: number; // $1,944.44
fechaInicio: Date;
pagosRealizados: number;
saldoActual: number;
}
```
## Componentes Frontend
### OrtodonciaTimeline
```typescript
// Visualizacion de progreso del tratamiento
interface OrtodonciaTimelineProps {
caso: CasoOrtodoncia;
citas: CitaOrtodoncia[];
}
// Muestra:
// - Linea de tiempo con citas
// - Progreso vs estimado
// - Proxima cita destacada
// - Fotos de progreso
```
### CitaOrtodonticaForm
```typescript
interface CitaOrtodonticaFormProps {
casoId: string;
numeroCita: number;
onSave: (data: CitaOrtodoncia) => void;
}
// Campos:
// - Procedimiento realizado
// - Arco superior/inferior
// - Ligas/elasticos
// - Observaciones
// - Fecha proxima cita
```
## Entregables
| Entregable | Estado | Archivo |
|------------|--------|---------|
| DDL ortodoncia | Completado | `database/schemas/01-dental-schema-ddl.sql` |
| ortodoncia.module.ts | Pendiente | `backend/modules/ortodoncia/` |
| ortodoncia.service.ts | Pendiente | `backend/services/` |
| OrtodonciaTimeline.tsx | Pendiente | `frontend/components/` |
| CitaOrtodonticaForm.tsx | Pendiente | `frontend/components/` |
## Dependencias
### Depende de
- clinica.patients (erp-clinicas)
- clinica.appointments (erp-clinicas)
- DENTAL-006 (Presupuestos - para plan de pago)
### Bloquea a
- Reportes de ortodoncia
- Recordatorios automaticos
## Criterios de Aceptacion
- [ ] CRUD de casos de ortodoncia
- [ ] Tipos de aparatologia correctos
- [ ] Citas de ajuste se registran
- [ ] Progreso visual en timeline
- [ ] Plan de pago funciona
- [ ] Finalizacion crea caso retenedor
- [ ] Proximas citas se listan
## Metricas
| Metrica | Descripcion |
|---------|-------------|
| Casos activos | Tratamientos en curso |
| Tasa finalizacion | % que completan tratamiento |
| Duracion promedio | Meses reales vs estimados |
| Desercion | Pacientes que abandonan |
---
**Ultima actualizacion:** 2026-01-07