clinica-dental/docs/01-epicas/DENTAL-004-protesis.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

228 lines
6.2 KiB
Markdown

# DENTAL-004: Protesis Dentales
## Metadata
- **Codigo:** DENTAL-004
- **Modulo:** Protesis
- **Prioridad:** P1
- **Estado:** DDL Completado
- **Fase:** 3 - Especialidades
## Descripcion
Sistema de gestion de trabajos protesicos: coronas, puentes, dentaduras, implantes. Incluye ordenes de trabajo a laboratorio, seguimiento de estatus, materiales, colores, y garantias.
## Objetivos
1. Registro de trabajos protesicos
2. Ordenes a laboratorio dental
3. Seguimiento de estatus
4. Control de materiales y colores
5. Gestion de garantias
## Alcance
### Incluido
- Tipos: corona, puente, parcial removible, total, implante
- Piezas involucradas en el trabajo
- Integracion con laboratorios externos
- Fechas: impresion, envio lab, recepcion, colocacion
- Material y color (guia VITA)
- Garantias configurables
- Costo laboratorio vs precio paciente
### Excluido
- Diseno CAD/CAM propio
- Impresion 3D in-house
- Inventario de protesis prefabricadas
## Tipos de Protesis
| Tipo | Descripcion | Piezas |
|------|-------------|--------|
| corona | Corona unitaria | 1 |
| puente | Puente fijo | 3+ |
| parcial | Dentadura parcial removible | Variable |
| total | Dentadura completa | 14/16 |
| implante | Implante con corona | 1 |
## Modelo de Datos
### Tabla: dental.protesis
| Campo | Tipo | Descripcion |
|-------|------|-------------|
| id | UUID | PK |
| tenant_id | UUID | FK tenants |
| patient_id | UUID | FK patients |
| odontologo_id | UUID | FK doctors |
| tipo | VARCHAR(50) | corona, puente, etc. |
| piezas_involucradas | TEXT[] | ['11', '12', '13'] |
| laboratorio_id | UUID | FK proveedores |
| fecha_envio_lab | DATE | Envio de impresion |
| fecha_recepcion_lab | DATE | Recepcion del trabajo |
| material | VARCHAR(100) | Zirconia, metal-porcelana |
| color | VARCHAR(50) | A2, B1, etc. |
| estado | ENUM | en_proceso, completado |
| fecha_colocacion | DATE | Fecha de cementado |
| tiene_garantia | BOOLEAN | |
| meses_garantia | INTEGER | 12, 24, etc. |
| costo_laboratorio | NUMERIC | Costo del lab |
| precio_paciente | NUMERIC | Precio cobrado |
## Estados del Trabajo
```
impresion ──► laboratorio ──► prueba ──► ajuste ──► cementado ──► entregado
└──► devolucion (si hay problemas)
```
| Estado | Descripcion |
|--------|-------------|
| impresion | Toma de impresion/escaneo |
| laboratorio | Enviado al laboratorio |
| prueba | Prueba en boca |
| ajuste | Requiere ajustes |
| cementado | Cementado definitivo |
| entregado | Finalizado |
## Endpoints API
| Metodo | Endpoint | Descripcion |
|--------|----------|-------------|
| GET | /protesis | Listar trabajos |
| GET | /protesis/:id | Detalle de trabajo |
| POST | /protesis | Crear trabajo |
| PUT | /protesis/:id | Actualizar trabajo |
| PUT | /protesis/:id/estado | Cambiar estado |
| GET | /patients/:id/protesis | Trabajos del paciente |
| GET | /protesis/laboratorio | Pendientes en lab |
| GET | /protesis/garantias | Garantias activas |
| POST | /protesis/:id/garantia | Reclamacion garantia |
## Interfaz del Servicio
```typescript
interface ProtesisService {
getAll(filters?: ProtesisFilters): Promise<TrabajoProtesico[]>;
getById(id: string): Promise<TrabajoProtesico>;
create(data: CreateProtesis): Promise<TrabajoProtesico>;
updateEstado(id: string, estado: EstadoProtesis): Promise<TrabajoProtesico>;
getPendientesLab(): Promise<TrabajoProtesico[]>;
getGarantiasActivas(): Promise<TrabajoProtesico[]>;
reclamarGarantia(id: string, motivo: string): Promise<TrabajoProtesico>;
}
interface CreateProtesis {
patientId: string;
odontologoId: string;
tipo: TipoProtesis;
piezasInvolucradas: string[];
laboratorioId?: string;
material: string;
color: string;
tieneGarantia: boolean;
mesesGarantia?: number;
costoLaboratorio: number;
precioPaciente: number;
}
```
## Flujos
### Crear Trabajo Protesico
```
1. Paciente requiere corona/puente
2. Preparacion dental (tallado)
3. Toma de impresion o escaneo digital
4. Seleccion de material y color
5. Crear registro en sistema (estado: impresion)
6. Generar orden de laboratorio
7. Enviar al laboratorio (estado: laboratorio)
```
### Recepcion y Colocacion
```
1. Laboratorio entrega trabajo
2. Registrar recepcion (estado: prueba)
3. Prueba en boca del paciente
4. Si ajustes necesarios: devolver a lab
5. Si ok: cementar (estado: cementado)
6. Dar indicaciones al paciente
7. Marcar como entregado
8. Registrar garantia
```
### Reclamacion de Garantia
```
1. Paciente reporta problema
2. Verificar periodo de garantia
3. Evaluar tipo de falla
4. Si aplica garantia:
- Crear nuevo trabajo sin costo
- Enviar a laboratorio para refaccion
5. Si no aplica: presupuesto normal
```
## Guia de Colores VITA
| Codigo | Nombre | Descripcion |
|--------|--------|-------------|
| A1 | Muy claro | Blanquecino |
| A2 | Claro | Ligeramente amarillo |
| A3 | Medio | Amarillo medio |
| A3.5 | Medio-oscuro | Amarillo intenso |
| A4 | Oscuro | Amarillo oscuro |
| B1 | Claro | Ligeramente naranja |
| B2 | Medio | Naranja claro |
| C1, C2 | Gris | Tonos grisaceos |
| D2, D3 | Rojizo | Tonos rojizos |
## Materiales Comunes
| Material | Uso | Durabilidad |
|----------|-----|-------------|
| Metal-porcelana | Posterior | Alta |
| Zirconia | Anterior/Posterior | Muy alta |
| Disilicato litio | Anterior | Alta |
| Resina | Provisional | Baja |
| Acrilico | Dentaduras | Media |
## Entregables
| Entregable | Estado | Archivo |
|------------|--------|---------|
| DDL protesis | Completado | `database/schemas/01-dental-schema-ddl.sql` |
| protesis.module.ts | Pendiente | `backend/modules/protesis/` |
| protesis.service.ts | Pendiente | `backend/services/` |
| OrdenLaboratorio.tsx | Pendiente | `frontend/components/` |
| ProtesisTracker.tsx | Pendiente | `frontend/components/` |
## Dependencias
### Depende de
- clinica.patients (erp-clinicas)
- DENTAL-001 (Odontograma - piezas)
- Catalogo proveedores (laboratorios)
### Bloquea a
- Reportes de protesis
- Integracion con laboratorios digitales
## Criterios de Aceptacion
- [ ] CRUD de trabajos protesicos
- [ ] Estados se actualizan correctamente
- [ ] Piezas involucradas se registran
- [ ] Orden a laboratorio se genera
- [ ] Color y material se guardan
- [ ] Garantias se controlan
- [ ] Costos lab vs paciente
---
**Ultima actualizacion:** 2026-01-07