-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathPersonObject.py
More file actions
201 lines (150 loc) · 5.36 KB
/
PersonObject.py
File metadata and controls
201 lines (150 loc) · 5.36 KB
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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
import datetime
# multiple language support
YESANSWERS = ['Yes', 'Sí', 'Oui']
class PersonObject:
def __init__(self):
self._name = []
self._birthdate = None
self._todaysdate = None
self._address = []
self._phones = []
self._email = None
self._em_contact = None
self._gender = None
self._latino = False
self._ethnicity_list = []
self._working_declaration = None
self._studied_in_US = False
self._highest_us_grade = None
self._highest_ny_grade = None
self._last_ny_schoolname = None
self._finished_hs = False
self._finished_uni = False
self._country_years = None
self._dependents = []
self._single_parent = False
self._has_dependents = False
self._learning_barriers = []
self._start_date = None
def get_birthdate(self):
return self._birthdate
def get_address(self):
return self._address
def get_fullname(self):
return self._name
def update_name(self, fname, lname) :
self._name.extend([fname, lname])
def update_dates(self, birthdate, todaysdate):
self._birthdate = birthdate
self._todaysdate = todaysdate
def update_entire_address(self, address):
#print(self._address)
self._address = address
# print(self._address)
def update_phone_numbers(self, phones):
self._phones = phones
#print(self._phones)
def get_phone_numbers(self):
return self._phones
def update_email(self, email):
self._email = email
def get_email(self):
return self._email
def update_emergency_contact(self, em_con):
if em_con is not None:
self._em_contact = em_con
def update_gender(self, gender):
self._gender = gender
def update_latino(self, declaration):
if declaration in YESANSWERS:
self._latino = True
else:
self._latino = False
def update_ethnicity(self, ethnicity_list):
self._ethnicity_list = ethnicity_list
def update_employment(self, employment):
self._working_declaration = employment
def update_us_studies(self, studies, us_study_list):
if studies in YESANSWERS:
self._studied_in_US = True
self._highest_us_grade = us_study_list[0]
self._highest_ny_grade = us_study_list[1]
if us_study_list[-1] != 'None':
self._last_ny_schoolname = us_study_list[-1]
def update_oconus_studies(self, finish_hs_oconus, finish_uni_oconus, years):
if finish_hs_oconus in YESANSWERS:
self._finished_hs = True
else:
self.update_oconus_study_years(years)
if finish_uni_oconus in YESANSWERS:
self._finished_uni = True
def update_oconus_study_years(self, years_studied):
self._country_years = years_studied
def update_dependents(self, has_deps, single_par, zero_to_four ,five_to_ten, ele_to_thir, four_to_eigh):
if has_deps in YESANSWERS:
self._has_dependents = True
self._dependents = [zero_to_four, five_to_ten, ele_to_thir, four_to_eigh]
if single_par in YESANSWERS:
self._single_parent = True
def update_learning_barriers(self, learning_barriers):
self._learning_barriers = learning_barriers
def get_learning_barriers(self):
return self._learning_barriers
def __str__(self):
return " ".join(self._name[0:2])
def get_em_contact(self):
return self._em_contact
def get_gender(self):
return self._gender
def get_latinoa(self):
return self._latino
def get_ethnicities(self):
return self._ethnicity_list
def get_working_declaration(self):
return self._working_declaration
def get_studied_in_us(self):
return self._studied_in_US
def get_highest_us_grade(self):
return self._highest_us_grade
def get_highest_ny_grade(self):
return self._highest_ny_grade
def get_ny_school(self):
return self._last_ny_schoolname
def get_country_years(self):
return self._country_years
def get_dependent_status(self):
return self._has_dependents
def get_finished_hs(self):
return self._finished_hs
def get_finished_uni(self):
return self._finished_uni
def single_parent(self):
return self._single_parent
def get_dependents(self):
# print(self._dependents)
return self._dependents
def set_program_startdate(self, start_date):
# in '6/10/2020 4:21:23' format
# start_date = start_date.replace("2020", "20")
self._start_date = start_date
def get_program_startdate(self):
if self._start_date is None:
today = datetime.date.today()
else:
today = self._start_date
month = today.month
if month < 10:
month = "0" + str(month)
day = today.day
if day < 10:
day = "0" + str(day)
year = str(today.year)
current_day = "{m}{d}{y}".format(m=month, d=day, y=year)
return current_day
class SingletonPersons:
def __init__(self):
self._persons = []
def get_person_list(self):
return self._persons
def add_person(self, person):
self._persons.append(person)