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
- 200
- 400
- 401
- 404
Envoi mis à jour avec succès
Opération non autorisée. Cela se produit lorsque :
- Les données fournies sont invalides
Non autorisé. Le jeton JWT est invalide ou a expiré, ou les champs demandés ne peuvent pas être modifiés pour l'état actuel.
Expédition non trouvée. Le service_code fourni n'existe pas ou n'appartient pas à l'entreprise de l'utilisateur authentifié.