JCD Commerce V2 · 09
Difficultés et solutions
Les difficultés principales concernent les cycles documentaires, les droits, l’isolation multi-compte et la reprise de règles métier anciennes.
Clarification du processus métier
La première difficulté a été de verrouiller un processus clair entre panier, devis, commande et validation. Les actions Commander, Demander une validation, Modifier dans le panier et Dupliquer dans le panier sont proches en apparence mais n’ont ni le même effet ni le même statut cible.
La partie serveur formalise des transitions explicites dans la classe OrderWorkflow, contrôle les changements d’état, conserve un historique métier et distingue panier standard et panier de révision. Cette séparation prévient les états impossibles, protège le document source et garantit la traçabilité.
Droits et isolation multi-compte
La deuxième difficulté concerne les droits et la visibilité dans un environnement comportant plusieurs comptes, rôles, groupes d’adresses, périmètres de validation et un droit local can_validate. Une règle incorrecte pouvait exposer un document ou autoriser une action hors périmètre.
WorkspaceContext centralise les scopes de visibilité. L’isolation par compte est complétée par les contrôles de rôle, de groupe et de périmètre, tandis que les routes sensibles utilisent les capacités Laravel. Les tests Feature ciblent l’isolation, les rôles, les autorisations et les transitions critiques.
Adaptation mobile
La troisième difficulté a été de transformer une interface d’abord pensée pour un grand écran en une expérience réellement exploitable sur téléphone. Les démonstrations internes ont mis en évidence des menus imposants, des cartes trop grandes, une densité insuffisante, des actions moins accessibles et une navigation moins fluide.
Les améliorations portent sur la densification de l’affichage, la correction du menu latéral mobile, la réduction de l’échelle de composants, les micro-interactions, l’harmonisation des actions principales, la lisibilité et la compacité. Elles répondent aussi aux demandes d’un panier sans redirection forcée, d’une visibilité plus immédiate des validations et d’une meilleure compréhension des droits.
Les solutions déplacent les règles critiques de décisions implicites vers des mécanismes explicites, testables et transmissibles.