Saltar al contenido principal

Gift Delivery

CampoValor
Handleradmin/handlers/gift_delivery.go
Ruta base/admin/orders/gifts
Modelogift_deliveries, gift_items
EstadoImplementado

Descripción

El módulo de entrega de regalos permite gestionar pedidos con entrega especial para regalos. Incluye reportes de producción por fecha/turno, dedicatorias, tarjetas, y exportación CSV para logística.


Endpoints

MétodoRutaAcción
GET/admin/orders/giftsListar regalos pendientes
GET/admin/orders/gifts/productionReporte de producción
GET/admin/orders/gifts/production/csvExportar producción CSV
GET/admin/orders/gifts/:idDetalle del regalo
PUT/admin/orders/gifts/:id/statusActualizar estado
GET/admin/orders/gifts/calendarVista calendario

Campos

GiftDelivery

CampoTipoDescripción
idUUIDIdentificador único
order_idUUIDPedido asociado
tenant_idUUIDTenant propietario
recipient_namestringNombre del destinatario
recipient_phonestringTeléfono del destinatario
recipient_addressstringDirección de entrega
delivery_datedateFecha de entrega
delivery_slotstringTurno (ej: "Mañana")
dedicationstringMensaje de dedicatoria
card_typestringTipo de tarjeta
statusenumEstado del regalo
production_statusenumEstado en producción
created_attimestampFecha de creación
updated_attimestampÚltima actualización

ProductionRow (agregado)

CampoTipoDescripción
productstringNombre del producto
quantityintCantidad total
is_giftboolEs producto de regalo

GiftReportRow

CampoTipoDescripción
idUUIDID del regalo
recipientstringDestinatario
slotstringTurno de entrega
occasionstringOcasión
dedicatoriastringMensaje
production_statusstringEstado de producción

Estados

Gift Status

pending → confirmed → ready → delivered
→ failed

Production Status

pending → in_progress → completed
→ issue

Reporte de Producción

El reporte agrega líneas de regalo por fecha y turno:

  1. Carga todos los regalos de la fecha (OrderGiftsByDate)
  2. Filtra por turno si se especifica
  3. Carga órdenes asociadas y agrega líneas de producto
  4. Distingue productos de regalo vs productos regulares
  5. Ordena por producto

Filtros:

  • date - Fecha de entrega (requerido)
  • slot - Turno específico (opcional)

Exportación CSV

El CSV incluye:

  • Producto
  • Cantidad
  • Es regalo (Sí/No)
  • Destinatario
  • Turno
  • Dedicatoria

Notas

  • Los regalos se asocian a órdenes existentes (no son órdenes independientes)
  • La producción se calcula agregando líneas de todas las órdenes con regalo
  • Los slots vienen de la configuración de Delivery Schedules
  • El calendario muestra entregas por fecha para planificación
  • Las dedicatorias son strings libres (sin formato especial)