# EPICA: EPIC-CL-005 - Recetas (Prescripciones)

## Metadata

| Campo | Valor |
|-------|-------|
| **ID** | EPIC-CL-005 |
| **Nombre** | Recetas (Prescripciones) |
| **Modulo** | recetas |
| **Fase** | Fase 1 - MVP |
| **Prioridad** | P0 (Critico) |
| **Estado** | Backlog |
| **Story Points** | 35 |
| **Sprint(s)** | Sprint 5-6 |

---

## Descripcion

Sistema de prescripción médica electrónica. Generación de recetas con búsqueda de medicamentos, dosificación, verificación de interacciones medicamentosas, firma electrónica (NOM-151) y envío digital al paciente o farmacia.

---

## Objetivo de Negocio

- Recetas legibles y sin errores
- Cumplimiento de NOM-151-SCFI-2016
- Agilizar proceso de prescripción
- Evitar errores de medicación
- Trazabilidad de prescripciones

---

## Historias de Usuario

| ID | Historia | Prioridad | SP | Estado |
|----|----------|-----------|-----|--------|
| US-CL005-001 | Como médico, quiero buscar medicamento por nombre genérico o comercial | P0 | 3 | Backlog |
| US-CL005-002 | Como médico, quiero agregar medicamento a receta con dosis y frecuencia | P0 | 5 | Backlog |
| US-CL005-003 | Como médico, quiero ver alertas de interacciones medicamentosas | P0 | 8 | Backlog |
| US-CL005-004 | Como médico, quiero ver alergias conocidas del paciente al prescribir | P0 | 3 | Backlog |
| US-CL005-005 | Como médico, quiero usar recetas previas como base para nueva receta | P1 | 3 | Backlog |
| US-CL005-006 | Como médico, quiero firmar electrónicamente la receta | P0 | 5 | Backlog |
| US-CL005-007 | Como paciente, quiero recibir mi receta por email/WhatsApp | P0 | 3 | Backlog |
| US-CL005-008 | Como médico, quiero indicar si requiere receta resurtible | P1 | 2 | Backlog |
| US-CL005-009 | Como admin, quiero configurar cuadro básico de medicamentos | P1 | 3 | Backlog |

**Total Story Points:** 35 SP

---

## Estructura de Receta

```
┌─────────────────────────────────────────────────────────┐
│              RECETA MÉDICA ELECTRÓNICA                  │
├─────────────────────────────────────────────────────────┤
│                                                         │
│  DATOS DEL PRESCRIPTOR                                  │
│  ├── Nombre del médico                                  │
│  ├── Cédula profesional                                 │
│  ├── Especialidad                                       │
│  ├── Institución/Consultorio                            │
│  └── Domicilio y teléfono                               │
│                                                         │
│  DATOS DEL PACIENTE                                     │
│  ├── Nombre completo                                    │
│  ├── Edad                                               │
│  └── Sexo                                               │
│                                                         │
│  PRESCRIPCIÓN                                           │
│  ├── Medicamento 1                                      │
│  │   ├── Nombre genérico / comercial                    │
│  │   ├── Forma farmacéutica                             │
│  │   ├── Concentración                                  │
│  │   ├── Cantidad                                       │
│  │   ├── Dosis                                          │
│  │   ├── Vía de administración                          │
│  │   ├── Frecuencia                                     │
│  │   └── Duración del tratamiento                       │
│  ├── Medicamento 2...                                   │
│  └── Indicaciones adicionales                           │
│                                                         │
│  DATOS DE CONTROL                                       │
│  ├── Folio único                                        │
│  ├── Fecha de expedición                                │
│  ├── Fecha de vigencia                                  │
│  ├── Firma electrónica del médico                       │
│  └── Código QR de verificación                          │
│                                                         │
└─────────────────────────────────────────────────────────┘
```

---

## Verificación de Interacciones

```
┌─────────────────────────────────────────────────────────┐
│              ALERTAS DE INTERACCIÓN                     │
├─────────────────────────────────────────────────────────┤
│                                                         │
│  ⚠️ INTERACCIÓN GRAVE                                   │
│  Warfarina + Aspirina                                   │
│  Riesgo: Sangrado aumentado                             │
│  Recomendación: Evitar combinación o monitorear INR     │
│                                                         │
│  ⚠️ INTERACCIÓN MODERADA                                │
│  Metformina + Alcohol                                   │
│  Riesgo: Acidosis láctica                               │
│  Recomendación: Advertir al paciente                    │
│                                                         │
│  ⚠️ ALERGIA CONOCIDA                                    │
│  Paciente alérgico a Penicilina                         │
│  Medicamento prescrito: Amoxicilina                     │
│  Acción: Requiere confirmación del médico               │
│                                                         │
└─────────────────────────────────────────────────────────┘
```

