jmartin and Cursor
10ebc77ba1
feat(backend): update gestionnaire creation logic and clean up DTOs
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-24 10:26:24 +01:00
jmartin and Cursor
f9477d3fbe
feat: livrer ticket #35 et synchroniser les évolutions admin
...
Intègre en un seul commit les évolutions de develop, avec la création/édition/suppression de gestionnaires via modale unifiée (#35 ) et les correctifs associés sur la gestion admin.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-24 00:20:33 +01:00
jmartin
4d37131301
Merge branch 'master' of https://git.ptits-pas.fr/jmartin/petitspas
2026-02-24 00:08:30 +01:00
jmartin and Cursor
04b910295c
fix(backend): fix UpdateGestionnaireDto compilation error ( #35 )
...
- Changed UpdateGestionnaireDto to inherit from PartialType(CreateUserDto) instead of CreateGestionnaireDto
- Ensures all fields (like date_consentement_photo) are available for update logic
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-23 23:53:21 +01:00
jmartin and Cursor
c136f28f12
fix(backend): remove address from gestionnaire creation ( #35 )
...
- Updated CreateGestionnaireDto to omit address field
- Updated GestionnairesService to not map address on creation
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-23 23:21:26 +01:00
jmartin and Cursor
4b176b7083
feat: livrer ticket #93 et finaliser #17 avec gestion des Relais ( #95 )
...
Homogénéise le dashboard admin (onglets/listes/cartes/états) via composants réutilisables, finalise la création gestionnaire côté backend, et intègre la gestion des Relais avec rattachement gestionnaire.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-23 23:07:04 +01:00
jmartin and Cursor
00c42c7bee
feat(release): Backend Gestionnaire Creation ( #17 )
...
- Implemented MailModule and MailService
- Updated GestionnairesService to send welcome email
- Forced password change on first login for new gestionnaires
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-23 22:50:13 +01:00
jmartin and Cursor
42c569e491
feat(release): Backend Relais Module ( #94 )
...
- Implemented Relais entity and CRUD API
- Added relation between Users (Gestionnaires) and Relais
- Updated database initialization script
- Documentation updates
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-21 14:40:32 +01:00
jmartin and Cursor
d32d956b0e
feat(dashboard-admin): connect admin dashboard to real API data (Ticket #92 )
...
- Frontend:
- Create UserService to handle user-related API calls (gestionnaires, parents, AMs, admins)
- Update AdminDashboardScreen to use dynamic widgets
- Implement dynamic management widgets:
- GestionnaireManagementWidget
- ParentManagementWidget
- AssistanteMaternelleManagementWidget
- AdminManagementWidget
- Add data models: ParentModel, AssistanteMaternelleModel
- Update AppUser model
- Update ApiConfig
- Backend:
- Update controllers (Parents, AMs, Gestionnaires, Users) to allow ADMINISTRATEUR role to list users
- Fix: Activate endpoint GET /gestionnaires (import GestionnairesModule in UserModule)
- Docs:
- Add note about backend fix for Gestionnaires module
- Update .cursorrules to forbid worktrees
- Seed:
- Add test data seed script (reset-and-seed-db.sh)
Co-authored-by: Cursor <cursoragent@cursor.com >
stable
2026-02-17 22:17:51 +01:00
jmartin
1fca0cf132
Merge branch 'master' of https://git.ptits-pas.fr/jmartin/petitspas
2026-02-16 16:22:16 +01:00
jmartin and Cursor
b16dd4b55c
merge: resolution conflits develop -> master (ticket #14 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-16 16:22:04 +01:00
jmartin and Cursor
8682421453
Merge develop into master (squash)
...
- feat(#90 ): API Inscription AM - POST /auth/register/am
- Suppression legacy register/parent/legacy
- BDD assistantes_maternelles alignée entité
- Script test register AM
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-16 16:19:23 +01:00
jmartin and Cursor
31bd8c3175
fix( #90 ): BDD assistantes_maternelles alignée entité + script test curl
...
- BDD.sql: ville_residence, annee_experience, specialite, date_agrement nullable
- scripts/test-register-am.sh pour tester POST /auth/register/am
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-16 16:18:06 +01:00
jmartin and Cursor
c94f2cf0d5
feat( #90 ): API Inscription AM - POST /auth/register/am
...
- DTO RegisterAMCompletDto (identité, photo, infos pro, CGU)
- Endpoint POST /auth/register/am + inscrireAMComplet() (transaction User + AssistanteMaternelle)
- Photo base64, token création MDP, consentement photo
- Suppression legacy: route register/parent/legacy, registerParent(), RegisterParentDto
- Frontend: ApiConfig.registerAM pour ticket #91
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-16 00:05:23 +01:00
jmartin and Cursor
dfe7daed14
Merge squash develop into master (incl. #14 première config setup/complete)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-15 23:20:15 +01:00
jmartin
111935e451
Merge branch 'feature/14-premiere-connexion-config' into develop ( #14 )
2026-02-15 23:20:00 +01:00
jmartin and Cursor
ae3292a7fc
fix(backend): setup/complete accepte userId null pour éviter erreur UUID ( #14 )
...
- completeSetup: userId = req.user?.id ?? null (plus de fallback 'system')
- markSetupCompleted(userId: string | null), set(..., userId ?? undefined)
- Corrige 'invalid input syntax for type uuid: "system"' au clic Sauvegarder
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-15 23:19:18 +01:00
jmartin and Cursor
8e8c6d79b1
feat( #14 ): finalisation redirection et nettoyage
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-15 23:08:02 +01:00
jmartin and Cursor
6752dc97b4
feat( #14 ): redirection première connexion config
...
- Redirection vers /login après première config réussie
- Gestion défensive des réponses API (200/201, bool/string)
- Force l'onglet Paramètres si setup non terminé
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-15 23:02:12 +01:00
jmartin and Cursor
31857ec891
docs( #14 ): note back config/setup + frontend parsing erreurs
...
- docs/14_NOTE-BACKEND-CONFIG-SETUP.md : modifs à faire côté back (UUID system)
- configuration_service : parsing défensif des réponses d'erreur (évite JSNull)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-13 16:10:04 +01:00
jmartin and Cursor
ca7ef862da
feat(admin): première connexion → panneau Paramètres, reste grisé jusqu'à Sauvegarder ( #14 )
...
- Au chargement admin: appel getSetupStatus(), si non terminé → onglet Paramètres par défaut
- Onglet Gestion des utilisateurs grisé et inaccessible tant que setup non complété
- Sauvegarder: updateBulk + completeSetup + déblocage des panneaux
- Tester SMTP: saveBulkOnly puis test (sans completeSetup, panneaux restent verrouillés)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-13 15:54:47 +01:00
jmartin and Cursor
11aa66feff
Merge squash develop into master (incl. #89 log API requests debug)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-13 15:26:06 +01:00
jmartin
358eefdab3
Merge branch 'feature/89-log-api-requests' into develop ( #89 )
2026-02-13 15:25:56 +01:00
jmartin and Cursor
d23f3c9f4f
feat(admin): panneau Paramètres - sauvegarde config + test SMTP ( #15 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-13 15:23:00 +01:00
jmartin and Cursor
1834eb8c79
feat(admin): panneau Paramètres - sauvegarde config + test SMTP
...
- Onglet Paramètres dans l'admin avec 3 sections (Email, Personnalisation, Avancé)
- Service ConfigurationService (GET config, PATCH bulk, POST test-smtp)
- Bouton Sauvegarder et bouton Tester SMTP (sauvegarde avant test)
- Endpoints api_config pour configuration
Closes #15
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-13 11:16:37 +01:00
jmartin and Cursor
0386785f81
feat(backend): log des appels API en mode debug ( #89 )
...
- Ajout LogRequestInterceptor (méthode, URL, query, body)
- Activé via LOG_API_REQUESTS=true
- Masquage des champs sensibles (password, smtp_password, token...)
- Enregistrement global dans main.ts, doc dans .env.example
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-13 11:15:41 +01:00
jmartin and Cursor
c43f55bed6
Merge origin/develop (conflit 23_LISTE-TICKETS résolu, garde numéros = Gitea)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-10 00:20:59 +01:00
jmartin and Cursor
0c48a5c06f
Merge branch 'develop' (docs concept v1.3, conflit résolu)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-10 00:20:32 +01:00
jmartin and Cursor
be8b1f23ed
docs: concept v1.3 config (panneau Paramètres 3 sections, numéros = Gitea)
...
- 21_CONFIGURATION-SYSTEME: workflow sans /admin/setup, 3 sections, panneau unique
- 23_LISTE-TICKETS: numéros de section = numéros Gitea, tickets #14/#15 alignés
- 24_DECISIONS-PROJET: config initiale = panneau + navigation bloquée
- BRIEFING-FRONTEND: tickets #12/#13 remplacés par panneau Paramètres
- Suppression login_screen.dart.bak
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-10 00:19:35 +01:00
jmartin and Cursor
18b270eaa3
Merge origin/develop: résolution conflits doc tickets
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-09 23:55:16 +01:00
jmartin and Cursor
68e4f54814
Merge develop (squash): correctifs modale MDP (champs lavande/jaune), doc tickets 84/85
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-09 23:53:58 +01:00
jmartin and Cursor
6794190916
chore(login): retrait du lien Test modale MDP
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-09 23:52:51 +01:00
jmartin and Cursor
790761d576
fix(modale): champs MDP actuel lavande, nouveau et confirmation jaune
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-09 23:52:25 +01:00
jmartin and Cursor
930097f87d
Merge develop: fix auth connexion admin ( #84 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-09 22:37:48 +01:00
jmartin and Cursor
18af5c9034
fix(auth): connexion admin - token snake_case, routes GoRouter, profil ( Closes #84 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-09 22:36:52 +01:00
jmartin and Cursor
10bf2553e7
fix(ui): renforcer ombre des boutons Parents/AM sur mobile (écran choix)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-08 19:15:10 +01:00
jmartin and Cursor
678f4219b5
docs: ticket #82 fermé (écran Login mobile)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-08 18:56:07 +01:00
jmartin and Cursor
5295e8ec72
Merge develop (squash): login mobile, formulaire sous slogan par ratio
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-08 18:54:16 +01:00
jmartin and Cursor
480f4a9396
fix(login): position formulaire sous slogan par ratio image (river_logo_mobile)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-08 18:53:37 +01:00
jmartin and Cursor
6bf0932da8
docs: Index, doc API Gitea et script fermeture issue
...
- docs/00_INDEX.md : entrée pour 26_GITEA-API
- docs/26_GITEA-API.md : procédure API Gitea (auth, issues, PR, branches, dépannage)
- scripts/gitea-close-issue.sh : fermer une issue via l'API (GITEA_TOKEN / .gitea-token)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-08 16:39:47 +01:00
jmartin and Cursor
2f1740b35f
docs: Ajouter ticket #83 RegisterChoiceScreen Mobile (terminé)
...
Mise à jour de la liste des tickets pour documenter le ticket #83 complété :
- Adaptation responsive RegisterChoiceScreen (mobile/desktop)
- Extraction ChoiceCardWidget réutilisable
- Bouton Précédent stylisé avec CustomNavigationButton
- Tailles icônes augmentées (140px/170px)
Total: 65 tickets (~184h)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-08 12:37:04 +01:00
jmartin and Cursor
fd97e68dd9
feat: Adapter RegisterChoiceScreen pour mobile ( Closes #83 )
...
- Implémentation responsive avec LayoutBuilder pour détecter mobile/desktop
- Mode mobile : titre au-dessus, carte pleine largeur avec ratio 2/3, boutons verticaux
- Mode desktop : chevron en haut à gauche, layout texte/carte côte à côte
- Extraction de la logique de carte dans ChoiceCardWidget réutilisable
- Bouton "Précédent" stylisé avec CustomNavigationButton et HoverReliefWidget
- Tailles d'icônes augmentées (140px mobile, 170px desktop)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-08 12:34:50 +01:00
jmartin and Cursor
813fdb8449
fix( #83 ): Corriger le style du bouton Précédent et ajuster les tailles d'icônes
...
Utilise CustomNavigationButton avec HoverReliefWidget pour le bouton Précédent en mode mobile, assurant la cohérence visuelle avec les autres écrans. Augmente également la taille des icônes de choix (140px mobile, 170px desktop).
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-08 12:33:48 +01:00
jmartin and Cursor
155c6ca4d5
chore(deps): Update pubspec.lock
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-08 11:44:47 +01:00
jmartin and Cursor
030ef81038
feat(frontend): Adapt RegisterChoiceScreen for mobile ( Closes #83 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-07 17:43:17 +01:00
jmartin and Cursor
0d88597bb6
test
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-07 17:42:09 +01:00
jmartin and Cursor
9b007fe490
docs: Mark tickets #38 , #39 , #40 , #41 , #42 as completed ( Closes #38 , Closes #39 , Closes #40 , Closes #41 , Closes #42 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-07 17:15:15 +01:00
jmartin and Cursor
7ecb99963c
docs: Update ticket list with #81 status ( Closes #81 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-07 17:10:47 +01:00
jmartin and Cursor
39814c76b1
docs: Update ticket list and cleanup obsolete files ( Closes #79 , Closes #80 )
...
- Delete obsolete nanny_registration_data.dart and nanny_register_confirmation_screen.dart
- Update 23_LISTE-TICKETS.md with #79 and #80 status
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-07 17:09:29 +01:00
jmartin
b956f94ad2
Merge branch 'develop'
2026-02-07 14:52:47 +01:00