Saltar a contenido

Documento histórico

Este documento se conserva solo para trazabilidad. Consulte el índice maestro para la fuente vigente.

Documento histórico — no usar como fuente de decisiones actuales

Reemplazado por la versión canónica del 2026-07-11. Conservar solo como trazabilidad histórica.


CU-006: Consultar detalle de un paquete

Caso de uso detallado para visualizar el detalle completo de un paquete físico, incluyendo timeline de eventos, estado de almacenaje y servicios contratados.


Metadatos

Campo Valor
ID CU-006
Nombre Consultar detalle de un paquete
Actor primario Usuario Final
Módulo Paquetes y envíos
Prioridad Alta (MVP)
Frecuencia esperada Media
Trazabilidad SRS RF-021, RF-022, RF-023

Descripción

El usuario accede al detalle de un paquete físico (proveniente del dashboard, listado de "En almacén" o desde una prealerta vinculada). Puede ver toda la información del paquete, su timeline de eventos, estado de almacenaje, y las acciones disponibles según el estado actual.


Precondiciones

  • El usuario tiene una sesión activa.
  • El usuario está autenticado como propietario del paquete (o el operador).

Postcondiciones

  • El usuario visualiza la información del paquete.
  • Si solicita una acción, se registra la intención (servicio adicional, etc.).

Flujo principal

  1. El usuario accede al detalle de un paquete desde:
  2. El dashboard (tarjeta de resumen)
  3. El listado de "En almacén"
  4. Una prealerta vinculada a un paquete
  5. El sistema muestra la pantalla Detalle de Paquete con:

Información del paquete - Tienda - Número de orden - Tracking - Fecha de recepción - Peso - Dimensiones - Estado del embalaje (Bien / Dañado / Reparado) - Fotos del paquete recibido (galería)

Almacenaje - Fecha de recepción - Días en almacén (calculado) - Días gratis disponibles: 15 (resuelto en preguntas.md, configurable desde admin) - Días restantes (gratis) - Días restantes (gratis) - Costo por día extra: $0.50 USD (resuelto en mismo doc) - Total acumulado por almacenaje

Timeline de eventos - Lista cronológica de eventos con fecha, estado y descripción

Servicios contratados (si hay) - Inspección visual, prueba funcional, reempaque, devolución - Estado y costo de cada uno

Acciones disponibles (según estado) - Solicitar inspección - Solicitar prueba funcional - Solicitar reempaque - Solicitar devolución - Agregar a consolidación - Ver envío (si ya está despachado) - Pagar (si hay saldo pendiente)

  1. El usuario puede hacer scroll para ver toda la información.
  2. El usuario puede tocar cualquier acción disponible.

Flujos alternativos

FA-1: Paquete en incidencia

  • Si el estado es retenido_por_incidencia:
  • Se muestra un banner amarillo arriba: "Este paquete está retenido. Motivo: {razón}."
  • Si la incidencia es customs_hold, se muestran instrucciones.

FA-2: Paquete próximo a vencer

  • Si los días restantes son ≤ 3:
  • Banner amarillo: "Este paquete vence en {n} días. Confirma qué hacer: enviar, consolidar o devolver."

FA-3: Paquete ya en envío

  • Si el paquete está consolidado o despachado:
  • No se muestran acciones de servicios.
  • Se muestra un botón Ver envío que navega al detalle del envío.

FA-4: Usuario intenta acción no permitida por estado

  • El sistema valida las transiciones de estado antes de permitir la acción.
  • Ejemplo: no se puede consolidar un paquete en en_transito.

FA-5: Fotos no disponibles

  • Si el operador aún no subió fotos:
  • La galería muestra placeholder con texto "Las fotos se subirán cuando el paquete sea procesado."

Excepciones

Excepción Causa Manejo
PACKAGE_NOT_FOUND ID inválido Pantalla de error 404
PACKAGE_NOT_OWNED Intentar ver paquete de otro usuario "No tienes permiso"
INVALID_STATE_TRANSITION Acción no permitida Mensaje específico

Reglas de negocio aplicables

  • RN-15 (Almacenaje): el tiempo en almacén se muestra en el detalle del paquete, no en el dashboard general. Ver reglas-negocio.md.
  • RN-16 (Días gratis): configurables globalmente. Ver preguntas.md.
  • RN-17 (Cargos): se aplican automáticamente por día extra. Ver riesgos.md.

Criterios de aceptación

  • El detalle se carga en < 1 segundo.
  • El cálculo de días en almacén se actualiza en tiempo real cada vez que se abre la pantalla.
  • Las acciones disponibles cambian según el estado del paquete.
  • Un usuario no puede ver paquetes de otro usuario.
  • Las fotos se muestran con thumbnail y fullscreen al tocar.
  • El timeline es cronológico inverso (más reciente arriba).

Diagrama de actividad

flowchart TD
    A["Accede al detalle"] --> B["Carga PhysicalPackage"]
    B --> C["Carga PackageEvents"]
    C --> D["Calcula días en almacén"]
    D --> E["Renderiza pantalla"]
    E --> F{"¿Acción?"}
    F -- "Ver envío" --> G["Detalle del envío"]
    F -- "Solicitar servicio" --> H["Sheet de solicitud"]
    F -- "Agregar a consolidación" --> I["Pantalla de consolidación"]
    F -- "Pagar" --> J["Pantalla de pago"]

Diagrama de estados (paquete)

Ver estado-paquete.md.


Pruebas asociadas

  • PT-070: Ver detalle de paquete en almacén
  • PT-071: Ver detalle de paquete en tránsito
  • PT-072: Ver detalle de paquete entregado
  • PT-073: Ver detalle de paquete en incidencia
  • PT-074: Cálculo correcto de días en almacén
  • PT-075: Banner de almacenaje por vencer
  • PT-076: Acciones disponibles según estado
  • PT-077: Intentar ver paquete ajeno (debe fallar)
  • PT-078: Visualización de fotos del paquete
  • PT-079: Visualización del timeline