Logidav Docs

ShipmentTrackingStatusMapper
in package

FinalYes

Provides display metadata for shipment tracking statuses across carriers.

Table of Contents

Constants

BASE_METADATA  = ['DATA_RECEIVED' => ['label' => 'Données reçues', 'class' => 'label-default'], 'PICKUP' => ['label' => 'Prise en charge', 'class' => 'label-primary'], 'HUB' => ['label' => 'En cours de traitement', 'class' => 'label-warning'], 'DELIVERY_DEPOT' => ['label' => 'Dépôt de livraison', 'class' => 'label-info'], 'IN_DELIVERY' => ['label' => 'En cours de livraison', 'class' => 'label-info'], 'DELIVERED' => ['label' => 'Livré', 'class' => 'label-success'], 'CANCELLED' => ['label' => 'Annulé', 'class' => 'label-danger'], 'CONTROLLED' => ['label' => 'Contrôlé', 'class' => 'label-warning'], 'EMPTY' => ['label' => 'Vide', 'class' => 'label-default']]
Base metadata keyed by normalized status.
CUSTOM_METADATA  = [ // Geodis custom 'REN' => ['label' => 'Relivraison planifiée', 'class' => 'label-info'], 'RST' => ['label' => 'Retour expéditeur', 'class' => 'label-warning'], 'COM' => ['label' => 'En attente de prise en charge', 'class' => 'label-default'], // Trusk statuses - AJOUT COMPLET DES TRADUCTIONS 'ORDER_CREATED' => ['label' => 'Commande créée', 'class' => 'label-default'], 'CONTROLLED' => ['label' => 'Contrôlé', 'class' => 'label-warning'], 'DROPOFF_COMPLETED' => ['label' => 'Livré', 'class' => 'label-success'], // Trusk additional statuses 'ORDER_PICKUP' => ['label' => 'Collecte programmée', 'class' => 'label-primary'], 'ORDER_PICKUP_STARTED' => ['label' => 'Collecte en cours', 'class' => 'label-primary'], 'ORDER_PICKUP_COMPLETED' => ['label' => 'Collecte terminée', 'class' => 'label-primary'], 'ORDER_DROPOFF' => ['label' => 'Livraison programmée', 'class' => 'label-info'], 'ORDER_DROPOFF_STARTED' => ['label' => 'Livraison en cours', 'class' => 'label-info'], 'ORDER_DROPOFF_FAILED' => ['label' => 'Échec de livraison', 'class' => 'label-danger'], 'PROCESSING' => ['label' => 'En traitement', 'class' => 'label-warning'], 'ENDED' => ['label' => 'Terminé', 'class' => 'label-success'], 'STARTED' => ['label' => 'Démarré', 'class' => 'label-primary'], 'COMPLETED' => ['label' => 'Complété', 'class' => 'label-success'], 'FAILED' => ['label' => 'Échec', 'class' => 'label-danger'], ]
Custom metadata for codes that do not map directly to base statuses.
STATUS_ALIASES  = [ // Geodis only 'EXP' => 'DATA_RECEIVED', 'PAQ' => 'PICKUP', 'AAR' => 'DELIVERY_DEPOT', 'MLV' => 'IN_DELIVERY', 'SOL' => 'IN_DELIVERY', 'LIV' => 'DELIVERED', // Generic fallbacks 'DATA_RECEIVED' => 'DATA_RECEIVED', 'PICKUP' => 'PICKUP', 'HUB' => 'HUB', 'DELIVERY_DEPOT' => 'DELIVERY_DEPOT', 'IN_DELIVERY' => 'IN_DELIVERY', 'DELIVERED' => 'DELIVERED', 'CANCELLED' => 'CANCELLED', 'EMPTY' => 'EMPTY', ]
Aliases - SUPPRESSION de la logique d'alias confuse

Methods

getHighestPriorityStatus()  : string|null
NOUVELLE MÉTHODE: Obtenir le statut de plus haute priorité pour l'affichage principal
getStatusClass()  : string
Obtenir la classe CSS pour un statut
getStatusLabel()  : string
Obtenir le libellé d'affichage pour un statut
getViewMappings()  : array{colors: array, translations: array}
Returns arrays ready for Twig consumption.
__construct()  : mixed

Constants

BASE_METADATA

Base metadata keyed by normalized status.

private array<string, array{label: string, class: string}> BASE_METADATA = ['DATA_RECEIVED' => ['label' => 'Données reçues', 'class' => 'label-default'], 'PICKUP' => ['label' => 'Prise en charge', 'class' => 'label-primary'], 'HUB' => ['label' => 'En cours de traitement', 'class' => 'label-warning'], 'DELIVERY_DEPOT' => ['label' => 'Dépôt de livraison', 'class' => 'label-info'], 'IN_DELIVERY' => ['label' => 'En cours de livraison', 'class' => 'label-info'], 'DELIVERED' => ['label' => 'Livré', 'class' => 'label-success'], 'CANCELLED' => ['label' => 'Annulé', 'class' => 'label-danger'], 'CONTROLLED' => ['label' => 'Contrôlé', 'class' => 'label-warning'], 'EMPTY' => ['label' => 'Vide', 'class' => 'label-default']]

CUSTOM_METADATA

Custom metadata for codes that do not map directly to base statuses.

private array<string, array{label: string, class: string}> CUSTOM_METADATA = [ // Geodis custom 'REN' => ['label' => 'Relivraison planifiée', 'class' => 'label-info'], 'RST' => ['label' => 'Retour expéditeur', 'class' => 'label-warning'], 'COM' => ['label' => 'En attente de prise en charge', 'class' => 'label-default'], // Trusk statuses - AJOUT COMPLET DES TRADUCTIONS 'ORDER_CREATED' => ['label' => 'Commande créée', 'class' => 'label-default'], 'CONTROLLED' => ['label' => 'Contrôlé', 'class' => 'label-warning'], 'DROPOFF_COMPLETED' => ['label' => 'Livré', 'class' => 'label-success'], // Trusk additional statuses 'ORDER_PICKUP' => ['label' => 'Collecte programmée', 'class' => 'label-primary'], 'ORDER_PICKUP_STARTED' => ['label' => 'Collecte en cours', 'class' => 'label-primary'], 'ORDER_PICKUP_COMPLETED' => ['label' => 'Collecte terminée', 'class' => 'label-primary'], 'ORDER_DROPOFF' => ['label' => 'Livraison programmée', 'class' => 'label-info'], 'ORDER_DROPOFF_STARTED' => ['label' => 'Livraison en cours', 'class' => 'label-info'], 'ORDER_DROPOFF_FAILED' => ['label' => 'Échec de livraison', 'class' => 'label-danger'], 'PROCESSING' => ['label' => 'En traitement', 'class' => 'label-warning'], 'ENDED' => ['label' => 'Terminé', 'class' => 'label-success'], 'STARTED' => ['label' => 'Démarré', 'class' => 'label-primary'], 'COMPLETED' => ['label' => 'Complété', 'class' => 'label-success'], 'FAILED' => ['label' => 'Échec', 'class' => 'label-danger'], ]

STATUS_ALIASES

Aliases - SUPPRESSION de la logique d'alias confuse

private mixed STATUS_ALIASES = [ // Geodis only 'EXP' => 'DATA_RECEIVED', 'PAQ' => 'PICKUP', 'AAR' => 'DELIVERY_DEPOT', 'MLV' => 'IN_DELIVERY', 'SOL' => 'IN_DELIVERY', 'LIV' => 'DELIVERED', // Generic fallbacks 'DATA_RECEIVED' => 'DATA_RECEIVED', 'PICKUP' => 'PICKUP', 'HUB' => 'HUB', 'DELIVERY_DEPOT' => 'DELIVERY_DEPOT', 'IN_DELIVERY' => 'IN_DELIVERY', 'DELIVERED' => 'DELIVERED', 'CANCELLED' => 'CANCELLED', 'EMPTY' => 'EMPTY', ]

Methods

getHighestPriorityStatus()

NOUVELLE MÉTHODE: Obtenir le statut de plus haute priorité pour l'affichage principal

public static getHighestPriorityStatus(array<string|int, mixed> $statusList) : string|null
Parameters
$statusList : array<string|int, mixed>
Return values
string|null

getStatusClass()

Obtenir la classe CSS pour un statut

public static getStatusClass(string $status) : string
Parameters
$status : string
Return values
string

getStatusLabel()

Obtenir le libellé d'affichage pour un statut

public static getStatusLabel(string $status) : string
Parameters
$status : string
Return values
string

getViewMappings()

Returns arrays ready for Twig consumption.

public static getViewMappings() : array{colors: array, translations: array}
Return values
array{colors: array, translations: array}

        
On this page

Search results