gpt4 book ai didi

node.js - Nodejs 在创建一天后检查并更新数据库字段

转载 作者:太空宇宙 更新时间:2023-11-04 03:15:49 25 4
gpt4 key购买 nike

我有 Mongoose 模型

const BookingSchema = new Schema({
start_at:{
type:Date,
required:true
},
end_at:{
type:Date,
required:true
},
canceled_at:{
type:Date,
required:false
},
status:{
type:String,
enum:["PENDING","APPROVED","NO_RESPONSE"],

default:"PENDING"
}},
{
timestamps:true
}
);

如果 status 字段尚未更改为 APPROVED,我需要在创建一天后将 status 字段更改为 NO_RESPONSE

我如何使用nodejs、mongod 来做到这一点?

谢谢

最佳答案

在这种情况下您可以使用 cronjob

const CronJob = require('cron').CronJob;

const checkBookingStatus = new CronJob({
cronTime: '0 1 * * *', // every 24 hours
onTick: function() {
console.log(`
Runing a job at 01:00 at America/Sao_Paulo timezone
`);
Booking.update({ status: 'PENDING', createdAt: {
$lt: new Date(),
$gte: new Date(new Date().setDate(new Date().getDate()-1))
}}, { status: '' })
},
start: true,
timezone: "America/Sao_Paulo"
});

关于node.js - Nodejs 在创建一天后检查并更新数据库字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56513635/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com