3
3
## FreshmanAccount table ##
4
4
This table stores the basic metadata associated with a freshman before they pass
5
5
their 10-week evaluation.
6
+
6
7
* ` id ` : Autoincrementing primary key.
7
8
* ` name ` : The freshman's name
8
9
* ` eval_date ` : The date of the freshman's 10-week evaluation
10
+ * ` onfloor_status ` : Tracks whether they have been granted on-floor status.
11
+ * ` signatures_missed ` : Allows for members who do not get an account to have their missed signatures tracked.
9
12
10
13
## FreshmanEvalData table ##
11
14
This table stores the evaluations data for freshmen before they pass their
12
15
10-week evaluations.
16
+
13
17
* ` id ` : Autoincrementing primary key.
14
18
* ` uid ` : The freshman's LDAP uid (if they pass their packet)
15
19
* ` freshman_project ` : Their status on the freshman project (pending, passed,
@@ -19,9 +23,12 @@ This table stores the evaluations data for freshmen before they pass their
19
23
evals form)
20
24
* ` other_notes ` : Any other notes the freshman has attended (part of the fall
21
25
evals form)
26
+ * ` freshmen_eval_result ` : The result of introductory evaluations.
27
+ * ` active ` : Determines whether the freshman account is currently active / displayed.
22
28
23
29
## CommitteeMeeting table ##
24
30
This table stores a list of committee meetings.
31
+
25
32
* ` id ` : Autoincrementing primary key.
26
33
* ` committee ` : The committee the meeting belongs to.
27
34
* ` timestamp ` : The date and time of the meeting.
@@ -30,13 +37,15 @@ This table stores a list of committee meetings.
30
37
## MmeberCommitteeAttendance table ##
31
38
This table stores attendance for committee meetings for full members (i.e.
32
39
non-freshmen).
40
+
33
41
* ` id ` : Autoincrementing primary key.
34
42
* ` uid ` : The LDAP uid (i.e. username) of the member who attended the meeting
35
43
* ` meeting_id ` : Foreign key referencing the meeting that was attended
36
44
(` committee_meetings.id ` )
37
45
38
46
## FreshmanCommitteeAttendance table ##
39
47
This table stores attendance for committee meetings for freshmen.
48
+
40
49
* ` id ` : Autoincrementing primary key.
41
50
* ` fid ` : Foreign key referencing the freshman account for the freshman who
42
51
attended (` freshman_accounts.id ` ).
@@ -45,19 +54,22 @@ This table stores attendance for committee meetings for freshmen.
45
54
46
55
## TechnicalSeminar table ##
47
56
This table stores a list of technical seminars.
57
+
48
58
* ` id ` : Autoincrementing primary key.
49
59
* ` name ` : The name of the seminar
50
60
* ` active ` : Whether or not the seminar applies to the current year.
51
61
52
62
## MemberSeminarAttendance table ##
53
63
Stores seminar attendance for full members.
64
+
54
65
* ` id ` : Autoincrementing primary key.
55
66
* ` uid ` : The LDAP uid of the member who atended the seminar
56
67
* ` seminar_id ` : Foreign key referencing the seminar attended
57
68
(` technical_seminars.id ` )
58
69
59
70
## FreshmanSeminarAttendance table ##
60
71
Stores seminar attendance for freshmen.
72
+
61
73
* ` id ` : Autoincrementing primary key.
62
74
* ` fid ` : Foreign key referencing the freshman who attended the seminar
63
75
(` freshman_accounts.id ` )
@@ -66,14 +78,17 @@ Stores seminar attendance for freshmen.
66
78
67
79
## MajorProject table ##
68
80
Stores major projects through their entire lifetime.
81
+
69
82
* ` id ` : Autoincrementing primary key.
70
83
* ` uid ` : LDAP uid of the member the project belongs to
71
84
* ` name ` : Name of the major project
72
85
* ` description ` : Description of the project
73
86
* ` status ` : Status of the project (pending, passed, failed)
87
+ * ` active ` : Determines if the project is relevent to the current evaluations period.
74
88
75
89
## HouseMeeting table ##
76
90
Stores occurrences of house meeting.
91
+
77
92
* ` id ` : Autoincrementing primary key.
78
93
* ` date ` : Date the meeting occurred
79
94
* ` active ` : Whether or not the meeting applies to the current year
@@ -82,31 +97,72 @@ Stores occurrences of house meeting.
82
97
Stores house meeting attendance data for full members. If a member does not have
83
98
an entry for a given house meeting, that means they were not required to attend
84
99
that house meeting.
100
+
85
101
* ` id ` : Autoincrementing primary key.
86
102
* ` uid ` : LDAP uid of the member the attendance record is for
87
103
* ` meeting_id ` : Foreign key referencing the house meeting attended
88
104
(` house_meetings.id ` )
105
+ * ` excuse ` : Reason for not attending.
106
+ * ` attendance_status ` : Differenciates between storing an absent, excused, or present status.
89
107
90
108
## FreshmanHouseMeetingAttendance table ##
91
109
Stores house meeting attendance data for freshmen.
110
+
92
111
* ` id ` : Autoincrementing primary key.
93
112
* ` fid ` : Foreign key referencing the freshman the attendance record is for
94
113
(` freshman_accounts.id ` )
95
114
* ` meeting_id ` : Foreign key referencing the house meeting attended
96
115
(` house_meetings.id ` )
116
+ * ` excuse ` : Reason for not attending.
117
+ * ` attendance_status ` : Differenciates between storing an absent, excused, or present status.
97
118
98
119
## CurrentCoops table ##
99
120
Used to store members who are inactive and on co-op, to distinguish them from
100
121
members who are inactive but could potentially become active later in the
101
122
semester/year.
123
+
102
124
* ` id ` : Autoincrementing primary key.
103
125
* ` username ` : LDAP uid of the member on coop.
126
+ * ` active ` : Is the co-op still in progress?
127
+
128
+ ## OnFloorStatusAssigned table ##
129
+ When members are granted on-floor status plays a role in how they are ranked in the housing queue, making it important to store this information.
130
+
131
+ * ` uid ` : LDAP uid of the member.
132
+ * ` onfloor_granted ` : Date of on-floor vote.
133
+
134
+ ## Conditional table ##
135
+ Conditional, so we can store conditionals on Conditional.
136
+
137
+ * ` id ` : Autoincrementing primary key.
138
+ * ` uid ` : LDAP uid of the member in the conditional
139
+ * ` date_created ` : Date conditional assigned.
140
+ * ` date_due ` : Date conditional has to be completed by.
141
+ * ` active ` : Whether or not the conditional is currently relevent.
142
+ * ` status ` : Current completion status of the task assigned.
143
+
144
+ ## SpringEval table ##
145
+ Records the yearly results of member's spring evaluations.
146
+
147
+ * ` id ` : Autoincrementing primary key.
148
+ * ` uid ` : LDAP uid of the member being evaluated.
149
+ * ` active ` : Is this evaluation for the current year?
150
+ * ` date_created ` : The date of the evaluation.
151
+ * ` status ` : Result of the evaluation.
152
+
153
+
154
+
104
155
105
156
### Member state ###
106
- * ldap: active = 0; ldap: alumni = 1: Alumni. Don't track attendance.
107
- * ldap: active = 0; ldap: alumni = 0; in coop table: On coop. Track committee
157
+ * Not in LDAP Current Student group:
158
+ * Alumni. Don't track attendance.
159
+ * In LDAP Current Student group and in Co-Op Table:
160
+ * On coop. Track committee
108
161
meeting attendance, but not house meeting.
109
- * ldap: active = 0; ldap: alumni = 0; not in coop table: Present but not active
162
+ * In LDAP Current Student group but not in LDAP Active Group:
163
+ * Present but not active
110
164
yet. Track attendance as normal.
111
- * ldap: active = 1; ldap: alumni = 0: Active member. Track attendance as normal.
112
- * ldap: active = 1; ldap: alumni = 1: Invalid. Should not occur.
165
+ * In LDAP Current Student group and in LDAP Active group:
166
+ * Active member. Track attendance as normal.
167
+ * In LDAP Active group but not in LDAP Current Student Group:
168
+ * Invalid. Should not occur.
0 commit comments