Aller au contenu principal

Edit delivery

PUT 

/company/delivery/:service_code

Mettez à jour les détails d'un envoi existant. Les champs modifiables dépendent de l'état actuel de l'envoi.

Objectif

Permettre aux entreprises de modifier certains aspects de leurs envois en fonction de leur état, tout en conservant un contrôle des modifications via replannedBy.

Cas d'utilisation

  • Modifier les dates de chargement/déchargement pour les envois planifiés ou acceptés
  • Mettre à jour les détails de la cargaison (poids, hauteur, palettes, température)
  • Corriger les mètres linéaires de chargement
  • Démarrer un processus de re-planification nécessitant une approbation

Champs modifiables par état

État 'planned' ou 'replanned' : Peuvent être modifiés : etl_date, etd_date, pallets_num, fresh_cargo_temp, cargo_weight, cargo_height, linear_meters

État 'accepted' : Peuvent être modifiés : etl_date, etd_date

Toute autre modification :

  • Change l'état en 'replanned'
  • Définit replannedBy sur 'cia' (entreprise)

Flux de validation

flowchart TD
A[Reçoit une demande de modification] --> B{L'envoi existe-t-il ?}
B -->|Non| C[404 NOT_FOUND]
B -->|Oui| D{L'entreprise possède-t-elle l'envoi ?}
D -->|Non| E[404 NOT_ALLOWED]
D -->|Oui| F{État final ?}
F -->|Oui| G[401 NOT_ALLOWED]
F -->|Non| H[Obtenir les clés modifiables]
H --> I{Y a-t-il des clés valides ?}
I -->|Non| J[401 NOT_ALLOWED]
I -->|Oui| K[Mettre à jour les champs]
K --> L[Définir status=replanned]
L --> M[Définir replannedBy=cia]
M --> N[Sauvegarder les modifications - 200]

Notes

  • Les envois dans un état final (delivered, claimed

Request

Responses

Envoi mis à jour avec succès