cloud-ide-model-schema 1.1.119 → 1.1.123
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.
- package/lib/schema/admission/admission_application_main.js +43 -104
- package/lib/schema/core/core_education_board.js +1 -1
- package/lib/schema/fees/fee_structure.d.ts +23 -0
- package/lib/schema/fees/fee_structure.js +97 -0
- package/lib/schema/fees/index.d.ts +1 -0
- package/lib/schema/fees/index.js +1 -0
- package/lib/schema/system/backup_jobs.d.ts +8 -22
- package/lib/schema/system/backup_jobs.js +38 -60
- package/package.json +1 -1
|
@@ -196,6 +196,16 @@ var admission_application_main = new mongoose_1.Schema({
|
|
|
196
196
|
ref: "aca_class_program_master",
|
|
197
197
|
comment: "Class/Program applying for - Reference to aca_class_program_master"
|
|
198
198
|
},
|
|
199
|
+
admap_class_program_branch_id_acabrn: {
|
|
200
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
201
|
+
ref: "aca_class_prg_branch",
|
|
202
|
+
comment: "Class/Program branch - Reference to aca_class_prg_branch (conditional - shown if program has branchType: true)"
|
|
203
|
+
},
|
|
204
|
+
admap_class_program_term_id_acapt: {
|
|
205
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
206
|
+
ref: "aca_class_program_term",
|
|
207
|
+
comment: "Class/Program term/semester - Reference to aca_class_program_term (conditional - shown if program has termType: true and getAdmission: true)"
|
|
208
|
+
},
|
|
199
209
|
admap_grade_level_applying_for_id_acacpm: {
|
|
200
210
|
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
201
211
|
ref: "aca_class_program_master",
|
|
@@ -421,95 +431,17 @@ var admission_application_main = new mongoose_1.Schema({
|
|
|
421
431
|
ref: "core_education_board",
|
|
422
432
|
comment: "Board student is applying for (if different from current)"
|
|
423
433
|
},
|
|
424
|
-
// SECTION 4:
|
|
425
|
-
|
|
426
|
-
type: String,
|
|
427
|
-
maxlength: 255,
|
|
428
|
-
trim: true
|
|
429
|
-
},
|
|
430
|
-
admap_guardian_1_relationship: {
|
|
431
|
-
type: String,
|
|
432
|
-
maxlength: 100,
|
|
433
|
-
trim: true,
|
|
434
|
-
enum: ["Mother", "Father", "Guardian", "Grandparent", "Other"]
|
|
435
|
-
},
|
|
436
|
-
admap_guardian_1_phone: {
|
|
437
|
-
type: String,
|
|
438
|
-
maxlength: 50,
|
|
439
|
-
trim: true
|
|
440
|
-
},
|
|
441
|
-
admap_guardian_1_country_code: {
|
|
442
|
-
type: String,
|
|
443
|
-
maxlength: 10,
|
|
444
|
-
trim: true
|
|
445
|
-
},
|
|
446
|
-
admap_guardian_1_email: {
|
|
447
|
-
type: String,
|
|
448
|
-
maxlength: 255,
|
|
449
|
-
trim: true,
|
|
450
|
-
lowercase: true
|
|
451
|
-
},
|
|
452
|
-
admap_guardian_1_occupation: {
|
|
453
|
-
type: String,
|
|
454
|
-
maxlength: 255,
|
|
455
|
-
trim: true
|
|
456
|
-
},
|
|
457
|
-
admap_guardian_1_employer: {
|
|
458
|
-
type: String,
|
|
459
|
-
maxlength: 255,
|
|
460
|
-
trim: true
|
|
461
|
-
},
|
|
462
|
-
admap_guardian_1_address: {
|
|
463
|
-
type: String,
|
|
464
|
-
maxlength: 255,
|
|
465
|
-
trim: true
|
|
466
|
-
},
|
|
467
|
-
admap_guardian_2_full_name: {
|
|
468
|
-
type: String,
|
|
469
|
-
maxlength: 255,
|
|
470
|
-
trim: true
|
|
471
|
-
},
|
|
472
|
-
admap_guardian_2_relationship: {
|
|
473
|
-
type: String,
|
|
474
|
-
maxlength: 100,
|
|
475
|
-
trim: true,
|
|
476
|
-
enum: ["Mother", "Father", "Guardian", "Grandparent", "Other"]
|
|
477
|
-
},
|
|
478
|
-
admap_guardian_2_phone: {
|
|
479
|
-
type: String,
|
|
480
|
-
maxlength: 50,
|
|
481
|
-
trim: true
|
|
482
|
-
},
|
|
483
|
-
admap_guardian_2_country_code: {
|
|
484
|
-
type: String,
|
|
485
|
-
maxlength: 10,
|
|
486
|
-
trim: true
|
|
487
|
-
},
|
|
488
|
-
admap_guardian_2_email: {
|
|
489
|
-
type: String,
|
|
490
|
-
maxlength: 255,
|
|
491
|
-
trim: true,
|
|
492
|
-
lowercase: true
|
|
493
|
-
},
|
|
494
|
-
admap_guardian_2_occupation: {
|
|
495
|
-
type: String,
|
|
496
|
-
maxlength: 255,
|
|
497
|
-
trim: true
|
|
498
|
-
},
|
|
499
|
-
admap_guardian_2_employer: {
|
|
500
|
-
type: String,
|
|
501
|
-
maxlength: 255,
|
|
502
|
-
trim: true
|
|
503
|
-
},
|
|
434
|
+
// SECTION 4: EMERGENCY CONTACT
|
|
435
|
+
// Note: Guardian information is managed through Family Members & Guardians section
|
|
504
436
|
admap_emergency_contact_name: {
|
|
505
437
|
type: String,
|
|
506
438
|
maxlength: 255,
|
|
507
439
|
trim: true
|
|
508
440
|
},
|
|
509
|
-
|
|
510
|
-
type:
|
|
511
|
-
|
|
512
|
-
|
|
441
|
+
admap_emergency_contact_relationship_id_sygms: {
|
|
442
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
443
|
+
ref: "core_general_master",
|
|
444
|
+
comment: "Emergency contact relationship - Reference to core_general_master (type code: family_relationship)"
|
|
513
445
|
},
|
|
514
446
|
admap_emergency_contact_phone: {
|
|
515
447
|
type: String,
|
|
@@ -542,11 +474,10 @@ var admission_application_main = new mongoose_1.Schema({
|
|
|
542
474
|
trim: true,
|
|
543
475
|
comment: "Sibling information (names, grades, schools)"
|
|
544
476
|
},
|
|
545
|
-
|
|
546
|
-
type:
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
enum: ["School Bus", "Parent Pickup", "Walk", "Public Transport", "Other"]
|
|
477
|
+
admap_transportation_method_id_sygms: {
|
|
478
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
479
|
+
ref: "core_general_master",
|
|
480
|
+
comment: "Transportation method - Reference to core_general_master (type code: transportation_method)"
|
|
550
481
|
},
|
|
551
482
|
admap_bus_route_number: {
|
|
552
483
|
type: String,
|
|
@@ -757,11 +688,10 @@ var admission_application_main = new mongoose_1.Schema({
|
|
|
757
688
|
trim: true
|
|
758
689
|
},
|
|
759
690
|
// SECTION 7: ELECTIVE SUBJECT SELECTION
|
|
760
|
-
|
|
761
|
-
type:
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
enum: ["Not Started", "In Progress", "Finalized", "Approved", "Pending"]
|
|
691
|
+
admap_elective_selection_status_id_sygms: {
|
|
692
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
693
|
+
ref: "core_general_master",
|
|
694
|
+
comment: "Elective selection status - Reference to core_general_master (type code: elective_selection_status)"
|
|
765
695
|
},
|
|
766
696
|
admap_counseling_notes: {
|
|
767
697
|
type: String,
|
|
@@ -834,11 +764,10 @@ var admission_application_main = new mongoose_1.Schema({
|
|
|
834
764
|
maxlength: 255,
|
|
835
765
|
trim: true
|
|
836
766
|
},
|
|
837
|
-
|
|
838
|
-
type:
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
enum: ["Teacher", "Principal", "Counselor", "Employer", "Other"]
|
|
767
|
+
admap_letter_of_rec_1_recommender_type_id_sygms: {
|
|
768
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
769
|
+
ref: "core_general_master",
|
|
770
|
+
comment: "Letter of recommendation 1 recommender type - Reference to core_general_master (type code: recommender_type)"
|
|
842
771
|
},
|
|
843
772
|
admap_letter_of_rec_2_status: {
|
|
844
773
|
type: Boolean,
|
|
@@ -852,11 +781,10 @@ var admission_application_main = new mongoose_1.Schema({
|
|
|
852
781
|
maxlength: 255,
|
|
853
782
|
trim: true
|
|
854
783
|
},
|
|
855
|
-
|
|
856
|
-
type:
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
enum: ["Teacher", "Principal", "Counselor", "Employer", "Other"]
|
|
784
|
+
admap_letter_of_rec_2_recommender_type_id_sygms: {
|
|
785
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
786
|
+
ref: "core_general_master",
|
|
787
|
+
comment: "Letter of recommendation 2 recommender type - Reference to core_general_master (type code: recommender_type)"
|
|
860
788
|
},
|
|
861
789
|
admap_teacher_recommendation_status: {
|
|
862
790
|
type: Boolean,
|
|
@@ -971,6 +899,10 @@ var admission_application_main = new mongoose_1.Schema({
|
|
|
971
899
|
type: Date,
|
|
972
900
|
comment: "Date when application was submitted"
|
|
973
901
|
},
|
|
902
|
+
admap_submission_date: {
|
|
903
|
+
type: Date,
|
|
904
|
+
comment: "Date when application was submitted (alternative field name)"
|
|
905
|
+
},
|
|
974
906
|
admap_interview_scheduled_date: {
|
|
975
907
|
type: Date,
|
|
976
908
|
comment: "Scheduled interview date"
|
|
@@ -1067,6 +999,13 @@ admission_application_main.index({ admap_application_status_id_sygms: 1 });
|
|
|
1067
999
|
admission_application_main.index({ admap_status_id_sygms: 1 });
|
|
1068
1000
|
admission_application_main.index({ admap_program_category_id_sygms: 1 });
|
|
1069
1001
|
admission_application_main.index({ admap_class_program_id_acacpm: 1 });
|
|
1002
|
+
admission_application_main.index({ admap_class_program_branch_id_acabrn: 1 });
|
|
1003
|
+
admission_application_main.index({ admap_class_program_term_id_acapt: 1 });
|
|
1004
|
+
admission_application_main.index({ admap_emergency_contact_relationship_id_sygms: 1 });
|
|
1005
|
+
admission_application_main.index({ admap_transportation_method_id_sygms: 1 });
|
|
1006
|
+
admission_application_main.index({ admap_elective_selection_status_id_sygms: 1 });
|
|
1007
|
+
admission_application_main.index({ admap_letter_of_rec_1_recommender_type_id_sygms: 1 });
|
|
1008
|
+
admission_application_main.index({ admap_letter_of_rec_2_recommender_type_id_sygms: 1 });
|
|
1070
1009
|
admission_application_main.index({ admap_created_date: -1 });
|
|
1071
1010
|
var CAdmissionApplicationMain = mongoose_1.default.model("admission_application_main", admission_application_main);
|
|
1072
1011
|
exports.CAdmissionApplicationMain = CAdmissionApplicationMain;
|
|
@@ -122,7 +122,7 @@ var core_education_board = new mongoose_1.Schema({
|
|
|
122
122
|
}
|
|
123
123
|
}, { collection: 'core_education_board' });
|
|
124
124
|
// Indexes for performance
|
|
125
|
-
|
|
125
|
+
// Note: edbrd_code index is automatically created by unique: true, so we don't need to add it explicitly
|
|
126
126
|
core_education_board.index({ edbrd_type_sygms: 1 });
|
|
127
127
|
core_education_board.index({ edbrd_category_sygms: 1 });
|
|
128
128
|
core_education_board.index({ edbrd_state: 1 });
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import mongoose from "mongoose";
|
|
2
|
+
declare const CFeeStructure: mongoose.Model<{
|
|
3
|
+
[x: string]: unknown;
|
|
4
|
+
}, {}, {}, {}, mongoose.Document<unknown, {}, {
|
|
5
|
+
[x: string]: unknown;
|
|
6
|
+
}, {}> & {
|
|
7
|
+
[x: string]: unknown;
|
|
8
|
+
} & Required<{
|
|
9
|
+
_id: unknown;
|
|
10
|
+
}> & {
|
|
11
|
+
__v: number;
|
|
12
|
+
}, mongoose.Schema<any, mongoose.Model<any, any, any, any, any, any>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, {
|
|
13
|
+
[x: string]: unknown;
|
|
14
|
+
}, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
|
|
15
|
+
[x: string]: unknown;
|
|
16
|
+
}>, {}> & mongoose.FlatRecord<{
|
|
17
|
+
[x: string]: unknown;
|
|
18
|
+
}> & Required<{
|
|
19
|
+
_id: unknown;
|
|
20
|
+
}> & {
|
|
21
|
+
__v: number;
|
|
22
|
+
}>>;
|
|
23
|
+
export { CFeeStructure };
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CFeeStructure = void 0;
|
|
4
|
+
var mongoose_1 = require("mongoose");
|
|
5
|
+
/**
|
|
6
|
+
* Fee Structure Schema
|
|
7
|
+
* Defines the structure of fees for a specific program/class/category
|
|
8
|
+
*/
|
|
9
|
+
/* SCHEMA START */
|
|
10
|
+
var fee_structure = new mongoose_1.Schema({
|
|
11
|
+
fees_structure_code: {
|
|
12
|
+
type: String,
|
|
13
|
+
required: false,
|
|
14
|
+
unique: true,
|
|
15
|
+
sparse: true,
|
|
16
|
+
maxlength: 50,
|
|
17
|
+
trim: true,
|
|
18
|
+
comment: "Unique fee structure code (auto-generated)"
|
|
19
|
+
},
|
|
20
|
+
fees_structure_name: {
|
|
21
|
+
type: String,
|
|
22
|
+
required: true,
|
|
23
|
+
minlength: 1,
|
|
24
|
+
maxlength: 200,
|
|
25
|
+
trim: true,
|
|
26
|
+
comment: "Fee structure name"
|
|
27
|
+
},
|
|
28
|
+
fees_structure_description: {
|
|
29
|
+
type: String,
|
|
30
|
+
maxlength: 1000,
|
|
31
|
+
trim: true,
|
|
32
|
+
comment: "Fee structure description"
|
|
33
|
+
},
|
|
34
|
+
fees_academic_year_id_acayr: {
|
|
35
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
36
|
+
ref: "aca_academic_year",
|
|
37
|
+
required: true,
|
|
38
|
+
comment: "Academic year this fee structure applies to"
|
|
39
|
+
},
|
|
40
|
+
fees_entity_id_syen: {
|
|
41
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
42
|
+
ref: "core_system_entity",
|
|
43
|
+
required: true,
|
|
44
|
+
comment: "Entity/Organization this fee structure belongs to"
|
|
45
|
+
},
|
|
46
|
+
fees_class_program_id_acacpm: {
|
|
47
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
48
|
+
ref: "aca_class_program_master",
|
|
49
|
+
default: null,
|
|
50
|
+
comment: "Class/Program this fee structure applies to (null = all)"
|
|
51
|
+
},
|
|
52
|
+
fees_class_program_branch_id_acabrn: {
|
|
53
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
54
|
+
ref: "aca_class_program_branch",
|
|
55
|
+
default: null,
|
|
56
|
+
comment: "Branch/Specialization (null = all branches)"
|
|
57
|
+
},
|
|
58
|
+
fees_class_program_term_id_acapt: {
|
|
59
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
60
|
+
ref: "aca_class_program_term",
|
|
61
|
+
default: null,
|
|
62
|
+
comment: "Term/Semester (null = all terms)"
|
|
63
|
+
},
|
|
64
|
+
fees_program_term_section_id_acapts: {
|
|
65
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
66
|
+
ref: "aca_program_term_section",
|
|
67
|
+
default: null,
|
|
68
|
+
comment: "Section (null = all sections)"
|
|
69
|
+
},
|
|
70
|
+
fees_student_category_id_sygms: {
|
|
71
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
72
|
+
ref: "core_general_master",
|
|
73
|
+
default: null,
|
|
74
|
+
comment: "Student/Reservation category (null = all categories)"
|
|
75
|
+
},
|
|
76
|
+
fees_is_active: {
|
|
77
|
+
type: Boolean,
|
|
78
|
+
default: true,
|
|
79
|
+
comment: "Active status flag"
|
|
80
|
+
},
|
|
81
|
+
fees_created_by_user: {
|
|
82
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
83
|
+
ref: "auth_user_mst",
|
|
84
|
+
default: null,
|
|
85
|
+
comment: "User who created the fee structure"
|
|
86
|
+
}
|
|
87
|
+
}, {
|
|
88
|
+
collection: 'fee_structures',
|
|
89
|
+
timestamps: true
|
|
90
|
+
});
|
|
91
|
+
// Indexes for performance
|
|
92
|
+
fee_structure.index({ fees_structure_code: 1 }, { unique: true, sparse: true });
|
|
93
|
+
fee_structure.index({ fees_entity_id_syen: 1, fees_academic_year_id_acayr: 1 });
|
|
94
|
+
fee_structure.index({ fees_class_program_id_acacpm: 1 });
|
|
95
|
+
fee_structure.index({ fees_entity_id_syen: 1, fees_is_active: 1 });
|
|
96
|
+
var CFeeStructure = mongoose_1.default.model("fee_structures", fee_structure);
|
|
97
|
+
exports.CFeeStructure = CFeeStructure;
|
package/lib/schema/fees/index.js
CHANGED
|
@@ -3,29 +3,15 @@ export interface IBackupJob {
|
|
|
3
3
|
_id?: string;
|
|
4
4
|
bjob_name: string;
|
|
5
5
|
bjob_backup_type: 'full' | 'incremental' | 'differential' | 'file';
|
|
6
|
-
bjob_schedule: {
|
|
7
|
-
frequency: 'daily' | 'weekly' | 'monthly' | 'hourly' | 'manual';
|
|
8
|
-
time?: string;
|
|
9
|
-
day_of_week?: number;
|
|
10
|
-
day_of_month?: number;
|
|
11
|
-
};
|
|
12
6
|
bjob_status: 'active' | 'paused' | 'disabled';
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
bucket_name?: string;
|
|
22
|
-
region?: string;
|
|
23
|
-
access_key?: string;
|
|
24
|
-
};
|
|
25
|
-
bjob_include_collections?: string[];
|
|
26
|
-
bjob_exclude_collections?: string[];
|
|
27
|
-
bjob_include_files?: boolean;
|
|
28
|
-
bjob_file_paths?: string[];
|
|
7
|
+
bjob_backup_policy_id?: string;
|
|
8
|
+
bjob_description?: string;
|
|
9
|
+
bjob_schedule_cron?: string;
|
|
10
|
+
bjob_last_run_at?: Date;
|
|
11
|
+
bjob_next_run_at?: Date;
|
|
12
|
+
bjob_total_runs?: number;
|
|
13
|
+
bjob_successful_runs?: number;
|
|
14
|
+
bjob_failed_runs?: number;
|
|
29
15
|
bjob_created_by?: string;
|
|
30
16
|
bjob_created_at?: Date;
|
|
31
17
|
bjob_updated_at?: Date;
|
|
@@ -14,28 +14,7 @@ var backup_jobs = new mongoose_1.Schema({
|
|
|
14
14
|
type: String,
|
|
15
15
|
required: true,
|
|
16
16
|
enum: ['full', 'incremental', 'differential', 'file'],
|
|
17
|
-
|
|
18
|
-
},
|
|
19
|
-
bjob_schedule: {
|
|
20
|
-
frequency: {
|
|
21
|
-
type: String,
|
|
22
|
-
required: true,
|
|
23
|
-
enum: ['daily', 'weekly', 'monthly', 'hourly', 'manual']
|
|
24
|
-
},
|
|
25
|
-
time: {
|
|
26
|
-
type: String,
|
|
27
|
-
maxlength: 5
|
|
28
|
-
},
|
|
29
|
-
day_of_week: {
|
|
30
|
-
type: Number,
|
|
31
|
-
min: 0,
|
|
32
|
-
max: 6
|
|
33
|
-
},
|
|
34
|
-
day_of_month: {
|
|
35
|
-
type: Number,
|
|
36
|
-
min: 1,
|
|
37
|
-
max: 31
|
|
38
|
-
}
|
|
17
|
+
default: 'full'
|
|
39
18
|
},
|
|
40
19
|
bjob_status: {
|
|
41
20
|
type: String,
|
|
@@ -43,55 +22,52 @@ var backup_jobs = new mongoose_1.Schema({
|
|
|
43
22
|
enum: ['active', 'paused', 'disabled'],
|
|
44
23
|
default: 'active'
|
|
45
24
|
},
|
|
46
|
-
|
|
47
|
-
type:
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
type: Date
|
|
51
|
-
},
|
|
52
|
-
bjob_retention_days: {
|
|
53
|
-
type: Number,
|
|
54
|
-
required: true,
|
|
55
|
-
default: 30,
|
|
56
|
-
min: 1
|
|
57
|
-
},
|
|
58
|
-
bjob_encryption_enabled: {
|
|
59
|
-
type: Boolean,
|
|
60
|
-
default: false
|
|
61
|
-
},
|
|
62
|
-
bjob_compression_enabled: {
|
|
63
|
-
type: Boolean,
|
|
64
|
-
default: true
|
|
25
|
+
bjob_backup_policy_id: {
|
|
26
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
27
|
+
ref: "backup_policies",
|
|
28
|
+
comment: "Reference to backup policy"
|
|
65
29
|
},
|
|
66
|
-
|
|
30
|
+
bjob_description: {
|
|
67
31
|
type: String,
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
default: 'local'
|
|
32
|
+
maxlength: 500,
|
|
33
|
+
trim: true
|
|
71
34
|
},
|
|
72
|
-
|
|
35
|
+
bjob_schedule_cron: {
|
|
73
36
|
type: String,
|
|
74
|
-
|
|
37
|
+
maxlength: 100,
|
|
38
|
+
trim: true,
|
|
39
|
+
comment: "Cron expression for backup schedule"
|
|
75
40
|
},
|
|
76
|
-
|
|
77
|
-
type:
|
|
41
|
+
bjob_last_run_at: {
|
|
42
|
+
type: Date,
|
|
43
|
+
comment: "Last backup execution time"
|
|
78
44
|
},
|
|
79
|
-
|
|
80
|
-
type:
|
|
45
|
+
bjob_next_run_at: {
|
|
46
|
+
type: Date,
|
|
47
|
+
comment: "Next scheduled backup execution time"
|
|
81
48
|
},
|
|
82
|
-
|
|
83
|
-
type:
|
|
49
|
+
bjob_total_runs: {
|
|
50
|
+
type: Number,
|
|
51
|
+
default: 0,
|
|
52
|
+
min: 0,
|
|
53
|
+
comment: "Total number of backup runs"
|
|
84
54
|
},
|
|
85
|
-
|
|
86
|
-
type:
|
|
87
|
-
default:
|
|
55
|
+
bjob_successful_runs: {
|
|
56
|
+
type: Number,
|
|
57
|
+
default: 0,
|
|
58
|
+
min: 0,
|
|
59
|
+
comment: "Number of successful backup runs"
|
|
88
60
|
},
|
|
89
|
-
|
|
90
|
-
type:
|
|
61
|
+
bjob_failed_runs: {
|
|
62
|
+
type: Number,
|
|
63
|
+
default: 0,
|
|
64
|
+
min: 0,
|
|
65
|
+
comment: "Number of failed backup runs"
|
|
91
66
|
},
|
|
92
67
|
bjob_created_by: {
|
|
93
68
|
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
94
|
-
ref: "auth_user_mst"
|
|
69
|
+
ref: "auth_user_mst",
|
|
70
|
+
comment: "User who created the backup job"
|
|
95
71
|
},
|
|
96
72
|
bjob_created_at: {
|
|
97
73
|
type: Date,
|
|
@@ -109,6 +85,8 @@ var backup_jobs = new mongoose_1.Schema({
|
|
|
109
85
|
// Indexes
|
|
110
86
|
backup_jobs.index({ bjob_name: 1 });
|
|
111
87
|
backup_jobs.index({ bjob_status: 1 });
|
|
112
|
-
backup_jobs.index({
|
|
88
|
+
backup_jobs.index({ bjob_backup_type: 1 });
|
|
89
|
+
backup_jobs.index({ bjob_backup_policy_id: 1 });
|
|
90
|
+
backup_jobs.index({ bjob_isactive: 1 });
|
|
113
91
|
var CBackupJob = mongoose_1.default.model("backup_jobs", backup_jobs);
|
|
114
92
|
exports.CBackupJob = CBackupJob;
|
package/package.json
CHANGED