cloud-ide-model-schema 1.1.103 → 1.1.105

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/lib/schema/admission/admission_application_main.d.ts +23 -0
  2. package/lib/schema/admission/admission_application_main.js +1102 -0
  3. package/lib/schema/admission/admission_document_uploads.d.ts +23 -0
  4. package/lib/schema/admission/admission_document_uploads.js +216 -0
  5. package/lib/schema/admission/admission_elective_detail.d.ts +23 -0
  6. package/lib/schema/admission/admission_elective_detail.js +127 -0
  7. package/lib/schema/admission/admission_status_history.d.ts +23 -0
  8. package/lib/schema/admission/admission_status_history.js +133 -0
  9. package/lib/schema/admission/index.d.ts +4 -0
  10. package/lib/schema/admission/index.js +20 -0
  11. package/lib/schema/core/core_board_exam_pattern.d.ts +23 -0
  12. package/lib/schema/core/core_board_exam_pattern.js +153 -0
  13. package/lib/schema/core/core_board_grade_system.d.ts +23 -0
  14. package/lib/schema/core/core_board_grade_system.js +211 -0
  15. package/lib/schema/core/core_education_board.d.ts +23 -0
  16. package/lib/schema/core/core_education_board.js +131 -0
  17. package/lib/schema/core/core_entity_udise.d.ts +23 -0
  18. package/lib/schema/core/core_entity_udise.js +114 -0
  19. package/lib/schema/core/core_school_board_affiliation.d.ts +23 -0
  20. package/lib/schema/core/core_school_board_affiliation.js +77 -0
  21. package/lib/schema/core/core_system_entity.js +4 -2
  22. package/lib/schema/core/core_system_nationality.d.ts +8 -0
  23. package/lib/schema/core/core_system_nationality.js +100 -0
  24. package/lib/schema/core/index.d.ts +18 -2
  25. package/lib/schema/core/index.js +13 -1
  26. package/lib/schema/frontdesk/fdsk_leads.js +4 -0
  27. package/lib/schema/frontdesk/index.d.ts +0 -2
  28. package/lib/schema/frontdesk/index.js +0 -2
  29. package/lib/schema/index.d.ts +1 -0
  30. package/lib/schema/index.js +1 -0
  31. package/package.json +2 -2
