Saltar al contenido principal

Get dashboard statistics

GET 

/company/dashboard/

Devuelve estadísticas de subastas y entregas para el panel de control empresarial de Cargoffer.

Proporcionar métricas agregadas de actividad operativa y financiera de subastas y entregas para el panel de control (dashboard) de una empresa, permitiendo análisis de rendimiento y seguimiento de actividad en un rango de fechas específico.

Objetivo

Permitir a las empresas visualizar el desempeño de sus operaciones logísticas mediante indicadores clave de rendimiento (KPIs) basados en subastas y entregas realizadas.

Casos de uso

  • Dashboard principal: visualización de KPIs del último año (valores por defecto)
  • Informes trimestrales: GET /?minDate=2024-01-01&maxDate=2024-03-31
  • Análisis mensual: GET /?minDate=2024-05-01&maxDate=2024-05-31
  • Análisis anual: GET /?minDate=2023-01-01&maxDate=2023-12-31

Métricas de subastas

Para cada grupo de subastas se devuelven los siguientes datos agregados:

  • total_sale: Monto total de ventas calculado según la lógica de pujas
  • total_auctions: Cantidad de subastas en el grupo
  • total_savings: Ahorro total vs precio inicial (total_start_price - total_sale)
  • sumBidWinner: Suma de montos de pujas ganadoras
  • total_start_price: Suma de precios iniciales de todas las subastas

Cálculo de total_sale por subasta:

  1. Si existe puja ganadora (bidWinner): usa el monto de esa puja
  2. Si no, pero existe puja asignada (bidAsigned): usa el monto de esa puja
  3. Si no tiene ninguna puja: usa el precio inicial (start_price)

Grupos de subastas:

  • auctions: Todas las subastas (estados: planned, published, awarded, approved)
  • publishedAuctions: Subastas publicadas (status: "published")
  • awardedAuctions: Subastas adjudicadas (status: "awarded")
  • approvedAuctions: Subastas aprobadas (status: "approved")
  • plannedAuctions: Subastas planificadas (status: "planned")

Métricas de entregas

Para cada grupo de entregas se devuelven los siguientes datos agregados:

  • total_sale: Monto total de entregas (basado en pujas ganadoras o asignadas)
  • total_deliveries: Cantidad de entregas en el grupo
  • sumBidWinner: Suma de montos de pujas ganadoras

Grupos de entregas:

  • plannedDeliveries: Entregas planificadas (status: "planned")
  • collectedDeliveries: Entregas recogidas (status: "collected")
  • deliveredDeliveries: Entregas completadas (status: "delivered")

Filtrado por rango de fechas

Los parámetros minDate y maxDate permiten filtrar las estadísticas por período. El campo de fecha usado para el filtro depende del tipo de estadística y estado:

Para subastas:

  • Se filtra por fecha de fin de la subasta (date_end)
  • Estados incluidos: planned, published, awarded, approved

Para entregas, el campo de fecha depende del estado:

  • collected (recogidas): fecha estimada de carga (etl_date)
  • delivered (completadas): fecha estimada de entrega (etd_date)
  • planned/replanned/accepted: fecha de creación (createdAt)

Esta lógica permite análisis más precisos según la fase del proceso logístico.

Valores por defecto:

  • minDate: 1 año antes de la fecha actual
  • maxDate: Fecha actual

Ejemplo de uso

Dashboard principal (último año):

GET /company/dashboard/
Authorization: Bearer {jwt_token}

Informe trimestral:

GET /company/dashboard/?minDate=2024-01-01&maxDate=2024-03-31
Authorization: Bearer {jwt_token}

Notas importantes

  • Requiere autenticación con token JWT
  • Solo devuelve estadísticas de la empresa del usuario autenticado
  • Si el usuario no tiene empresa asignada, retorna error 404
  • Los estados de subastas y entregas están predefinidos en los modelos
  • Los cálculos se realizan mediante agregaciones MongoDB para optimizar rendimiento

Request

Responses

Estadísticas recuperadas exitosamente. Contiene los siguientes grupos de datos:

Grupos de subastas (AuctionStats):

  • auctions: Todas las subastas (planned, published, awarded, approved)
  • publishedAuctions: Subastas publicadas
  • awardedAuctions: Subastas adjudicadas
  • approvedAuctions: Subastas aprobadas
  • plannedAuctions: Subastas planificadas

Grupos de entregas (DeliveryStats):

  • plannedDeliveries: Entregas planificadas
  • collectedDeliveries: Entregas recogidas
  • deliveredDeliveries: Entregas completadas

Cada grupo de subastas incluye: total_sale, total_auctions, total_savings, sumBidWinner, total_start_price Cada grupo de entregas incluye: total_sale, total_deliveries, sumBidWinner

Response Headers