- Ajout champ gender (H/F) dans ChildData avec sélecteur radio - Correction indicateur étape: 3/5 → 3/6 - Suppression commentaires inutiles et code obsolète - Suppression print() pour gestion silencieuse des erreurs - Ajout méthode gender() dans DataGenerator Ticket #38
99 lines
2.2 KiB
Dart
99 lines
2.2 KiB
Dart
import 'dart:io'; // Pour File
|
|
import '../models/card_assets.dart'; // Import de l'enum CardColorVertical
|
|
|
|
class ParentData {
|
|
String firstName;
|
|
String lastName;
|
|
String address; // Rue et numéro
|
|
String postalCode; // Ajout
|
|
String city; // Ajout
|
|
String phone;
|
|
String email;
|
|
String password; // Peut-être pas nécessaire pour le récap, mais pour la création initiale si
|
|
File? profilePicture; // Chemin ou objet File
|
|
|
|
ParentData({
|
|
this.firstName = '',
|
|
this.lastName = '',
|
|
this.address = '', // Rue
|
|
this.postalCode = '', // Ajout
|
|
this.city = '', // Ajout
|
|
this.phone = '',
|
|
this.email = '',
|
|
this.password = '',
|
|
this.profilePicture,
|
|
});
|
|
}
|
|
|
|
class ChildData {
|
|
String firstName;
|
|
String lastName;
|
|
String dob;
|
|
String gender;
|
|
bool photoConsent;
|
|
bool multipleBirth;
|
|
bool isUnbornChild;
|
|
File? imageFile;
|
|
CardColorVertical cardColor;
|
|
|
|
ChildData({
|
|
this.firstName = '',
|
|
this.lastName = '',
|
|
this.dob = '',
|
|
this.gender = 'F',
|
|
this.photoConsent = false,
|
|
this.multipleBirth = false,
|
|
this.isUnbornChild = false,
|
|
this.imageFile,
|
|
required this.cardColor,
|
|
});
|
|
}
|
|
|
|
class UserRegistrationData {
|
|
ParentData parent1;
|
|
ParentData? parent2; // Optionnel
|
|
List<ChildData> children;
|
|
String motivationText;
|
|
bool cguAccepted;
|
|
|
|
UserRegistrationData({
|
|
ParentData? parent1Data,
|
|
this.parent2,
|
|
List<ChildData>? childrenData,
|
|
this.motivationText = '',
|
|
this.cguAccepted = false,
|
|
}) : parent1 = parent1Data ?? ParentData(),
|
|
children = childrenData ?? [];
|
|
|
|
// Méthode pour ajouter/mettre à jour le parent 1
|
|
void updateParent1(ParentData data) {
|
|
parent1 = data;
|
|
}
|
|
|
|
// Méthode pour ajouter/mettre à jour le parent 2
|
|
void updateParent2(ParentData? data) {
|
|
parent2 = data;
|
|
}
|
|
|
|
// Méthode pour ajouter un enfant
|
|
void addChild(ChildData child) {
|
|
children.add(child);
|
|
}
|
|
|
|
// Méthode pour mettre à jour un enfant (si nécessaire plus tard)
|
|
void updateChild(int index, ChildData child) {
|
|
if (index >= 0 && index < children.length) {
|
|
children[index] = child;
|
|
}
|
|
}
|
|
|
|
// Mettre à jour la motivation
|
|
void updateMotivation(String text) {
|
|
motivationText = text;
|
|
}
|
|
|
|
// Accepter les CGU
|
|
void acceptCGU() {
|
|
cguAccepted = true;
|
|
}
|
|
} |