@@ -0,0 +1,1102 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CAdmissionApplicationMain = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ /* SCHEMA START */
6
+ var admission_application_main = new mongoose_1.Schema({
7
+ // APPLICATION IDENTIFIERS
8
+ admap_application_number: {
9
+ type: String,
10
+ required: true,
11
+ unique: true,
12
+ maxlength: 50,
13
+ trim: true,
14
+ comment: "Unique application number (e.g., APP2026-EL-001)"
15
+ },
16
+ admap_student_id: {
17
+ type: String,
18
+ maxlength: 50,
19
+ trim: true,
20
+ unique: true,
21
+ sparse: true,
22
+ comment: "Assigned after admission acceptance (NULL until admission)"
23
+ },
24
+ // SECTION 1: STUDENT PERSONAL IDENTIFICATION
25
+ admap_first_name: {
26
+ type: String,
27
+ required: true,
28
+ minlength: 1,
29
+ maxlength: 100,
30
+ trim: true
31
+ },
32
+ admap_middle_name: {
33
+ type: String,
34
+ maxlength: 100,
35
+ trim: true
36
+ },
37
+ admap_last_name: {
38
+ type: String,
39
+ required: true,
40
+ minlength: 1,
41
+ maxlength: 100,
42
+ trim: true
43
+ },
44
+ admap_preferred_name: {
45
+ type: String,
46
+ maxlength: 255,
47
+ trim: true
48
+ },
49
+ admap_date_of_birth: {
50
+ type: Date,
51
+ required: true
52
+ },
53
+ admap_place_of_birth: {
54
+ type: String,
55
+ maxlength: 255,
56
+ trim: true
57
+ },
58
+ admap_gender_id_sygms: {
59
+ type: mongoose_1.default.Schema.Types.ObjectId,
60
+ ref: "core_general_master",
61
+ comment: "Gender (Male, Female, Non-binary, Prefer not to state) - Reference to core_general_master with type 'GENDER'"
62
+ },
63
+ admap_citizenship_status_id_sygms: {
64
+ type: mongoose_1.default.Schema.Types.ObjectId,
65
+ ref: "core_general_master",
66
+ comment: "Citizenship status (Citizen, Permanent Resident, International, Other) - Reference to core_general_master with type 'CITIZENSHIP_STATUS'"
67
+ },
68
+ admap_nationality_id_synat: {
69
+ type: mongoose_1.default.Schema.Types.ObjectId,
70
+ ref: "core_system_nationality",
71
+ comment: "Nationality - Reference to core_system_nationality"
72
+ },
73
+ admap_passport_number: {
74
+ type: String,
75
+ maxlength: 100,
76
+ trim: true,
77
+ comment: "Required for international students"
78
+ },
79
+ admap_passport_expiry_date: {
80
+ type: Date,
81
+ comment: "Required for international students"
82
+ },
83
+ admap_visa_status: {
84
+ type: String,
85
+ maxlength: 100,
86
+ trim: true,
87
+ enum: ["Student Visa", "Tourist Visa", "Pending", "Not Required"]
88
+ },
89
+ admap_marital_status: {
90
+ type: String,
91
+ maxlength: 50,
92
+ trim: true,
93
+ enum: ["Single", "Married", "Divorced", "Widowed"]
94
+ },
95
+ admap_blood_group_id_sygms: {
96
+ type: mongoose_1.default.Schema.Types.ObjectId,
97
+ ref: "core_general_master",
98
+ comment: "Blood group (A+, A-, B+, B-, AB+, AB-, O+, O-) - Reference to core_general_master with type 'BLOOD_GROUP'"
99
+ },
100
+ admap_photo_id_cyfm: {
101
+ type: mongoose_1.default.Schema.Types.ObjectId,
102
+ ref: "core_file_manager",
103
+ comment: "Student photo file manager ID"
104
+ },
105
+ // SECTION 2: CONTACT & ADDRESS INFORMATION
106
+ admap_primary_email: {
107
+ type: String,
108
+ required: true,
109
+ maxlength: 255,
110
+ trim: true,
111
+ lowercase: true,
112
+ match: [/^\S+@\S+\.\S+$/, "Please enter a valid email"]
113
+ },
114
+ admap_alternative_email: {
115
+ type: String,
116
+ maxlength: 255,
117
+ trim: true,
118
+ lowercase: true
119
+ },
120
+ admap_mobile_phone: {
121
+ type: String,
122
+ required: true,
123
+ maxlength: 50,
124
+ trim: true
125
+ },
126
+ admap_country_telephone_code_syctr: {
127
+ type: mongoose_1.default.Schema.Types.ObjectId,
128
+ ref: "core_system_country",
129
+ comment: "Country telephone code - Reference to core_system_country (syctr_country_telephone_code)"
130
+ },
131
+ admap_alternative_phone: {
132
+ type: String,
133
+ maxlength: 50,
134
+ trim: true
135
+ },
136
+ admap_permanent_street_address: {
137
+ type: String,
138
+ required: true,
139
+ maxlength: 255,
140
+ trim: true
141
+ },
142
+ admap_city_sypin: {
143
+ type: mongoose_1.default.Schema.Types.ObjectId,
144
+ ref: "core_pin_code",
145
+ comment: "City - Reference to core_pin_code (sypin_district)"
146
+ },
147
+ admap_state_sypin: {
148
+ type: mongoose_1.default.Schema.Types.ObjectId,
149
+ ref: "core_pin_code",
150
+ comment: "State - Reference to core_pin_code (sypin_state_name)"
151
+ },
152
+ admap_zip_postal_code: {
153
+ type: String,
154
+ required: true,
155
+ maxlength: 20,
156
+ trim: true
157
+ },
158
+ admap_country_syctr: {
159
+ type: mongoose_1.default.Schema.Types.ObjectId,
160
+ ref: "core_system_country",
161
+ comment: "Country - Reference to core_system_country"
162
+ },
163
+ admap_correspondence_address_same: {
164
+ type: Boolean,
165
+ default: true
166
+ },
167
+ admap_correspondence_street_address: {
168
+ type: String,
169
+ maxlength: 255,
170
+ trim: true
171
+ },
172
+ admap_correspondence_city_sypin: {
173
+ type: mongoose_1.default.Schema.Types.ObjectId,
174
+ ref: "core_pin_code",
175
+ comment: "Correspondence city - Reference to core_pin_code (sypin_district)"
176
+ },
177
+ admap_correspondence_state_sypin: {
178
+ type: mongoose_1.default.Schema.Types.ObjectId,
179
+ ref: "core_pin_code",
180
+ comment: "Correspondence state - Reference to core_pin_code (sypin_state_name)"
181
+ },
182
+ admap_correspondence_zip_postal_code: {
183
+ type: String,
184
+ maxlength: 20,
185
+ trim: true
186
+ },
187
+ admap_correspondence_country_syctr: {
188
+ type: mongoose_1.default.Schema.Types.ObjectId,
189
+ ref: "core_system_country",
190
+ comment: "Correspondence country - Reference to core_system_country"
191
+ },
192
+ admap_pin_sypin: {
193
+ type: mongoose_1.default.Schema.Types.ObjectId,
194
+ ref: "core_pin_code",
195
+ comment: "PIN code - Reference to core_pin_code"
196
+ },
197
+ // SECTION 3: ACADEMIC HISTORY
198
+ admap_program_applying_for: {
199
+ type: String,
200
+ required: true,
201
+ maxlength: 255,
202
+ trim: true,
203
+ comment: "Program name (e.g., Kindergarten, Grade 10, BBA, Engineering)"
204
+ },
205
+ admap_program_category: {
206
+ type: String,
207
+ required: true,
208
+ maxlength: 100,
209
+ trim: true,
210
+ enum: ["School", "MBBA/BBA", "Engineering", "Other"],
211
+ comment: "Category: School, MBBA/BBA, Engineering, etc."
212
+ },
213
+ admap_grade_level_applying_for: {
214
+ type: String,
215
+ maxlength: 50,
216
+ trim: true,
217
+ comment: "Grade level (e.g., Kindergarten, Grade 6, Grade 10)"
218
+ },
219
+ admap_age_at_enrollment: {
220
+ type: Number,
221
+ min: 0,
222
+ max: 100,
223
+ comment: "Calculated from date of birth and entry semester"
224
+ },
225
+ admap_entry_semester_term: {
226
+ type: String,
227
+ required: true,
228
+ maxlength: 50,
229
+ trim: true,
230
+ comment: "Entry semester/term (e.g., Fall 2026, Spring 2027)"
231
+ },
232
+ admap_academic_year_id_acayr: {
233
+ type: mongoose_1.default.Schema.Types.ObjectId,
234
+ ref: "aca_academic_year",
235
+ required: true
236
+ },
237
+ admap_highest_level_of_education: {
238
+ type: String,
239
+ required: true,
240
+ maxlength: 100,
241
+ trim: true,
242
+ comment: "Previous education level (e.g., Pre-Kindergarten, Grade 9, High School Diploma)"
243
+ },
244
+ admap_previous_institution_name: {
245
+ type: String,
246
+ required: true,
247
+ maxlength: 255,
248
+ trim: true
249
+ },
250
+ admap_previous_institution_type: {
251
+ type: String,
252
+ maxlength: 100,
253
+ trim: true,
254
+ enum: ["Public", "Private", "International", "Homeschool", "Other"]
255
+ },
256
+ admap_previous_institution_location: {
257
+ type: String,
258
+ maxlength: 255,
259
+ trim: true
260
+ },
261
+ admap_previous_institution_country: {
262
+ type: String,
263
+ maxlength: 100,
264
+ trim: true
265
+ },
266
+ admap_previous_grade_level: {
267
+ type: String,
268
+ maxlength: 50,
269
+ trim: true
270
+ },
271
+ admap_graduation_date_previous: {
272
+ type: Date,
273
+ comment: "Graduation date from previous institution"
274
+ },
275
+ admap_gpa_final_grade: {
276
+ type: Number,
277
+ min: 0,
278
+ max: 10,
279
+ comment: "GPA from previous institution"
280
+ },
281
+ admap_gpa_scale: {
282
+ type: String,
283
+ maxlength: 10,
284
+ trim: true,
285
+ default: "4.0",
286
+ comment: "GPA scale (e.g., 4.0, 5.0, 100)"
287
+ },
288
+ admap_grade_percentage: {
289
+ type: Number,
290
+ min: 0,
291
+ max: 100,
292
+ comment: "Grade percentage"
293
+ },
294
+ admap_standardized_test_scores: {
295
+ type: String,
296
+ maxlength: 500,
297
+ trim: true,
298
+ comment: "Test scores (e.g., SAT: 1520, ACT: 34, TOEFL: 95)"
299
+ },
300
+ admap_entrance_exam_score: {
301
+ type: Number,
302
+ min: 0,
303
+ comment: "Entrance exam score"
304
+ },
305
+ admap_entrance_exam_date: {
306
+ type: Date,
307
+ comment: "Entrance exam date"
308
+ },
309
+ admap_attendance_record: {
310
+ type: String,
311
+ maxlength: 100,
312
+ trim: true,
313
+ comment: "Attendance percentage or record"
314
+ },
315
+ admap_behavior_record: {
316
+ type: String,
317
+ maxlength: 500,
318
+ trim: true,
319
+ comment: "Behavior record description"
320
+ },
321
+ admap_school_district: {
322
+ type: String,
323
+ maxlength: 255,
324
+ trim: true,
325
+ comment: "School district (for public schools)"
326
+ },
327
+ admap_residency_verification_status: {
328
+ type: Boolean,
329
+ default: false,
330
+ comment: "Residency verification status (for public schools)"
331
+ },
332
+ // BOARD INFORMATION - Previous Education Board
333
+ admap_previous_education_board_id_edbrd: {
334
+ type: mongoose_1.default.Schema.Types.ObjectId,
335
+ ref: "core_education_board",
336
+ comment: "Previous education board (CBSE, State Board, ICSE, etc.)"
337
+ },
338
+ admap_previous_board_name: {
339
+ type: String,
340
+ maxlength: 200,
341
+ trim: true,
342
+ comment: "Previous board name (if not in master)"
343
+ },
344
+ admap_previous_board_type_sygms: {
345
+ type: mongoose_1.default.Schema.Types.ObjectId,
346
+ ref: "core_general_master",
347
+ comment: "Previous board type (CBSE, ICSE, State Board, IB, IGCSE, Other) - Reference to core_general_master with type 'EDUCATION_BOARD_TYPE'"
348
+ },
349
+ admap_previous_board_roll_number: {
350
+ type: String,
351
+ maxlength: 100,
352
+ trim: true,
353
+ comment: "Previous board roll number"
354
+ },
355
+ admap_previous_board_registration_number: {
356
+ type: String,
357
+ maxlength: 100,
358
+ trim: true,
359
+ comment: "Previous board registration number"
360
+ },
361
+ admap_previous_board_exam_year: {
362
+ type: String,
363
+ maxlength: 10,
364
+ trim: true,
365
+ comment: "Previous board exam year (e.g., 2024)"
366
+ },
367
+ admap_previous_board_exam_center: {
368
+ type: String,
369
+ maxlength: 255,
370
+ trim: true,
371
+ comment: "Previous board exam center"
372
+ },
373
+ admap_previous_board_percentage: {
374
+ type: Number,
375
+ min: 0,
376
+ max: 100,
377
+ comment: "Previous board exam percentage"
378
+ },
379
+ admap_previous_board_cgpa: {
380
+ type: Number,
381
+ min: 0,
382
+ max: 10,
383
+ comment: "Previous board exam CGPA (if applicable)"
384
+ },
385
+ admap_previous_board_grade: {
386
+ type: String,
387
+ maxlength: 10,
388
+ trim: true,
389
+ comment: "Previous board exam grade (e.g., A+, First Class, Distinction)"
390
+ },
391
+ admap_previous_board_marksheet_number: {
392
+ type: String,
393
+ maxlength: 100,
394
+ trim: true,
395
+ comment: "Previous board marksheet number"
396
+ },
397
+ admap_previous_board_marksheet_id_cyfm: {
398
+ type: mongoose_1.default.Schema.Types.ObjectId,
399
+ ref: "core_file_manager",
400
+ comment: "Previous board marksheet file ID"
401
+ },
402
+ admap_previous_board_migration_certificate: {
403
+ type: Boolean,
404
+ default: false,
405
+ comment: "Migration certificate available"
406
+ },
407
+ admap_previous_board_migration_certificate_id_cyfm: {
408
+ type: mongoose_1.default.Schema.Types.ObjectId,
409
+ ref: "core_file_manager",
410
+ comment: "Migration certificate file ID"
411
+ },
412
+ admap_previous_board_transfer_certificate: {
413
+ type: Boolean,
414
+ default: false,
415
+ comment: "Transfer certificate available"
416
+ },
417
+ admap_previous_board_transfer_certificate_id_cyfm: {
418
+ type: mongoose_1.default.Schema.Types.ObjectId,
419
+ ref: "core_file_manager",
420
+ comment: "Transfer certificate file ID"
421
+ },
422
+ admap_previous_board_character_certificate: {
423
+ type: Boolean,
424
+ default: false,
425
+ comment: "Character certificate available"
426
+ },
427
+ admap_previous_board_character_certificate_id_cyfm: {
428
+ type: mongoose_1.default.Schema.Types.ObjectId,
429
+ ref: "core_file_manager",
430
+ comment: "Character certificate file ID"
431
+ },
432
+ // BOARD INFORMATION - Current School Board
433
+ admap_current_school_board_id_edbrd: {
434
+ type: mongoose_1.default.Schema.Types.ObjectId,
435
+ ref: "core_education_board",
436
+ comment: "Current school's education board"
437
+ },
438
+ admap_applying_for_board_id_edbrd: {
439
+ type: mongoose_1.default.Schema.Types.ObjectId,
440
+ ref: "core_education_board",
441
+ comment: "Board student is applying for (if different from current)"
442
+ },
443
+ // SECTION 4: PARENT/GUARDIAN & EMERGENCY CONTACT
444
+ admap_guardian_1_full_name: {
445
+ type: String,
446
+ maxlength: 255,
447
+ trim: true
448
+ },
449
+ admap_guardian_1_relationship: {
450
+ type: String,
451
+ maxlength: 100,
452
+ trim: true,
453
+ enum: ["Mother", "Father", "Guardian", "Grandparent", "Other"]
454
+ },
455
+ admap_guardian_1_phone: {
456
+ type: String,
457
+ maxlength: 50,
458
+ trim: true
459
+ },
460
+ admap_guardian_1_country_code: {
461
+ type: String,
462
+ maxlength: 10,
463
+ trim: true
464
+ },
465
+ admap_guardian_1_email: {
466
+ type: String,
467
+ maxlength: 255,
468
+ trim: true,
469
+ lowercase: true
470
+ },
471
+ admap_guardian_1_occupation: {
472
+ type: String,
473
+ maxlength: 255,
474
+ trim: true
475
+ },
476
+ admap_guardian_1_employer: {
477
+ type: String,
478
+ maxlength: 255,
479
+ trim: true
480
+ },
481
+ admap_guardian_1_address: {
482
+ type: String,
483
+ maxlength: 255,
484
+ trim: true
485
+ },
486
+ admap_guardian_2_full_name: {
487
+ type: String,
488
+ maxlength: 255,
489
+ trim: true
490
+ },
491
+ admap_guardian_2_relationship: {
492
+ type: String,
493
+ maxlength: 100,
494
+ trim: true,
495
+ enum: ["Mother", "Father", "Guardian", "Grandparent", "Other"]
496
+ },
497
+ admap_guardian_2_phone: {
498
+ type: String,
499
+ maxlength: 50,
500
+ trim: true
501
+ },
502
+ admap_guardian_2_country_code: {
503
+ type: String,
504
+ maxlength: 10,
505
+ trim: true
506
+ },
507
+ admap_guardian_2_email: {
508
+ type: String,
509
+ maxlength: 255,
510
+ trim: true,
511
+ lowercase: true
512
+ },
513
+ admap_guardian_2_occupation: {
514
+ type: String,
515
+ maxlength: 255,
516
+ trim: true
517
+ },
518
+ admap_guardian_2_employer: {
519
+ type: String,
520
+ maxlength: 255,
521
+ trim: true
522
+ },
523
+ admap_emergency_contact_name: {
524
+ type: String,
525
+ maxlength: 255,
526
+ trim: true
527
+ },
528
+ admap_emergency_contact_relationship: {
529
+ type: String,
530
+ maxlength: 100,
531
+ trim: true
532
+ },
533
+ admap_emergency_contact_phone: {
534
+ type: String,
535
+ maxlength: 50,
536
+ trim: true
537
+ },
538
+ admap_emergency_contact_country_code: {
539
+ type: String,
540
+ maxlength: 10,
541
+ trim: true
542
+ },
543
+ admap_authorized_pick_up_list: {
544
+ type: String,
545
+ maxlength: 500,
546
+ trim: true,
547
+ comment: "Comma-separated list of authorized persons"
548
+ },
549
+ admap_parent_volunteer_interest: {
550
+ type: Boolean,
551
+ default: false
552
+ },
553
+ admap_language_spoken_at_home: {
554
+ type: String,
555
+ maxlength: 100,
556
+ trim: true
557
+ },
558
+ admap_sibling_information: {
559
+ type: String,
560
+ maxlength: 500,
561
+ trim: true,
562
+ comment: "Sibling information (names, grades, schools)"
563
+ },
564
+ admap_transportation_method: {
565
+ type: String,
566
+ maxlength: 100,
567
+ trim: true,
568
+ enum: ["School Bus", "Parent Pickup", "Walk", "Public Transport", "Other"]
569
+ },
570
+ admap_bus_route_number: {
571
+ type: String,
572
+ maxlength: 50,
573
+ trim: true
574
+ },
575
+ admap_after_school_care_required: {
576
+ type: Boolean,
577
+ default: false
578
+ },
579
+ admap_after_school_care_provider: {
580
+ type: String,
581
+ maxlength: 255,
582
+ trim: true
583
+ },
584
+ admap_early_drop_off_required: {
585
+ type: Boolean,
586
+ default: false
587
+ },
588
+ admap_late_pick_up_required: {
589
+ type: Boolean,
590
+ default: false
591
+ },
592
+ admap_custody_documentation_status: {
593
+ type: Boolean,
594
+ default: false,
595
+ comment: "Custody documentation upload status"
596
+ },
597
+ // SECTION 5: FINANCIAL & BILLING INFORMATION
598
+ admap_tuition_payer_name: {
599
+ type: String,
600
+ required: true,
601
+ maxlength: 255,
602
+ trim: true
603
+ },
604
+ admap_tuition_payer_relationship: {
605
+ type: String,
606
+ required: true,
607
+ maxlength: 100,
608
+ trim: true,
609
+ enum: ["Parent", "Guardian", "Self", "Sponsor", "Other"]
610
+ },
611
+ admap_billing_email_address: {
612
+ type: String,
613
+ required: true,
614
+ maxlength: 255,
615
+ trim: true,
616
+ lowercase: true
617
+ },
618
+ admap_billing_address: {
619
+ type: String,
620
+ maxlength: 500,
621
+ trim: true
622
+ },
623
+ admap_intended_payment_method: {
624
+ type: String,
625
+ required: true,
626
+ maxlength: 100,
627
+ trim: true,
628
+ enum: ["Monthly Installments", "Single Payment", "Quarterly", "Semester", "Public School (No Fee)", "Other"]
629
+ },
630
+ admap_application_fee_payment_status: {
631
+ type: Boolean,
632
+ required: true,
633
+ default: false
634
+ },
635
+ admap_application_fee_amount: {
636
+ type: Number,
637
+ min: 0,
638
+ default: 0,
639
+ comment: "Application fee amount"
640
+ },
641
+ admap_application_fee_payment_date: {
642
+ type: Date,
643
+ comment: "Application fee payment date"
644
+ },
645
+ admap_application_fee_transaction_id: {
646
+ type: String,
647
+ maxlength: 100,
648
+ trim: true
649
+ },
650
+ admap_scholarship_application_status: {
651
+ type: Boolean,
652
+ default: false
653
+ },
654
+ admap_financial_aid_amount: {
655
+ type: Number,
656
+ min: 0,
657
+ default: 0
658
+ },
659
+ admap_sponsor_name: {
660
+ type: String,
661
+ maxlength: 255,
662
+ trim: true
663
+ },
664
+ admap_sponsor_contact: {
665
+ type: String,
666
+ maxlength: 255,
667
+ trim: true
668
+ },
669
+ admap_financial_hold_status: {
670
+ type: Boolean,
671
+ default: false
672
+ },
673
+ admap_deposit_paid_status: {
674
+ type: Boolean,
675
+ default: false
676
+ },
677
+ admap_deposit_amount: {
678
+ type: Number,
679
+ min: 0,
680
+ default: 0
681
+ },
682
+ admap_deposit_payment_date: {
683
+ type: Date
684
+ },
685
+ // SECTION 6: MEDICAL & HEALTH INFORMATION
686
+ admap_known_allergies: {
687
+ type: String,
688
+ maxlength: 500,
689
+ trim: true
690
+ },
691
+ admap_chronic_medical_conditions: {
692
+ type: String,
693
+ maxlength: 500,
694
+ trim: true
695
+ },
696
+ admap_current_medications: {
697
+ type: String,
698
+ maxlength: 500,
699
+ trim: true
700
+ },
701
+ admap_insurance_provider: {
702
+ type: String,
703
+ required: true,
704
+ maxlength: 255,
705
+ trim: true
706
+ },
707
+ admap_insurance_policy_number: {
708
+ type: String,
709
+ maxlength: 100,
710
+ trim: true
711
+ },
712
+ admap_insurance_expiry_date: {
713
+ type: Date
714
+ },
715
+ admap_emergency_health_consent: {
716
+ type: Boolean,
717
+ required: true,
718
+ default: false
719
+ },
720
+ admap_disability_status: {
721
+ type: Boolean,
722
+ default: false
723
+ },
724
+ admap_disability_type: {
725
+ type: String,
726
+ maxlength: 255,
727
+ trim: true
728
+ },
729
+ admap_special_accommodation_needs: {
730
+ type: String,
731
+ maxlength: 500,
732
+ trim: true
733
+ },
734
+ admap_medical_clearance_status: {
735
+ type: Boolean,
736
+ default: false
737
+ },
738
+ admap_immunization_record_upload_status: {
739
+ type: Boolean,
740
+ default: false
741
+ },
742
+ admap_immunization_complete: {
743
+ type: Boolean,
744
+ default: false
745
+ },
746
+ admap_immunization_exemption: {
747
+ type: Boolean,
748
+ default: false
749
+ },
750
+ admap_immunization_exemption_reason: {
751
+ type: String,
752
+ maxlength: 500,
753
+ trim: true
754
+ },
755
+ admap_primary_care_physician_name: {
756
+ type: String,
757
+ maxlength: 255,
758
+ trim: true
759
+ },
760
+ admap_primary_care_physician_phone: {
761
+ type: String,
762
+ maxlength: 50,
763
+ trim: true
764
+ },
765
+ admap_medical_alert_information: {
766
+ type: String,
767
+ maxlength: 500,
768
+ trim: true
769
+ },
770
+ admap_iep_status: {
771
+ type: Boolean,
772
+ default: false,
773
+ comment: "Individualized Education Program status"
774
+ },
775
+ admap_plan_504_status: {
776
+ type: Boolean,
777
+ default: false,
778
+ comment: "504 Plan status"
779
+ },
780
+ admap_special_education_services: {
781
+ type: String,
782
+ maxlength: 500,
783
+ trim: true
784
+ },
785
+ // SECTION 7: ELECTIVE SUBJECT SELECTION
786
+ admap_elective_selection_status: {
787
+ type: String,
788
+ maxlength: 100,
789
+ trim: true,
790
+ enum: ["Not Started", "In Progress", "Finalized", "Approved", "Pending"]
791
+ },
792
+ admap_counseling_notes: {
793
+ type: String,
794
+ maxlength: 1000,
795
+ trim: true
796
+ },
797
+ admap_prerequisite_acknowledgment: {
798
+ type: Boolean,
799
+ required: true,
800
+ default: false
801
+ },
802
+ admap_maximum_electives_allowed: {
803
+ type: Number,
804
+ min: 0,
805
+ default: 0,
806
+ comment: "Maximum number of electives allowed"
807
+ },
808
+ // SECTION 8: ESSAY & SUPPORTING DOCUMENTS
809
+ admap_personal_statement_text: {
810
+ type: String,
811
+ maxlength: 10000,
812
+ trim: true,
813
+ comment: "Personal statement/essay text"
814
+ },
815
+ admap_personal_statement_word_count: {
816
+ type: Number,
817
+ min: 0,
818
+ default: 0
819
+ },
820
+ admap_personal_statement_min_word_count: {
821
+ type: Number,
822
+ min: 0,
823
+ default: 0
824
+ },
825
+ admap_personal_statement_max_word_count: {
826
+ type: Number,
827
+ min: 0,
828
+ default: 0
829
+ },
830
+ admap_transcript_upload_status: {
831
+ type: Boolean,
832
+ default: false
833
+ },
834
+ admap_transcript_upload_date: {
835
+ type: Date
836
+ },
837
+ admap_transcript_file_path_url: {
838
+ type: String,
839
+ maxlength: 500,
840
+ trim: true
841
+ },
842
+ admap_report_card_upload_status: {
843
+ type: Boolean,
844
+ default: false
845
+ },
846
+ admap_report_card_years: {
847
+ type: String,
848
+ maxlength: 255,
849
+ trim: true,
850
+ comment: "Comma-separated list of years (e.g., 2024-2025, 2023-2024)"
851
+ },
852
+ admap_letter_of_rec_1_status: {
853
+ type: Boolean,
854
+ default: false
855
+ },
856
+ admap_letter_of_rec_1_upload_date: {
857
+ type: Date
858
+ },
859
+ admap_letter_of_rec_1_recommender_name: {
860
+ type: String,
861
+ maxlength: 255,
862
+ trim: true
863
+ },
864
+ admap_letter_of_rec_1_recommender_type: {
865
+ type: String,
866
+ maxlength: 100,
867
+ trim: true,
868
+ enum: ["Teacher", "Principal", "Counselor", "Employer", "Other"]
869
+ },
870
+ admap_letter_of_rec_2_status: {
871
+ type: Boolean,
872
+ default: false
873
+ },
874
+ admap_letter_of_rec_2_upload_date: {
875
+ type: Date
876
+ },
877
+ admap_letter_of_rec_2_recommender_name: {
878
+ type: String,
879
+ maxlength: 255,
880
+ trim: true
881
+ },
882
+ admap_letter_of_rec_2_recommender_type: {
883
+ type: String,
884
+ maxlength: 100,
885
+ trim: true,
886
+ enum: ["Teacher", "Principal", "Counselor", "Employer", "Other"]
887
+ },
888
+ admap_teacher_recommendation_status: {
889
+ type: Boolean,
890
+ default: false
891
+ },
892
+ admap_portfolio_url: {
893
+ type: String,
894
+ maxlength: 500,
895
+ trim: true
896
+ },
897
+ admap_portfolio_upload_status: {
898
+ type: Boolean,
899
+ default: false
900
+ },
901
+ admap_identity_document_upload_status: {
902
+ type: Boolean,
903
+ default: false
904
+ },
905
+ admap_identity_document_type: {
906
+ type: String,
907
+ maxlength: 100,
908
+ trim: true,
909
+ enum: ["Birth Certificate", "Passport", "Driver's License", "National ID", "Other"]
910
+ },
911
+ admap_birth_certificate_upload_status: {
912
+ type: Boolean,
913
+ default: false
914
+ },
915
+ admap_custody_documents_upload_status: {
916
+ type: Boolean,
917
+ default: false
918
+ },
919
+ admap_additional_documents_upload_status: {
920
+ type: Boolean,
921
+ default: false
922
+ },
923
+ // SECTION 9: SUPPLEMENTARY & CONSENT
924
+ admap_language_of_instruction: {
925
+ type: String,
926
+ required: true,
927
+ maxlength: 100,
928
+ trim: true,
929
+ default: "English"
930
+ },
931
+ admap_native_language: {
932
+ type: String,
933
+ maxlength: 100,
934
+ trim: true
935
+ },
936
+ admap_source_of_referral: {
937
+ type: String,
938
+ maxlength: 255,
939
+ trim: true,
940
+ comment: "How did you hear about us?"
941
+ },
942
+ admap_referral_details: {
943
+ type: String,
944
+ maxlength: 500,
945
+ trim: true
946
+ },
947
+ admap_how_did_you_hear_about_us: {
948
+ type: String,
949
+ maxlength: 500,
950
+ trim: true
951
+ },
952
+ admap_signature_date: {
953
+ type: Date,
954
+ required: true
955
+ },
956
+ admap_declaration_of_accuracy: {
957
+ type: Boolean,
958
+ required: true,
959
+ default: false
960
+ },
961
+ admap_privacy_policy_consent: {
962
+ type: Boolean,
963
+ required: true,
964
+ default: false
965
+ },
966
+ admap_terms_and_conditions_consent: {
967
+ type: Boolean,
968
+ required: true,
969
+ default: false
970
+ },
971
+ admap_applicant_signature: {
972
+ type: String,
973
+ required: true,
974
+ maxlength: 255,
975
+ trim: true
976
+ },
977
+ admap_parent_guardian_signature: {
978
+ type: String,
979
+ maxlength: 255,
980
+ trim: true
981
+ },
982
+ admap_ip_address: {
983
+ type: String,
984
+ maxlength: 50,
985
+ trim: true
986
+ },
987
+ admap_browser_information: {
988
+ type: String,
989
+ maxlength: 255,
990
+ trim: true
991
+ },
992
+ // SECTION 10: APPLICATION STATUS & WORKFLOW
993
+ admap_application_status: {
994
+ type: String,
995
+ required: true,
996
+ maxlength: 50,
997
+ trim: true,
998
+ default: "Draft",
999
+ enum: ["Draft", "Submitted", "Under Review", "Interview Scheduled", "Accepted", "Waitlisted", "Rejected", "Withdrawn"]
1000
+ },
1001
+ admap_application_submission_date: {
1002
+ type: Date,
1003
+ comment: "Date when application was submitted"
1004
+ },
1005
+ admap_interview_scheduled_date: {
1006
+ type: Date,
1007
+ comment: "Scheduled interview date"
1008
+ },
1009
+ admap_interview_status: {
1010
+ type: String,
1011
+ maxlength: 50,
1012
+ trim: true,
1013
+ enum: ["Scheduled", "Completed", "Cancelled", "Rescheduled", "Not Required"]
1014
+ },
1015
+ admap_interview_notes: {
1016
+ type: String,
1017
+ maxlength: 1000,
1018
+ trim: true
1019
+ },
1020
+ admap_admission_decision_date: {
1021
+ type: Date,
1022
+ comment: "Date when admission decision was made"
1023
+ },
1024
+ admap_admission_decision_notes: {
1025
+ type: String,
1026
+ maxlength: 1000,
1027
+ trim: true
1028
+ },
1029
+ admap_waitlist_position: {
1030
+ type: Number,
1031
+ min: 0,
1032
+ comment: "Position on waitlist (if applicable)"
1033
+ },
1034
+ admap_enrollment_deadline: {
1035
+ type: Date,
1036
+ comment: "Deadline for enrollment if accepted"
1037
+ },
1038
+ admap_enrollment_completed: {
1039
+ type: Boolean,
1040
+ default: false
1041
+ },
1042
+ admap_enrollment_date: {
1043
+ type: Date,
1044
+ comment: "Date when enrollment was completed"
1045
+ },
1046
+ // FOREIGN KEYS & REFERENCES
1047
+ admap_entity_id_syen: {
1048
+ type: mongoose_1.default.Schema.Types.ObjectId,
1049
+ ref: "core_system_entity",
1050
+ required: true,
1051
+ comment: "Entity/School ID"
1052
+ },
1053
+ admap_program_id_sygms: {
1054
+ type: mongoose_1.default.Schema.Types.ObjectId,
1055
+ ref: "core_general_master",
1056
+ comment: "Program type from general master"
1057
+ },
1058
+ admap_created_by_user: {
1059
+ type: mongoose_1.default.Schema.Types.ObjectId,
1060
+ ref: "auth_user_mst",
1061
+ comment: "User who created the application (usually student/parent)"
1062
+ },
1063
+ admap_reviewed_by_user: {
1064
+ type: mongoose_1.default.Schema.Types.ObjectId,
1065
+ ref: "auth_user_mst",
1066
+ comment: "User who reviewed the application"
1067
+ },
1068
+ admap_assigned_counselor_user: {
1069
+ type: mongoose_1.default.Schema.Types.ObjectId,
1070
+ ref: "auth_user_mst",
1071
+ comment: "Assigned counselor/admissions officer"
1072
+ },
1073
+ // METADATA
1074
+ admap_created_date: {
1075
+ type: Date,
1076
+ default: Date.now
1077
+ },
1078
+ admap_modified_date: {
1079
+ type: Date,
1080
+ default: Date.now
1081
+ },
1082
+ admap_modified_by_user: {
1083
+ type: mongoose_1.default.Schema.Types.ObjectId,
1084
+ ref: "auth_user_mst"
1085
+ },
1086
+ admap_isactive: {
1087
+ type: Boolean,
1088
+ default: true
1089
+ }
1090
+ }, {
1091
+ collection: 'admission_application_main',
1092
+ timestamps: true
1093
+ });
1094
+ // Indexes for performance
1095
+ admission_application_main.index({ admap_application_number: 1 });
1096
+ admission_application_main.index({ admap_student_id: 1 });
1097
+ admission_application_main.index({ admap_entity_id_syen: 1 });
1098
+ admission_application_main.index({ admap_application_status: 1 });
1099
+ admission_application_main.index({ admap_program_category: 1 });
1100
+ admission_application_main.index({ admap_created_date: -1 });
1101
+ var CAdmissionApplicationMain = mongoose_1.default.model("admission_application_main", admission_application_main);
1102
+ exports.CAdmissionApplicationMain = CAdmissionApplicationMain;