cloud-ide-model-schema 1.1.118 → 1.1.120
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 +16 -0
- package/lib/schema/fees/fee_assignment.d.ts +23 -0
- package/lib/schema/fees/fee_assignment.js +254 -0
- package/lib/schema/fees/index.d.ts +1 -0
- package/lib/schema/fees/index.js +17 -0
- package/lib/schema/index.d.ts +1 -0
- package/lib/schema/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 +2 -2
|
@@ -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",
|
|
@@ -971,6 +981,10 @@ var admission_application_main = new mongoose_1.Schema({
|
|
|
971
981
|
type: Date,
|
|
972
982
|
comment: "Date when application was submitted"
|
|
973
983
|
},
|
|
984
|
+
admap_submission_date: {
|
|
985
|
+
type: Date,
|
|
986
|
+
comment: "Date when application was submitted (alternative field name)"
|
|
987
|
+
},
|
|
974
988
|
admap_interview_scheduled_date: {
|
|
975
989
|
type: Date,
|
|
976
990
|
comment: "Scheduled interview date"
|
|
@@ -1067,6 +1081,8 @@ admission_application_main.index({ admap_application_status_id_sygms: 1 });
|
|
|
1067
1081
|
admission_application_main.index({ admap_status_id_sygms: 1 });
|
|
1068
1082
|
admission_application_main.index({ admap_program_category_id_sygms: 1 });
|
|
1069
1083
|
admission_application_main.index({ admap_class_program_id_acacpm: 1 });
|
|
1084
|
+
admission_application_main.index({ admap_class_program_branch_id_acabrn: 1 });
|
|
1085
|
+
admission_application_main.index({ admap_class_program_term_id_acapt: 1 });
|
|
1070
1086
|
admission_application_main.index({ admap_created_date: -1 });
|
|
1071
1087
|
var CAdmissionApplicationMain = mongoose_1.default.model("admission_application_main", admission_application_main);
|
|
1072
1088
|
exports.CAdmissionApplicationMain = CAdmissionApplicationMain;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import mongoose from "mongoose";
|
|
2
|
+
declare const CFeeAssignment: 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 { CFeeAssignment };
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CFeeAssignment = void 0;
|
|
4
|
+
var mongoose_1 = require("mongoose");
|
|
5
|
+
/**
|
|
6
|
+
* Fee Assignment Schema
|
|
7
|
+
*
|
|
8
|
+
* Purpose: Fees assigned to individual students
|
|
9
|
+
* Used by: Fees, Student Management modules
|
|
10
|
+
*
|
|
11
|
+
* Note: Currently uses student_id as string since student schema doesn't exist yet
|
|
12
|
+
* This can be updated to ObjectId reference when student schema is created
|
|
13
|
+
*/
|
|
14
|
+
/* SCHEMA START */
|
|
15
|
+
var fee_assignment = new mongoose_1.Schema({
|
|
16
|
+
feeas_assignment_number: {
|
|
17
|
+
type: String,
|
|
18
|
+
required: true,
|
|
19
|
+
unique: true,
|
|
20
|
+
maxlength: 50,
|
|
21
|
+
trim: true,
|
|
22
|
+
comment: "Unique fee assignment number (auto-generated)"
|
|
23
|
+
},
|
|
24
|
+
feeas_student_id: {
|
|
25
|
+
type: String,
|
|
26
|
+
required: true,
|
|
27
|
+
comment: "Student ID (from admission form admap_student_id) - will be ObjectId when student schema exists"
|
|
28
|
+
},
|
|
29
|
+
feeas_fee_structure_id_feest: {
|
|
30
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
31
|
+
ref: "fee_structures",
|
|
32
|
+
default: null,
|
|
33
|
+
comment: "Fee structure (if assigned from structure)"
|
|
34
|
+
},
|
|
35
|
+
feeas_fee_structure_item_id_feesi: {
|
|
36
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
37
|
+
ref: "fee_structure_items",
|
|
38
|
+
default: null,
|
|
39
|
+
comment: "Specific fee structure item (if assigned from structure)"
|
|
40
|
+
},
|
|
41
|
+
feeas_fee_category_sygms: {
|
|
42
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
43
|
+
ref: "core_general_master",
|
|
44
|
+
required: true,
|
|
45
|
+
comment: "Fee category (Tuition, Library, Lab, etc.)"
|
|
46
|
+
},
|
|
47
|
+
feeas_fee_name: {
|
|
48
|
+
type: String,
|
|
49
|
+
required: true,
|
|
50
|
+
minlength: 1,
|
|
51
|
+
maxlength: 200,
|
|
52
|
+
trim: true,
|
|
53
|
+
comment: "Fee name"
|
|
54
|
+
},
|
|
55
|
+
feeas_fee_description: {
|
|
56
|
+
type: String,
|
|
57
|
+
maxlength: 500,
|
|
58
|
+
trim: true,
|
|
59
|
+
comment: "Fee description"
|
|
60
|
+
},
|
|
61
|
+
feeas_fee_type: {
|
|
62
|
+
type: String,
|
|
63
|
+
required: true,
|
|
64
|
+
enum: ['ONE_TIME', 'RECURRING'],
|
|
65
|
+
default: 'ONE_TIME',
|
|
66
|
+
comment: "Fee type"
|
|
67
|
+
},
|
|
68
|
+
feeas_payment_frequency: {
|
|
69
|
+
type: String,
|
|
70
|
+
required: true,
|
|
71
|
+
enum: ['MONTHLY', 'QUARTERLY', 'SEMESTER', 'ANNUAL', 'ONE_TIME'],
|
|
72
|
+
default: 'ONE_TIME',
|
|
73
|
+
comment: "Payment frequency"
|
|
74
|
+
},
|
|
75
|
+
feeas_original_amount: {
|
|
76
|
+
type: Number,
|
|
77
|
+
required: true,
|
|
78
|
+
min: 0,
|
|
79
|
+
comment: "Original fee amount (before discounts)"
|
|
80
|
+
},
|
|
81
|
+
feeas_discount_amount: {
|
|
82
|
+
type: Number,
|
|
83
|
+
required: true,
|
|
84
|
+
default: 0,
|
|
85
|
+
min: 0,
|
|
86
|
+
comment: "Discount amount applied"
|
|
87
|
+
},
|
|
88
|
+
feeas_scholarship_amount: {
|
|
89
|
+
type: Number,
|
|
90
|
+
required: true,
|
|
91
|
+
default: 0,
|
|
92
|
+
min: 0,
|
|
93
|
+
comment: "Scholarship amount applied"
|
|
94
|
+
},
|
|
95
|
+
feeas_waiver_amount: {
|
|
96
|
+
type: Number,
|
|
97
|
+
required: true,
|
|
98
|
+
default: 0,
|
|
99
|
+
min: 0,
|
|
100
|
+
comment: "Waiver amount applied"
|
|
101
|
+
},
|
|
102
|
+
feeas_tax_amount: {
|
|
103
|
+
type: Number,
|
|
104
|
+
required: true,
|
|
105
|
+
default: 0,
|
|
106
|
+
min: 0,
|
|
107
|
+
comment: "Tax amount"
|
|
108
|
+
},
|
|
109
|
+
feeas_total_amount: {
|
|
110
|
+
type: Number,
|
|
111
|
+
required: true,
|
|
112
|
+
min: 0,
|
|
113
|
+
comment: "Total amount after discounts/scholarships/waivers (including tax)"
|
|
114
|
+
},
|
|
115
|
+
feeas_assigned_amount: {
|
|
116
|
+
type: Number,
|
|
117
|
+
required: true,
|
|
118
|
+
min: 0,
|
|
119
|
+
comment: "Amount assigned (may differ from total if partial assignment)"
|
|
120
|
+
},
|
|
121
|
+
feeas_paid_amount: {
|
|
122
|
+
type: Number,
|
|
123
|
+
required: true,
|
|
124
|
+
default: 0,
|
|
125
|
+
min: 0,
|
|
126
|
+
comment: "Total amount paid so far"
|
|
127
|
+
},
|
|
128
|
+
feeas_outstanding_amount: {
|
|
129
|
+
type: Number,
|
|
130
|
+
required: true,
|
|
131
|
+
min: 0,
|
|
132
|
+
comment: "Outstanding amount (assigned_amount - paid_amount)"
|
|
133
|
+
},
|
|
134
|
+
feeas_assignment_date: {
|
|
135
|
+
type: Date,
|
|
136
|
+
required: true,
|
|
137
|
+
default: Date.now,
|
|
138
|
+
comment: "Date when fee was assigned"
|
|
139
|
+
},
|
|
140
|
+
feeas_due_date: {
|
|
141
|
+
type: Date,
|
|
142
|
+
required: true,
|
|
143
|
+
comment: "Due date for payment"
|
|
144
|
+
},
|
|
145
|
+
feeas_collection_start_date: {
|
|
146
|
+
type: Date,
|
|
147
|
+
required: true,
|
|
148
|
+
comment: "Collection window start date"
|
|
149
|
+
},
|
|
150
|
+
feeas_collection_end_date: {
|
|
151
|
+
type: Date,
|
|
152
|
+
required: true,
|
|
153
|
+
comment: "Collection window end date"
|
|
154
|
+
},
|
|
155
|
+
feeas_installment_count: {
|
|
156
|
+
type: Number,
|
|
157
|
+
required: true,
|
|
158
|
+
default: 1,
|
|
159
|
+
min: 1,
|
|
160
|
+
max: 12,
|
|
161
|
+
comment: "Number of installments"
|
|
162
|
+
},
|
|
163
|
+
feeas_installment_amount: {
|
|
164
|
+
type: Number,
|
|
165
|
+
required: true,
|
|
166
|
+
min: 0,
|
|
167
|
+
comment: "Amount per installment"
|
|
168
|
+
},
|
|
169
|
+
feeas_paid_installments: {
|
|
170
|
+
type: Number,
|
|
171
|
+
required: true,
|
|
172
|
+
default: 0,
|
|
173
|
+
min: 0,
|
|
174
|
+
comment: "Number of installments paid"
|
|
175
|
+
},
|
|
176
|
+
feeas_payment_status: {
|
|
177
|
+
type: String,
|
|
178
|
+
required: true,
|
|
179
|
+
enum: ['PENDING', 'PARTIALLY_PAID', 'PAID', 'OVERDUE', 'WAIVED', 'CANCELLED'],
|
|
180
|
+
default: 'PENDING',
|
|
181
|
+
comment: "Payment status"
|
|
182
|
+
},
|
|
183
|
+
feeas_late_fee_applied: {
|
|
184
|
+
type: Boolean,
|
|
185
|
+
default: false,
|
|
186
|
+
comment: "Has late fee been applied"
|
|
187
|
+
},
|
|
188
|
+
feeas_late_fee_amount: {
|
|
189
|
+
type: Number,
|
|
190
|
+
required: true,
|
|
191
|
+
default: 0,
|
|
192
|
+
min: 0,
|
|
193
|
+
comment: "Late fee amount applied"
|
|
194
|
+
},
|
|
195
|
+
feeas_academic_year_id_acayr: {
|
|
196
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
197
|
+
ref: "aca_academic_year",
|
|
198
|
+
required: true,
|
|
199
|
+
comment: "Academic year"
|
|
200
|
+
},
|
|
201
|
+
feeas_class_program_id_acacpm: {
|
|
202
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
203
|
+
ref: "aca_class_program_master",
|
|
204
|
+
default: null,
|
|
205
|
+
comment: "Class/Program (from admission form)"
|
|
206
|
+
},
|
|
207
|
+
feeas_entity_id_syen: {
|
|
208
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
209
|
+
ref: "core_system_entity",
|
|
210
|
+
required: true,
|
|
211
|
+
comment: "Entity/Organization"
|
|
212
|
+
},
|
|
213
|
+
feeas_admission_id_admap: {
|
|
214
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
215
|
+
ref: "admission_application_main",
|
|
216
|
+
default: null,
|
|
217
|
+
comment: "Reference to admission form (for tracking)"
|
|
218
|
+
},
|
|
219
|
+
feeas_notes: {
|
|
220
|
+
type: String,
|
|
221
|
+
maxlength: 1000,
|
|
222
|
+
trim: true,
|
|
223
|
+
comment: "Additional notes"
|
|
224
|
+
},
|
|
225
|
+
feeas_created_by_user: {
|
|
226
|
+
type: mongoose_1.default.Schema.Types.ObjectId,
|
|
227
|
+
ref: "auth_user_mst",
|
|
228
|
+
required: true,
|
|
229
|
+
comment: "User who assigned the fee"
|
|
230
|
+
},
|
|
231
|
+
feeas_isactive: {
|
|
232
|
+
type: Boolean,
|
|
233
|
+
default: true,
|
|
234
|
+
comment: "Active status flag"
|
|
235
|
+
}
|
|
236
|
+
}, {
|
|
237
|
+
collection: 'fee_assignments',
|
|
238
|
+
timestamps: true // Adds created_at and updated_at
|
|
239
|
+
});
|
|
240
|
+
// Indexes for performance
|
|
241
|
+
fee_assignment.index({ feeas_assignment_number: 1 }, { unique: true });
|
|
242
|
+
fee_assignment.index({ feeas_student_id: 1, feeas_due_date: 1 });
|
|
243
|
+
fee_assignment.index({ feeas_fee_structure_id_feest: 1 });
|
|
244
|
+
fee_assignment.index({ feeas_payment_status: 1, feeas_due_date: 1 });
|
|
245
|
+
fee_assignment.index({ feeas_entity_id_syen: 1, feeas_academic_year_id_acayr: 1 });
|
|
246
|
+
fee_assignment.index({ feeas_due_date: 1 });
|
|
247
|
+
fee_assignment.index({ feeas_student_id: 1, feeas_payment_status: 1 });
|
|
248
|
+
fee_assignment.index({ feeas_entity_id_syen: 1, feeas_payment_status: 1 });
|
|
249
|
+
fee_assignment.index({ feeas_admission_id_admap: 1 });
|
|
250
|
+
/* SCHEMA END */
|
|
251
|
+
// Note: Interface will be defined in cloud-ide-lms-model
|
|
252
|
+
// For now, export the schema model
|
|
253
|
+
var CFeeAssignment = mongoose_1.default.model("fee_assignments", fee_assignment);
|
|
254
|
+
exports.CFeeAssignment = CFeeAssignment;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './fee_assignment';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./fee_assignment"), exports);
|
package/lib/schema/index.d.ts
CHANGED
package/lib/schema/index.js
CHANGED
|
@@ -21,5 +21,6 @@ __exportStar(require("./academics"), exports);
|
|
|
21
21
|
__exportStar(require("./accounts"), exports);
|
|
22
22
|
__exportStar(require("./frontdesk"), exports);
|
|
23
23
|
__exportStar(require("./admission"), exports);
|
|
24
|
+
__exportStar(require("./fees"), exports);
|
|
24
25
|
__exportStar(require("./notifications"), exports);
|
|
25
26
|
__exportStar(require("./system"), exports);
|
|
@@ -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
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"dependencies": {
|
|
3
|
-
"cloud-ide-lms-model": "^1.0.
|
|
3
|
+
"cloud-ide-lms-model": "^1.0.340",
|
|
4
4
|
"dotenv": "^16.5.0",
|
|
5
5
|
"mongoose": "^8.15.0"
|
|
6
6
|
},
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"typescript": "^5.8.3"
|
|
10
10
|
},
|
|
11
11
|
"name": "cloud-ide-model-schema",
|
|
12
|
-
"version": "1.1.
|
|
12
|
+
"version": "1.1.120",
|
|
13
13
|
"description": "Pachage for schema management of Cloud IDEsys LMS",
|
|
14
14
|
"main": "lib/index.js",
|
|
15
15
|
"types": "lib/index.d.ts",
|