var j = schedule.scheduleJob(unique_name, timeNow, async function () {
session10.startTransaction();
try{
await readmodel.findOneAndUpdate({}, {
$set: {
readonlyMode: true,
yearEndClosure: true
}
}, { session10 });
var archivalActivity ={
activity_id: 4,
activityName: 'Current year Data Back',
activity_Status: 'In Progress',
err_occured: 'None',
remarks: 'None'
}
await yearmodel.findOneAndUpdate({year:MCpayload.year,month:MCpayload.month,'activities.activity_id': 3},{
$set :{
'activities.$.activity_Status': 'Completed',
},
},{session10});
await yearmodel.findOneAndUpdate({year:MCpayload.year,month:MCpayload.month},{
$push :{
activities: archivalActivity
}
},{session10})
const etdataCurrentYear = await etmodel.find({}, { _id: 0 },{session10})
const etBackupData = await emt_archival_yearEnd.insertMany(etdataCurrentYear, { session10 });
console.log(etdataCurrentYear.length, etBackupData.length, "inserted Succesfully")
const etproofCurrentYear = await etproofmodel.find({}, { _id: 0 }, { session10});
const etproofBackupData = await proof_archival_yearEnd.insertMany(etproofCurrentYear, { session10});
console.log(etproofCurrentYear.length, etproofBackupData.length, "inserted Succesfully")
const cmnproofCurrentYear = await etcommonproofmodel.find({}, { _id: 0 }, {session10 });
const cmnproofBackupData = await common_proof_archival_yearEnd.insertMany(cmnproofCurrentYear, { session10 });
console.log(cmnproofCurrentYear.length, cmnproofBackupData.length, "inserted Succesfully")
const etcaseCurrentYear = await etcasemodel.find({}, { _id: 0 }, {session10});
const etcaseBackupData = await caseStudy_proof_archival_yearEnd.insertMany(etcaseCurrentYear, { session10});
console.log(etcaseCurrentYear.length, etcaseBackupData.length, "inserted Succesfully")
const umtSummaryCurrentYear = await umt_summary_model.find({}, { _id: 0 }, { session10 });
const umtSummaryBackupData = await UmtSummary_archive_yearEnd.insertMany(umtSummaryCurrentYear, {session10 });
console.log(umtSummaryCurrentYear.length, umtSummaryBackupData.length, "inserted Succesfully")
const umtDetailsCurrentYear = await umt_data_model.find({}, { _id: 0 }, {session10 });
const umtDetailsBackupData = await UmtDetail_archive_yearEnd.insertMany(umtetailsCurrentYear, {session10 });
console.log(umtDetailsCurrentYear.length, umtDetailsBackupData.length, "inserted Succesfully")
const umtExpCurrentYear = await umt_exception_model.find({}, { _id: 0 }, { session10 });
const umtExpBackupData = await UmtExceptional_archive_yearEnd.insertMany(umtExpCurrentYear, { session10 });
console.log(umtExpCurrentYear.length, umtExpBackupData.length, "inserted Succesfully")
var archivalTablebackup ={
activity_id: 5,
activityName: 'Archival Tables Backup',
activity_Status: 'In Progress',
err_occured: 'None',
remarks: 'None'
}
await year_end_closure_model.findOneAndUpdate({year:MCpayload.year,month:MCpayload.month,'activities.activity_id': 4},{
$set :{
'activities.$.activity_Status': 'Completed',
},
},{session10});
await year_end_closure_model.findOneAndUpdate({year:MCpayload.year,month:MCpayload.month},{
$push :{
activities: archivalTablebackup
}
},{session10})
console.log("current year tables backup done")
const etarchival = await etmodel_archive.find({}, { _id: 0 }, {session10});
const etarchivalBackup = await emt_archive_backup.insertMany(etarchival, {session10});
console.log(etarchival.length, etarchivalBackup.length, "inserted Succesfully")
const etProofArchival = await etproofmodel_archive.find({}, { _id: 0 }, { session10});
const etProofArchivalBackup = await proof_archive_backup.insertMany(etProofArchival, {session10});
console.log(etProofArchival.length, etProofArchivalBackup.length, "inserted Succesfully")
const cmnProofArchival = await etcommonproof_archive_model.find({}, { _id: 0 }, { session10});
const cmnProofArchivalBackup = await cmn_proof_archive_backup.insertMany(cmnProofArchival, {session10 });
console.log(cmnProofArchival.length, cmnProofArchivalBackup.length, "inserted Succesfully")
const etcaseArchvial = await etcasemodel_archive.find({}, { _id: 0 }, { session:session10 });
const etcaseArchivalBackup = await caseStudy_archive_backup.insertMany(etcaseArchvial, {session10});
console.log(etcaseArchvial.length, etcaseArchivalBackup.length, "inserted Succesfully")
session10.commitTransaction();
}catch(err){
}
如果交易中出现任何问题,则无法恢复,请让我知道我哪里做错了.............................. ...................................................... ...................................................... ...................................................... ...................................................... ...................................................... ....
您不调用 AbortTransaction。然而,mongo 提供了方便的 API,可以为您简化这项工作。请参阅此处