[ERP-49] Créer la page Gestion des catégories (datatable + drawer) #22

Merged
tristan merged 5 commits from feature/ERP-49-0-7-frontend-l-creer-la-page-gestion-des-categorie into develop 2026-05-29 08:59:48 +00:00

5 Commits

Author SHA1 Message Date
tristan 71ca15e1ec refactor(catalog) : align categories.vue comments with actual behavior + drop magic h2 size
Pull Request — Quality gate / Backend (PHP CS + PHPUnit) (pull_request) Successful in 1m16s
Pull Request — Quality gate / Frontend (lint + Vitest + build) (pull_request) Successful in 1m0s
- categories.vue : commentaires retiraient ce qui n'est pas cable
  (tri client en miroir, slice pagination) — alignes sur le comportement
  reel (tri 100% serveur, affichage exhaustif).
- CategoryDrawer.vue : `text-[24px]` remplace par `text-2xl` (echelle
  Tailwind standard).

Le retour sur la largeur 150px des boutons d'action est tracke pour
ERP-70 (mise a jour @malio/layer-ui : on poussera le token la-bas).
2026-05-29 10:41:54 +02:00
tristan b0f379dcb8 fix(chore) : package-lock.json 2026-05-29 10:41:23 +02:00
tristan 934a12b28e fix(category): update category modal to MalioModal component
Pull Request — Quality gate / Backend (PHP CS + PHPUnit) (pull_request) Successful in 1m27s
Pull Request — Quality gate / Frontend (lint + Vitest + build) (pull_request) Failing after 11s
2026-05-29 08:12:03 +02:00
Matthieu 216f38847b fix(ci) : recreer l'index partiel uq_category_name_type_active apres schema:update
Pull Request — Quality gate / Frontend (lint + Vitest + build) (pull_request) Successful in 1m11s
Pull Request — Quality gate / Backend (PHP CS + PHPUnit) (pull_request) Successful in 1m28s
doctrine:schema:update --force drop l'index unique partiel cree par la
migration M0 Catalog (LOWER(name), category_type_id) WHERE deleted_at IS NULL :
Doctrine ORM ne sait pas exprimer les index fonctionnels partiels via les
mappings, donc le voit comme orphelin.

Resultat : en CI les tests CategoryUniqueTest::testDuplicateName* attendent
un 409 (collision) et recoivent 201 — l'index unique n'existant plus, le
doublon passe.

Aligne le step CI sur la cible makefile test-db-setup qui recreait deja
l'index manuellement apres schema:update.
2026-05-28 15:40:31 +02:00
tristan 4046910a9d feat(catalog) : add admin categories page with MalioDataTable and drawer (first draft)
Pull Request — Quality gate / Backend (PHP CS + PHPUnit) (pull_request) Failing after 1m29s
Pull Request — Quality gate / Frontend (lint + Vitest + build) (pull_request) Successful in 1m5s
- Page Nuxt /admin/categories : MalioDataTable + bouton Ajouter
- CategoryDrawer : modes creation / consultation / edition (transition
  auto view -> edit a la 1re modif), validation client RG-1.02/04/05,
  mapping erreurs server 409 (doublon) et 422 (violations)
- CategoryDeleteModal : confirmation suppression (soft delete cote API)
- Types Category, CategoryType, User
- i18n admin.categories.* (titre, table, form, validation, toasts)
- Fix latent : ajout 'categories' a AdminLinkSlug e2e (oubli ERP-47)

Logique fetch inline volontaire au M0 — extraction en composables a
ERP-50 (ticket 0.8). Aucune persistance d'etat de tableau dans l'URL.
2026-05-28 15:11:45 +02:00