---

## Criterios de Aceptacion de la Epica

**Funcionales:**
- [ ] Búsqueda de medicamentos
- [ ] Agregar múltiples medicamentos a receta
- [ ] Alertas de interacciones
- [ ] Verificación de alergias
- [ ] Firma electrónica (e.firma o similar)
- [ ] Generación de PDF con código QR
- [ ] Envío digital al paciente
- [ ] Recetas resurtibles

**No Funcionales:**
- [ ] Búsqueda de medicamentos < 500ms
- [ ] Verificación de interacciones < 2 segundos
- [ ] Cumplimiento NOM-151-SCFI-2016

**Tecnicos:**
- [ ] Catálogo de medicamentos (PLM o similar)
- [ ] Base de datos de interacciones
- [ ] Firma electrónica avanzada
- [ ] Generación de PDF con QR

---

## Dependencias

**Esta epica depende de:**
| Epica/Modulo | Estado | Bloqueante |
|--------------|--------|------------|
| EPIC-CL-001 Fundamentos | Backlog | Si |
| EPIC-CL-002 Pacientes | Backlog | Si |
| EPIC-CL-004 Consultas | Backlog | Si |

**Esta epica bloquea:**
| Epica/Modulo | Razon |
|--------------|-------|
| EPIC-CL-007 Farmacia | Requiere recetas para surtir |

---

## Desglose Tecnico

**Database:**
- [ ] Schema: `prescriptions`
- [ ] Tablas: 6 (prescriptions, prescription_items, medications, interactions, patient_allergies, signature_logs)
- [ ] Funciones: 3 (check_interactions, validate_prescription, generate_folio)
- [ ] Indices: Por paciente, médico, fecha, medicamento

**Backend:**
- [ ] Modulo: `prescriptions`
- [ ] Entities: 5 (Prescription, PrescriptionItem, Medication, Interaction, PatientAllergy)
- [ ] Services: InteractionChecker, SignatureService
- [ ] Endpoints: 12
- [ ] Tests: 28

**Frontend:**
- [ ] Paginas: 4 (PrescriptionEditor, MedicationSearch, PrescriptionView, PrescriptionHistory)
- [ ] Componentes: 12 (MedicationLine, InteractionAlert, AllergyWarning, SignatureModal, etc.)
- [ ] Stores: 1 (prescriptionsStore)

---

## Endpoints API

| Metodo | Endpoint | Descripcion |
|--------|----------|-------------|
| POST | /api/prescriptions | Crear receta |
| GET | /api/prescriptions/:id | Detalle de receta |
| POST | /api/prescriptions/:id/items | Agregar medicamento |
| DELETE | /api/prescriptions/:id/items/:itemId | Quitar medicamento |
| POST | /api/prescriptions/:id/check-interactions | Verificar interacciones |
| POST | /api/prescriptions/:id/sign | Firmar receta |
| POST | /api/prescriptions/:id/send | Enviar al paciente |
| GET | /api/prescriptions/:id/pdf | Descargar PDF |
| GET | /api/medications/search | Buscar medicamentos |
| GET | /api/patients/:id/allergies | Alergias del paciente |

---

## Riesgos

| Riesgo | Probabilidad | Impacto | Mitigacion |
|--------|--------------|---------|------------|
| Interacciones no detectadas | Baja | Alto | Base de datos actualizada |
| Firma electrónica inválida | Baja | Alto | Proveedor certificado |
| Errores de dosificación | Media | Alto | Validaciones y rangos |

---

## Definition of Ready (DoR)

- [x] Historias de usuario definidas
- [x] Criterios de aceptacion claros
- [x] Dependencias identificadas
- [x] Estimacion completada
- [ ] Catálogo de medicamentos disponible
- [ ] Proveedor de firma electrónica seleccionado

## Definition of Done (DoD)

- [ ] Prescripción completa funcionando
- [ ] Alertas de interacciones operativas
- [ ] Firma electrónica válida
- [ ] Envío digital al paciente
- [ ] Tests de integración pasando
- [ ] Documentación de API

---

## Historial

| Fecha | Cambio | Autor |
|-------|--------|-------|
| 2025-12-08 | Creacion de epica | Claude-Agent |

---

**Creada por:** Claude-Agent
**Fecha:** 2025-12-08
**Ultima actualizacion:** 2025-12-08
