- Edition d'une reservation avant paiement: page /booking/:id/edit
(volume, poids, palettes, notes + gestion documents), endpoint
PATCH /csv-bookings/:id/details (owner + PENDING_PAYMENT), methode
domaine editDetails. Acces "Modifier" depuis la liste, la modale detail
et la page de paiement.
- Filtre "A finaliser" (PENDING_PAYMENT + PENDING_BANK_TRANSFER) + libelles
et couleurs de tous les statuts.
- Tableau des reservations: 6 colonnes + colonne Actions collante a droite
(plus de scroll horizontal pour atteindre Payer/Voir).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Telechargement docs transporteur: proxy de streaming API (fin des URLs
presignees MinIO injoignables depuis l'exterieur)
- Documents: ajout de l'action "Supprimer" (endpoint DELETE deja existant)
- Blog: suppression reelle de l'image de couverture (null explicite bout en bout)
- Blog: le bouton Retour navigateur ferme l'editeur au lieu de quitter vers Logs
- Paiement: bouton Retour revient au contexte precedent (router.back)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- SIRET/SIREN admin: controller applied siren but skipped siret — add missing updateSiret() call
- Document upload on validated booking: backend blocked PENDING_BANK_TRANSFER;
frontend filter excluded it — both now allow all non-terminal statuses
- Accent encoding in filenames: Multer stores originalname as latin1;
re-decode to utf8 before storing and displaying
- Drag & drop in document modals: replace bare input with styled dropzone
supporting click and native drag-and-drop in both Add and Replace modals
- Resume existing booking: add Actions column with View button and booking
detail modal to the bookings list page
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>