57 lines
2.5 KiB
JavaScript
57 lines
2.5 KiB
JavaScript
const cron = require("node-cron");
|
||
const Backup = require("./tasks/backup");
|
||
const Stand = require("./tasks/stands");
|
||
const Messages = require('./tasks/messages');
|
||
const Rept = require('./tasks/rept');
|
||
|
||
// 1. Резервна копія БД щодня о 22:35
|
||
cron.schedule("30 22 * * *", () => {
|
||
Backup.database();
|
||
console.log(`[${new Date().toLocaleString()}] Завдання «Backup» виконане!`);
|
||
});
|
||
|
||
// 2. Перевірка стендів без графіку щосуботи о 18:00
|
||
cron.schedule("0 18 * * 6", async () => {
|
||
console.log(`[${new Date().toLocaleString()}] Запуск перевірки стендів без графіку...`);
|
||
try {
|
||
await Stand.check_add();
|
||
console.log(`[${new Date().toLocaleString()}] Завдання «Stand check_add» виконане!`);
|
||
} catch (err) {
|
||
console.error("Помилка Stand check_add:", err.message);
|
||
}
|
||
});
|
||
|
||
// 3. Відправка графіку стендів щодня о 18:00
|
||
cron.schedule("0 18 * * *", async () => {
|
||
console.log(`[${new Date().toLocaleString()}] Запуск відправки графіків...`);
|
||
try {
|
||
await Stand.check_entries();
|
||
console.log(`[${new Date().toLocaleString()}] Завдання «Stand check_entries» виконане!`);
|
||
} catch (err) {
|
||
console.error("Помилка Stand check_entries:", err.message);
|
||
}
|
||
});
|
||
|
||
// 4. Очищення старих повідомлень щодня о 17:59
|
||
cron.schedule('59 17 * * *', async () => {
|
||
console.log(`[${new Date().toLocaleString()}] Запуск очищення старих повідомлень...`);
|
||
try {
|
||
await Messages.cleanup_old();
|
||
console.log(`[${new Date().toLocaleString()}] Завдання «Messages cleanup_old» виконане успішно!`);
|
||
} catch (err) {
|
||
console.error(`[${new Date().toLocaleString()}] Помилка Messages cleanup_old:`, err.message);
|
||
}
|
||
});
|
||
|
||
// 5. Нагадування про звіт щомісяця о 10:00
|
||
cron.schedule('00 10 1 * *', async () => {
|
||
console.log(`[${new Date().toLocaleString()}] Запуск відправки повідомлень...`);
|
||
try {
|
||
await Rept.send_notification();
|
||
console.log(`[${new Date().toLocaleString()}] Завдання Rept send_notification виконане успішно!`);
|
||
} catch (err) {
|
||
console.error(`[${new Date().toLocaleString()}] Помилка Rept send_notification:`, err.message);
|
||
}
|
||
});
|
||
|
||
console.log("Cron-завдання запущено."); |