chore(front): supprimer le préremplissage et les données aléatoires à l’inscription

- Parcours AM : plus de jeu de test Marie DUBOIS ni photo factice
- Parcours parent : plus de DataGenerator ; enfants vides à l’ajout
- Suppression de data_generator.dart (inutilisé)

Made-with: Cursor
This commit is contained in:
2026-03-28 18:07:46 +01:00
parent 0a07fade40
commit 481fa66630
8 changed files with 38 additions and 197 deletions
@@ -13,29 +13,15 @@ class AmRegisterStep1Screen extends StatelessWidget {
Widget build(BuildContext context) {
final registrationData = Provider.of<AmRegistrationData>(context, listen: false);
// Données de test : Marie DUBOIS (jeu de test 03_seed_test_data.sql / docs/test-data)
PersonalInfoData initialData;
if (registrationData.firstName.isEmpty) {
initialData = PersonalInfoData(
firstName: 'Marie',
lastName: 'DUBOIS',
phone: '0696345678',
email: 'marie.dubois@ptits-pas.fr',
address: '25 Rue de la République',
postalCode: '95870',
city: 'Bezons',
);
} else {
initialData = PersonalInfoData(
firstName: registrationData.firstName,
lastName: registrationData.lastName,
phone: registrationData.phone,
email: registrationData.email,
address: registrationData.streetAddress,
postalCode: registrationData.postalCode,
city: registrationData.city,
);
}
final initialData = PersonalInfoData(
firstName: registrationData.firstName,
lastName: registrationData.lastName,
phone: registrationData.phone,
email: registrationData.email,
address: registrationData.streetAddress,
postalCode: registrationData.postalCode,
city: registrationData.city,
);
return PersonalInfoFormScreen(
stepText: 'Étape 1/4',
@@ -1,8 +1,6 @@
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'package:go_router/go_router.dart';
import 'package:intl/intl.dart';
import 'dart:io';
import '../../models/am_registration_data.dart';
import '../../models/card_assets.dart';
@@ -17,24 +15,9 @@ class AmRegisterStep2Screen extends StatefulWidget {
class _AmRegisterStep2ScreenState extends State<AmRegisterStep2Screen> {
String? _photoPathFramework;
File? _photoFile;
Future<void> _pickPhoto() async {
// TODO: Remplacer par la vraie logique ImagePicker
// final imagePicker = ImagePicker();
// final pickedFile = await imagePicker.pickImage(source: ImageSource.gallery);
// if (pickedFile != null) {
// setState(() {
// _photoFile = File(pickedFile.path);
// _photoPathFramework = pickedFile.path;
// });
// } else {
setState(() {
_photoPathFramework = 'assets/images/icon_assmat.png';
_photoFile = null;
});
// }
print("Photo sélectionnée: $_photoPathFramework");
// TODO: brancher ImagePicker ; ne pas préremplir de chemin factice
}
@override
@@ -53,20 +36,6 @@ class _AmRegisterStep2ScreenState extends State<AmRegisterStep2Screen> {
capacity: registrationData.capacity,
);
// Données de test : Marie DUBOIS (jeu de test 03_seed_test_data.sql / docs/test-data)
if (registrationData.dateOfBirth == null && registrationData.nir.isEmpty) {
initialData = ProfessionalInfoData(
photoPath: 'assets/images/icon_assmat.png',
photoConsent: true,
dateOfBirth: DateTime(1980, 6, 8),
birthCity: 'Bezons',
birthCountry: 'France',
nir: '280062A00100191',
agrementNumber: 'AGR-2019-095001',
capacity: 4,
);
}
return ProfessionalInfoFormScreen(
stepText: 'Étape 2/4',
title: 'Vos informations professionnelles',
@@ -13,22 +13,13 @@ class AmRegisterStep3Screen extends StatelessWidget {
Widget build(BuildContext context) {
final data = Provider.of<AmRegistrationData>(context, listen: false);
// Données de test : Marie DUBOIS (jeu de test 03_seed_test_data.sql / docs/test-data)
String initialText = data.presentationText;
bool initialCgu = data.cguAccepted;
if (initialText.isEmpty) {
initialText = 'Assistante maternelle agréée depuis 2019. Spécialité bébés 0-18 mois. Accueil bienveillant et cadre sécurisant. 2 places disponibles.';
initialCgu = true;
}
return PresentationFormScreen(
stepText: 'Étape 3/4',
title: 'Présentation et Conditions',
cardColor: CardColorHorizontal.peach,
textFieldHint: 'Ex: Disponible immédiatement, 10 ans d\'expérience, formation premiers secours...',
initialText: initialText,
initialCguAccepted: initialCgu,
initialText: data.presentationText,
initialCguAccepted: data.cguAccepted,
previousRoute: '/am-register-step2',
onSubmit: (text, cguAccepted) {
data.updatePresentationAndCgu(
@@ -3,7 +3,6 @@ import 'package:provider/provider.dart';
import 'package:go_router/go_router.dart';
import '../../models/user_registration_data.dart';
import '../../utils/data_generator.dart';
import '../../widgets/personal_info_form_screen.dart';
import '../../models/card_assets.dart';
@@ -15,31 +14,15 @@ class ParentRegisterStep1Screen extends StatelessWidget {
final registrationData = Provider.of<UserRegistrationData>(context, listen: false);
final parent1 = registrationData.parent1;
// Générer des données de test si vide
PersonalInfoData initialData;
if (parent1.firstName.isEmpty) {
final genFirstName = DataGenerator.firstName();
final genLastName = DataGenerator.lastName();
initialData = PersonalInfoData(
firstName: genFirstName,
lastName: genLastName,
phone: DataGenerator.phone(),
email: DataGenerator.email(genFirstName, genLastName),
address: DataGenerator.address(),
postalCode: DataGenerator.postalCode(),
city: DataGenerator.city(),
);
} else {
initialData = PersonalInfoData(
firstName: parent1.firstName,
lastName: parent1.lastName,
phone: parent1.phone,
email: parent1.email,
address: parent1.address,
postalCode: parent1.postalCode,
city: parent1.city,
);
}
final initialData = PersonalInfoData(
firstName: parent1.firstName,
lastName: parent1.lastName,
phone: parent1.phone,
email: parent1.email,
address: parent1.address,
postalCode: parent1.postalCode,
city: parent1.city,
);
return PersonalInfoFormScreen(
stepText: 'Étape 1/5',
@@ -3,7 +3,6 @@ import 'package:provider/provider.dart';
import 'package:go_router/go_router.dart';
import '../../models/user_registration_data.dart';
import '../../utils/data_generator.dart';
import '../../widgets/personal_info_form_screen.dart';
import '../../models/card_assets.dart';
@@ -19,21 +18,17 @@ class ParentRegisterStep2Screen extends StatelessWidget {
bool hasParent2 = parent2 != null;
bool sameAddress = false;
// Générer des données de test si vide
PersonalInfoData initialData;
if (parent2 == null || parent2.firstName.isEmpty) {
final genFirstName = DataGenerator.firstName();
final genLastName = DataGenerator.lastName();
sameAddress = DataGenerator.boolean();
sameAddress = false;
initialData = PersonalInfoData(
firstName: genFirstName,
lastName: genLastName,
phone: DataGenerator.phone(),
email: DataGenerator.email(genFirstName, genLastName),
address: sameAddress ? parent1.address : DataGenerator.address(),
postalCode: sameAddress ? parent1.postalCode : DataGenerator.postalCode(),
city: sameAddress ? parent1.city : DataGenerator.city(),
firstName: parent2?.firstName ?? '',
lastName: parent2?.lastName ?? '',
phone: parent2?.phone ?? '',
email: parent2?.email ?? '',
address: parent2?.address ?? '',
postalCode: parent2?.postalCode ?? '',
city: parent2?.city ?? '',
);
} else {
sameAddress = (parent2.address == parent1.address &&
@@ -7,7 +7,6 @@ import '../../widgets/hover_relief_widget.dart';
import '../../widgets/child_card_widget.dart';
import '../../widgets/custom_navigation_button.dart';
import '../../models/user_registration_data.dart';
import '../../utils/data_generator.dart';
import '../../models/card_assets.dart';
import '../../config/display_config.dart';
import 'package:provider/provider.dart';
@@ -92,8 +91,6 @@ class _ParentRegisterStep3ScreenState extends State<ParentRegisterStep3Screen> {
void _addChild(UserRegistrationData registrationData) { // Prend registrationData
setState(() {
bool isUnborn = DataGenerator.boolean();
// Trouver la première couleur non utilisée
CardColorVertical cardColor = _childCardColors.firstWhere(
(color) => !_usedColors.contains(color),
@@ -102,11 +99,11 @@ class _ParentRegisterStep3ScreenState extends State<ParentRegisterStep3Screen> {
final newChild = ChildData(
lastName: registrationData.parent1.lastName,
firstName: DataGenerator.firstName(),
dob: DataGenerator.dob(isUnborn: isUnborn),
isUnbornChild: isUnborn,
photoConsent: DataGenerator.boolean(),
multipleBirth: DataGenerator.boolean(),
firstName: '',
dob: '',
isUnbornChild: false,
photoConsent: false,
multipleBirth: false,
cardColor: cardColor,
);
registrationData.addChild(newChild);
@@ -317,7 +314,7 @@ class _ParentRegisterStep3ScreenState extends State<ParentRegisterStep3Screen> {
onToggleIsUnborn: (newValue) {
final oldChild = registrationData.children[index];
registrationData.updateChild(index, ChildData(
firstName: oldChild.firstName, lastName: oldChild.lastName, dob: DataGenerator.dob(isUnborn: newValue),
firstName: oldChild.firstName, lastName: oldChild.lastName, dob: oldChild.dob,
photoConsent: oldChild.photoConsent, multipleBirth: oldChild.multipleBirth, isUnbornChild: newValue,
imageFile: oldChild.imageFile, cardColor: oldChild.cardColor
));
@@ -423,7 +420,7 @@ class _ParentRegisterStep3ScreenState extends State<ParentRegisterStep3Screen> {
onToggleIsUnborn: (newValue) {
final oldChild = registrationData.children[index];
registrationData.updateChild(index, ChildData(
firstName: oldChild.firstName, lastName: oldChild.lastName, dob: DataGenerator.dob(isUnborn: newValue),
firstName: oldChild.firstName, lastName: oldChild.lastName, dob: oldChild.dob,
photoConsent: oldChild.photoConsent, multipleBirth: oldChild.multipleBirth, isUnbornChild: newValue,
imageFile: oldChild.imageFile, cardColor: oldChild.cardColor
));
@@ -5,7 +5,6 @@ import 'package:go_router/go_router.dart';
import '../../models/user_registration_data.dart';
import '../../widgets/presentation_form_screen.dart';
import '../../models/card_assets.dart';
import '../../utils/data_generator.dart';
class ParentRegisterStep4Screen extends StatelessWidget {
const ParentRegisterStep4Screen({super.key});
@@ -14,22 +13,13 @@ class ParentRegisterStep4Screen extends StatelessWidget {
Widget build(BuildContext context) {
final registrationData = Provider.of<UserRegistrationData>(context, listen: false);
// Générer un texte de test si vide
String initialText = registrationData.motivationText;
bool initialCgu = registrationData.cguAccepted;
if (initialText.isEmpty) {
initialText = DataGenerator.motivation();
initialCgu = true;
}
return PresentationFormScreen(
stepText: 'Étape 4/5',
title: 'Motivation de votre demande',
cardColor: CardColorHorizontal.green,
textFieldHint: 'Écrivez ici pour motiver votre demande...',
initialText: initialText,
initialCguAccepted: initialCgu,
initialText: registrationData.motivationText,
initialCguAccepted: registrationData.cguAccepted,
previousRoute: '/parent-register-step3',
onSubmit: (text, cguAccepted) {
registrationData.updateMotivation(text);