Saltar a contenido

Pantalla: Reportar Anomalia

Identificador: SCR-ADH-005 Modulo: MTS-ADH-001 - Motor de Adherencia Version: 1.0.0 Fecha: 2025-12-05 Autor: MobileUxUiDrone (Eight of Eight) Estado: Especificado FASE: 2 - Value


1. Informacion General

Atributo Valor
Nombre Reportar Anomalia
Proposito Formulario para reportar problemas con medicamentos
Tipo Modal / Full Screen Form
Acceso SCR-ADH-002 > "Reportar problema"
Prioridad Alta

2. Wireframe ASCII

2.1. Estado: Formulario Inicial

+------------------------------------------+
|  [X]    Reportar Problema                 |
+------------------------------------------+
|                                           |
|  ┌─────────────────────────────────────┐  |
|    [Cap] Omeprazol 20mg                 |  <- Medicamento contexto
|          1x dia - 07:00 AM              |
|  └─────────────────────────────────────┘  |
|                                           |
|  Que tipo de problema tienes?             |
|                                           |
|  ┌─────────────────────────────────────┐  |
|    ⚠️ Efecto secundario                 |
|       Reaccion adversa al medicamento   |
|  └─────────────────────────────────────┘  |
|                                           |
|  ┌─────────────────────────────────────┐  |
|    🔄 Olvido sistematico                |
|       Patrón repetido de omision        |
|  └─────────────────────────────────────┘  |
|                                           |
|  ┌─────────────────────────────────────┐  |
|    📦 Se me acabo                       |
|       Medicamento no disponible         |
|  └─────────────────────────────────────┘  |
|                                           |
|  ┌─────────────────────────────────────┐  |
|     Confusion                         |
|       Toma incorrecta (dosis/med)       |
|  └─────────────────────────────────────┘  |
|                                           |
|  ┌─────────────────────────────────────┐  |
|     Interaccion percibida             |
|       Malestar al combinar              |
|  └─────────────────────────────────────┘  |
|                                           |
|  ┌─────────────────────────────────────┐  |
|    📝 Otro                              |
|       Describe el problema              |
|  └─────────────────────────────────────┘  |
|                                           |
+------------------------------------------+

2.2. Estado: Detalle del Problema (Efecto Secundario)

+------------------------------------------+
|  [<]    Efecto Secundario                 |
+------------------------------------------+
|                                           |
|  ┌─────────────────────────────────────┐  |
|    [Cap] Omeprazol 20mg                 |
|  └─────────────────────────────────────┘  |
|                                           |
|  Describe el efecto secundario            |
|  ┌─────────────────────────────────────┐  |
|                                         |
|    Siento nauseas despues de tomar      |  <- Text Area
|    el medicamento, especialmente si     |
|    lo tomo sin alimentos...             |
|                                         |
|  └─────────────────────────────────────┘  |
|  0/500 caracteres                         |
|                                           |
|  Como de grave lo consideras?             |
|                                           |
|  [  Leve  ]  [ Moderado ]  [ *Severo* ]  |  <- Severity selector
|                                           |
|  Cuando ocurrio?                          |
|  ┌─────────────────────────────────────┐  |
|    📅 Hoy, 07:15 AM              [v]    |
|  └─────────────────────────────────────┘  |
|                                           |
|  Foto del medicamento (opcional)          |
|  ┌─────────────────────────────────────┐  |
|                                         |
|          [📷 Agregar foto]              |
|                                         |
|  └─────────────────────────────────────┘  |
|                                           |
|  ⚠️ Si el efecto es severo, consulta a   |
|     tu medico de inmediato.               |
|                                           |
|  +─────────────────────────────────────+  |
|           Enviar Reporte                |  <- Primary CTA
|  +─────────────────────────────────────+  |
|                                           |
+------------------------------------------+

2.3. Estado: Confirmacion Enviada

+------------------------------------------+
|                                           |
|                                           |
|                                           |
|            ┌─────────────┐                |
|            │     ✓       │                |
|            │             │                |
|            └─────────────┘                |
|                                           |
|         Reporte enviado                   |
|                                           |
|   Hemos registrado tu reporte sobre       |
|   el efecto secundario de Omeprazol.      |
|                                           |
|   ┌─────────────────────────────────────┐ |
|   │  💡 Recomendacion                   │ |
|   │                                     │ |
|   │  Para efectos secundarios           │ |
|   │  moderados o severos, te            │ |
|   │  recomendamos consultar a tu        │ |
|   │  medico antes de la siguiente       │ |
|   │  toma.                              │ |
|   └─────────────────────────────────────┘ |
|                                           |
|   [Ver historial de reportes]             |
|                                           |
|   +─────────────────────────────────────+ |
|   │           Cerrar                    │ |
|   +─────────────────────────────────────+ |
|                                           |
+------------------------------------------+

3. Componentes UI

3.1. Medication Context Card

Propiedad Valor
Componente CMP-CRD-001 (Medication Card)
Variante compact
Background neutral.50
Informacion Nombre, dosis, horario

3.2. Problem Type Selector

Propiedad Valor
Componente CMP-ADH-011 (ProblemTypeSelector) NUEVO
Layout Lista vertical de cards
Selection Single
Card height 64dp
Icono 24dp, left aligned
Feedback Border primary al seleccionar

