Files
itinova-budget-si/todo.md

2.3 KiB

Budget SI Itinova — TODO

Migration vers base de données (tRPC + auth locale)

  • Schéma Drizzle complet (users, etablissements, inventaire, opex, capex, parametres_app)
  • Migration base de données (pnpm db:push — 10 tables créées)
  • Seed compte admin par défaut (admin / Itinova2027!)
  • Authentification locale JWT (bcrypt + cookie httpOnly)
  • Routes tRPC : auth.login, auth.me, auth.logout
  • Routes tRPC : users.list, users.create, users.update, users.delete, users.importBulk
  • Routes tRPC : etablissements.list, etablissements.upsert, etablissements.delete
  • Routes tRPC : parametres.get, parametres.set, parametres.setBulk
  • Routes tRPC : opex.getPostes, opex.upsertPoste, opex.getMontantsEtab, opex.setMontantEtab, opex.getValidated, opex.validate
  • Routes tRPC : inventaire.get, inventaire.import
  • Routes tRPC : capex.get, capex.save
  • Page de connexion avec branding Itinova/Santinova
  • Protection des routes (ProtectedRoute dans App.tsx)
  • Hook useAuth branché sur tRPC (auth.me)
  • Bouton déconnexion dans la sidebar
  • Page Paramètres — onglet Établissements branché sur tRPC
  • Page Paramètres — onglet Utilisateurs branché sur tRPC
  • ImportModal — import inventaire sauvegardé en BDD via tRPC
  • ImportModal — import établissements sauvegardé en BDD via tRPC
  • ImportModal — import utilisateurs sauvegardé en BDD via tRPC
  • Tests Vitest (14 tests passent) : auth.logout, auth.me, auth.login, etablissements.list, users.list, parametres.get

Fonctionnalités existantes (localStorage — conservées)

  • Page Renouvellement PC (Home.tsx) — données inventaire depuis localStorage
  • Page Budget 2027 — données depuis localStorage
  • Page DSI CAPEX — données depuis localStorage
  • Page DSI OPEX — données depuis localStorage
  • Pages Santinova, Soins Santé, St-Exupéry — données depuis localStorage
  • Contexte Paramètres (seuils, coûts) — localStorage
  • Contexte Année — localStorage

Améliorations futures

  • Migrer les pages Budget2027, DsiCapex, DsiOpex pour lire depuis la BDD via tRPC
  • Gestion des droits par établissement (userEtablissements)
  • Export PDF/Excel des budgets
  • Historique des modifications (audit log)