-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathstd.dart
96 lines (68 loc) · 1.63 KB
/
std.dart
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
import 'demodata.dart';
void main() {
List<Std> allStds = [];
std.forEach((key, value) {
List<FamilyMember> allMembers = [];
value['familyMember'].forEach((v) {
FamilyMember newMember = FamilyMember.fromMap(v);
allMembers.add(newMember);
});
Std newStd = Std(
value['name'],
value['email'],
value['age'],
allMembers,
);
newStd.setCounter(10);
allStds.add(newStd);
});
FamilMemberController controller = FamilMemberController();
print(allStds[0].families);
controller.addNewFamilyMember(allStds[0], newMember);
controller.addNewFamilyMember(allStds[1], newMember);
// addNewFamilyMember(allStds[0], newMember);
print(allStds[0].families);
}
class Std{
String name;
String email;
int age;
List<FamilyMember> families;
static int _counter = 0;
int get counterValue => _counter;
int getCounter() {
return _counter;
}
int setCounter(int newValue) {
_counter = newValue;
return _counter;
}
Std(this.name, this.email, this.age, this.families) {
_counter++;
}
factory Std.fromMap(Map<String, dynamic> i) {
return Std(
i['name'],
i['email'],
i['age'],
i['familyMember']
);
}
}
class FamilyMember{
String name;
int age;
FamilyMember(this.name, this.age);
factory FamilyMember.fromMap(Map<String, dynamic> i) {
return FamilyMember(
i['name'],
i['age']
);
}
}
class FamilMemberController{
addNewFamilyMember(Std std, Map<String, dynamic> newMemberData) {
FamilyMember newMember = FamilyMember.fromMap(newMemberData);
std.families.add(newMember);
}
}