Tipos de Problema:

Tipo Icono Severidad Default
EFECTO_SECUNDARIO ⚠️ Variable
OLVIDO 🔄 Media
AGOTAMIENTO 📦 Alta
CONFUSION Alta
INTERACCION Media
OTRO 📝 Variable

3.3. Severity Selector

Propiedad Valor
Componente CMP-INP-009 (SegmentedControl)
Opciones Leve, Moderado, Severo
Default Ninguno (requerido)
Colores success.500, warning.500, error.500

3.4. Text Area

Propiedad Valor
Componente CMP-INP-010 (TextArea)
Max chars 500
Min lines 4
Placeholder "Describe el problema..."
Counter Visible siempre

3.5. DateTime Picker

Propiedad Valor
Componente CMP-INP-005 (Date Picker) + CMP-INP-004 (Time Picker)
Default Ahora
Max Ahora (no futuro)
Min 30 dias atras

3.6. Photo Upload

Propiedad Valor
Componente CMP-INP-011 (PhotoUpload)
Opcional Si
Source Camara o galeria
Max size 5MB
Preview Thumbnail 100x100dp

3.7. Warning Banner

Propiedad Valor
Componente CMP-FBK-004 (Banner)
Variante warning
Visible Si severidad == SEVERO
Texto Consejo de consultar medico

4. Comportamientos

4.1. Flujo del Formulario

flowchart TD
    A[Abrir formulario] --> B[Seleccionar tipo]
    B --> C{Tipo seleccionado}

    C -->|Efecto secundario| D[Formulario detallado]
    C -->|Olvido| E[Formulario simple]
    C -->|Agotamiento| F[Formulario + accion]
    C -->|Confusion| G[Formulario detallado]
    C -->|Interaccion| H[Formulario + meds]
    C -->|Otro| I[Formulario libre]

    D --> J[Validar]
    E --> J
    F --> J
    G --> J
    H --> J
    I --> J

    J -->|Valido| K[Guardar]
    J -->|Invalido| L[Mostrar errores]

    K --> M[Confirmacion]
    M --> N{Severidad?}

    N -->|Severo| O[Mostrar alerta medico]
    N -->|Otro| P[Cerrar]

4.2. Validaciones

Campo Regla Mensaje Error
Tipo Requerido "Selecciona el tipo de problema"
Descripcion Min 10 chars "Describe el problema con mas detalle"
Severidad Requerido (ciertos tipos) "Indica la gravedad"
Fecha No futuro "La fecha no puede ser futura"

4.3. Acciones Post-Guardado

Tipo Problema Accion Sugerida
EFECTO_SECUNDARIO (severo) "Consulta a tu medico"
AGOTAMIENTO "Programa reabasto" -> Inventario
CONFUSION "Revisa tus medicamentos" -> Lista
INTERACCION "Ver interacciones" -> SCR-MED-009

5. Datos Requeridos

5.1. Input Data

interface AnomalyFormData {
  // Contexto
  medicationId: string;
  medicationName: string;
  medicationDosage: string;

  // Formulario
  problemType: ProblemType;
  description: string;
  severity?: 'LEVE' | 'MODERADA' | 'SEVERA';
  occurredAt: Date;
  photoUri?: string;

  // Para INTERACCION
  relatedMedicationIds?: string[];
}

type ProblemType =
  | 'EFECTO_SECUNDARIO'
  | 'OLVIDO'
  | 'AGOTAMIENTO'
  | 'CONFUSION'
  | 'INTERACCION'
  | 'OTRO';

interface AnomalyReport {
  id: string;
  medicationId: string;
  type: ProblemType;
  description: string;
  severity?: string;
  occurredAt: Date;
  photoUrl?: string;
  createdAt: Date;
  suggestedAction?: SuggestedAction;
}

5.2. Output Events

Evento Payload Destino
onTypeSelect type Next step
onSubmit AnomalyFormData API + Close
onCancel - Dismiss
onSuggestedAction action_type Navegacion

6. Accesibilidad

6.1. Labels

Elemento accessibilityLabel
Problem type "{tipo}: {descripcion}"
Severity "Gravedad {nivel}"
Photo button "Agregar foto del medicamento"
Submit "Enviar reporte de problema"

6.2. Orden de Foco

  1. Close/Back button
  2. Medication card
  3. Problem type options (secuencial)
  4. Description field
  5. Severity selector
  6. Date picker
  7. Photo upload
  8. Warning (si visible)
  9. Submit button

6.3. Screen Reader

Evento Anuncio
Tipo seleccionado "Seleccionado: {tipo}"
Severidad alta "Advertencia: efecto severo seleccionado"
Enviado "Reporte enviado exitosamente"

7. Responsive Design

7.1. Presentacion

Dispositivo Presentacion
Phone Full screen modal
Tablet Portrait Bottom sheet 70%
Tablet Landscape Side panel 40%

8. Metricas

8.1. Analytics Events

Evento Parametros
anomaly_form_open medication_id, source
anomaly_type_select type
anomaly_submit type, severity, has_photo
anomaly_form_abandon type, step

9. Referencias


Documento generado por MobileUxUiDrone (Eight of Eight)