Version du 12 octobre 2026 (matin) : sélecteur d’entrepôt / étiquettes d’usine / correctif urgent du détail de réception
Sélecteur d’entrepôt mobile, réception avec étiquettes d’usine et correctif de lots d’inventaire, plus un correctif d’urgence pour les pages de détail de réception plantées.
Nouveautés#
- Sélecteur d’entrepôt sur l’accueil du WMS mobile (My Tasks) : la sélection d’un entrepôt unique est obligatoire (pas de « tous les entrepôts » ; « personne ne travaille entre entrepôts »), mémorisée dans localStorage ; la liste des tâches, la consultation d’inventaire et le scan sont filtrés par l’entrepôt sélectionné. (migration 192)
- Réception avec étiquettes d’usine : lors de la construction de palettes, on peut utiliser l’étiquette de l’usine (label_source system/factory, unicité vérifiée par tenant) via un interrupteur « Utiliser l’étiquette d’usine » sur la page mobile de construction ; aucune nouvelle étiquette n’est imprimée.
Correctifs#
- Correctif d’urgence : toutes les pages de détail de réception sont devenues blanches (exception côté client) ; 3 useMemo étaient écrits après des retours anticipés (if (loading)/if (!detail)), en violation des règles des React Hooks. Corrigé en les déplaçant avant les retours anticipés avec un accès null-safe (detail?.lines ?? []).
- Correctif de l’upsert wms_inventory_lot qui écrasait l’inventaire (10→5 au lieu d’accumuler à 15) ; recevoir deux fois sur le même emplacement et lot faisait perdre du stock. Il accumule désormais.
- Page mobile de palettisation : les emplacements saisis à la main sont désormais validés automatiquement (avant, saisir B-01-01 et toucher Build se plaignait « emplacement requis »), et les soumissions échouées défilent automatiquement vers le haut.
saas dpl_Be9ESYzw (06:53) READY · mobile READY · migration 192 ✅
hotfix saas dpl_711XfZaztAA5JV7knpxVvtv2TV9v READY