1
1
const personGenerator = {
2
2
surnameJson : `{
3
- "count": 15 ,
3
+ "count": 16 ,
4
4
"list": {
5
5
"id_1": "Иванов",
6
6
"id_2": "Смирнов",
@@ -20,6 +20,21 @@ const personGenerator = {
20
20
"id_16": "Морозов"
21
21
}
22
22
}` ,
23
+ firstNameFemaleJson : `{
24
+ "count": 10,
25
+ "list": {
26
+ "id_1": "Екатерина",
27
+ "id_2": "Анна",
28
+ "id_3": "Рита",
29
+ "id_4": "Мария",
30
+ "id_5": "Юлия",
31
+ "id_6": "Алиса",
32
+ "id_7": "Полина",
33
+ "id_8": "Соня",
34
+ "id_9": "Ольга",
35
+ "id_10": "Елена"
36
+ }
37
+ }` ,
23
38
firstNameMaleJson : `{
24
39
"count": 10,
25
40
"list": {
@@ -35,6 +50,55 @@ const personGenerator = {
35
50
"id_10": "Андрей"
36
51
}
37
52
}` ,
53
+ middleNameJson : `{
54
+ "count": 10,
55
+ "list": {
56
+ "id_1": "Александро",
57
+ "id_2": "Максимо",
58
+ "id_3": "Ивано",
59
+ "id_4": "Артемо",
60
+ "id_5": "Дмитре",
61
+ "id_6": "Никито",
62
+ "id_7": "Михаило",
63
+ "id_8": "Даниило",
64
+ "id_9": "Егоро",
65
+ "id_10": "Андрее"
66
+ }
67
+ }` ,
68
+ monthJson : `{
69
+ "count": 12,
70
+ "list": {
71
+ "id_1": "Января",
72
+ "id_2": "Февраля",
73
+ "id_3": "Марта",
74
+ "id_4": "Апреля",
75
+ "id_5": "Мая",
76
+ "id_6": "Июня",
77
+ "id_7": "Июля",
78
+ "id_8": "Августа",
79
+ "id_9": "Сентября",
80
+ "id_10": "Октября",
81
+ "id_11": "Ноября",
82
+ "id_12": "Декабря"
83
+ }
84
+ }` ,
85
+ professionJson : `{
86
+ "count": 12,
87
+ "list": {
88
+ "id_1": "Шахтер",
89
+ "id_2": "Повар",
90
+ "id_3": "Врач",
91
+ "id_4": "Медсестра",
92
+ "id_5": "Водитель",
93
+ "id_6": "Строитель",
94
+ "id_7": "Официант",
95
+ "id_8": "Программист",
96
+ "id_9": "Инженер",
97
+ "id_10": "Солдат",
98
+ "id_11": "Менеджер",
99
+ "id_12": "Риэлтор"
100
+ }
101
+ }` ,
38
102
39
103
GENDER_MALE : 'Мужчина' ,
40
104
GENDER_FEMALE : 'Женщина' ,
@@ -53,18 +117,78 @@ const personGenerator = {
53
117
54
118
} ,
55
119
120
+ randomFirstNameShe : function ( ) {
121
+
122
+ return this . randomValue ( this . firstNameFemaleJson ) ;
123
+
124
+ } ,
56
125
57
- randomSurname : function ( ) {
126
+ randomSurname : function ( ) {
58
127
59
128
return this . randomValue ( this . surnameJson ) ;
60
129
61
130
} ,
62
131
132
+ randomMiddleName : function ( ) {
133
+
134
+ return this . randomValue ( this . middleNameJson ) ;
135
+
136
+ } ,
137
+
138
+ randomMonth : function ( ) {
139
+
140
+ return this . randomValue ( this . monthJson ) ;
141
+
142
+ } ,
143
+
144
+ randomProfession : function ( ) {
145
+
146
+ return this . randomValue ( this . professionJson ) ;
147
+
148
+ } ,
149
+
150
+ randomGender : function ( ) {
151
+ const randomGender = this . randomIntNumber ( 2 , 1 ) ;
152
+ if ( randomGender == 1 ) {
153
+ return this . GENDER_MALE ;
154
+ } else {
155
+ return this . GENDER_FEMALE ;
156
+ }
157
+ } ,
63
158
64
159
getPerson : function ( ) {
65
160
this . person = { } ;
66
- // this.person.gender = this.randomGender();
67
- this . person . firstName = this . randomFirstName ( ) ;
161
+ this . person . year = this . randomIntNumber ( 2002 , 1920 ) ;
162
+ const crazyYear = this . person . year % 4 ;
163
+ this . person . month = this . randomMonth ( ) ;
164
+ if ( ( this . person . month == "Апреля" ) || ( this . person . month == "Июня" ) || ( this . person . month == "Сентября" ) || ( this . person . month == "Ноября" ) ) {
165
+ this . person . day = this . randomIntNumber ( 30 , 1 ) ;
166
+ } else if ( this . person . month == "Февраля" ) {
167
+ if ( crazyYear == 0 ) {
168
+ this . person . day = this . randomIntNumber ( 29 , 1 ) ;
169
+ } else {
170
+ this . person . day = this . randomIntNumber ( 28 , 1 ) ; } ;
171
+ } else {
172
+ this . person . day = this . randomIntNumber ( 30 , 1 ) ; } ;
173
+ this . person . profession = this . randomProfession ( ) ;
174
+ if ( this . person . profession == "Медсестра" ) {
175
+ this . person . gender = this . GENDER_FEMALE ;
176
+ } else if ( ( this . person . profession == "Шахтер" ) || ( this . person . profession == "Строитель" ) || ( this . person . profession == "Солдат" ) ) {
177
+ this . person . gender = this . GENDER_MALE ;
178
+ } else {
179
+ this . person . gender = this . randomGender ( ) ;
180
+ } ;
181
+ if ( this . person . gender == this . GENDER_MALE ) {
182
+ this . person . firstName = this . randomFirstName ( ) ;
183
+ this . person . surname = this . randomSurname ( ) ;
184
+ this . person . middleName = `${ this . randomMiddleName ( ) } вич` ;
185
+ } else {
186
+ this . person . firstName = this . randomFirstNameShe ( ) ;
187
+ this . person . surname = `${ this . randomSurname ( ) } a` ;
188
+ this . person . middleName = `${ this . randomMiddleName ( ) } вна` ;
189
+ }
190
+
68
191
return this . person ;
69
- }
192
+ } ,
193
+
70
194
} ;
0 commit comments