cloud-ide-model-schema
Version:
Pachage for schema management of Cloud IDEsys LMS
64 lines (63 loc) • 1.74 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.CRecoveryOperation = void 0;
var mongoose_1 = require("mongoose");
var recovery_operations = new mongoose_1.Schema({
recv_backup_record_id: {
type: mongoose_1.default.Schema.Types.ObjectId,
ref: "backup_records",
required: true
},
recv_recovery_type: {
type: String,
required: true,
enum: ['full', 'partial', 'point_in_time', 'file']
},
recv_status: {
type: String,
required: true,
enum: ['pending', 'in_progress', 'completed', 'failed', 'cancelled'],
default: 'pending'
},
recv_target_date: {
type: Date
},
recv_collections_to_restore: {
type: [String]
},
recv_files_to_restore: {
type: [String]
},
recv_started_at: {
type: Date
},
recv_completed_at: {
type: Date
},
recv_duration: {
type: Number,
min: 0
},
recv_error_message: {
type: String,
maxlength: 1000
},
recv_created_by: {
type: mongoose_1.default.Schema.Types.ObjectId,
ref: "auth_user_mst"
},
recv_created_at: {
type: Date,
default: Date.now
},
recv_isactive: {
type: Boolean,
default: true
}
}, { collection: 'recovery_operations', timestamps: { createdAt: 'recv_created_at' } });
// Indexes
recovery_operations.index({ recv_backup_record_id: 1 });
recovery_operations.index({ recv_status: 1 });
recovery_operations.index({ recv_created_at: -1 });
var CRecoveryOperation = mongoose_1.default.model("recovery_operations", recovery_operations);
exports.CRecoveryOperation = CRecoveryOperation;