guoziyun пре 9 месеци
родитељ
комит
330d842e61

+ 5 - 4
oms/dist/services/cron-jobs/index.js

@@ -16,10 +16,11 @@ const settings = [
     // ["message-sender", "*/5 * * * *", require("./message-sender") as CronJobModule], // 每5分钟运行一次, 已经单独剥离出去了(message-seender-service),定时任务这里取消了
     // ["active-user-daily-notify", "30 18 * * *", require("./active-user-daily-notify") as CronJobModule], // 每天下午6点,开始活跃用户新作品消息推送
     // ["fcm-notify", "30 18 * * *", require("./fcm-notify") as CronJobModule], // 每天下午6点,基于原来的active-user-daily-notify,增加schedule推送,AB测试
-    ["daily-notify-at-morning", "0 19 * * *", require("./notify/daily-notify-at-morning")], // 每天下午7点,对应巴西时间早上8点推送一轮
-    ["daily-notify-at-midday", "0 23 * * *", require("./notify/daily-notify-at-midday")], // 每天晚上11点,对应巴西时间中午12点推送一轮
-    ["daily-notify-at-evening", "0 3 * * *", require("./notify/daily-notify-at-evening")], // 每天凌晨3点,对应巴西时间下午4点
-    ["daily-notify-at-afternoon", "0 7 * * *", require("./notify/daily-notify-at-afternoon")], // 每天上午7点,对应巴西时间晚上8点
+    // ["daily-notify-at-morning", "0 19 * * *", require("./notify/daily-notify-at-morning") as CronJobModule], // 每天下午7点,对应巴西时间早上8点推送一轮
+    // ["daily-notify-at-midday", "0 23 * * *", require("./notify/daily-notify-at-midday") as CronJobModule], // 每天晚上11点,对应巴西时间中午12点推送一轮
+    // ["daily-notify-at-evening", "0 3 * * *", require("./notify/daily-notify-at-evening") as CronJobModule], // 每天凌晨3点,对应巴西时间下午4点
+    // ["daily-notify-at-afternoon", "0 7 * * *", require("./notify/daily-notify-at-afternoon") as CronJobModule], // 每天上午7点,对应巴西时间晚上8点
+    ["local-timezone-notify", "0 18 * * *", require("./notify/local-timezone-notify")], // 每天下午6点,开始制定当天的推送计划
 ];
 /**
  * Starts all scheduled cron jobs.

+ 20 - 19
oms/dist/services/cron-jobs/notify/local-timezone-notify.js

@@ -8,9 +8,10 @@ const mongoose_1 = __importDefault(require("mongoose"));
 const userModel_1 = require("../../../src/models/userModel");
 const messageTemplateModel_1 = require("../../../src/models/messageTemplateModel");
 const messageStrategyModel_1 = require("../../../src/models/messageStrategyModel");
+const messageRecordModel_1 = require("../../../src/models/messageRecordModel");
 const artModel_1 = __importDefault(require("../../../src/models/artModel"));
 const timezoneService_1 = require("../../../src/services/timezoneService");
-const database_1 = require("../../../src/database");
+// import { connectToDatabase } from "../../../src/database";
 // 确保模型已被注册
 mongoose_1.default.model("MessageTemplate", messageTemplateModel_1.MessageTemplate.schema);
 mongoose_1.default.model("MessageStrategy", messageStrategyModel_1.MessageStrategy.schema);
@@ -100,23 +101,23 @@ async function getTodaysArtworksForFCM() {
  */
 const recordMessage = async (uid, cc, template, messageData, strategyId, strategyName, plannedSendAt) => {
     try {
-        // await MessageRecord.create({
-        //   uid: uid,
-        //   cc: cc,
-        //   templateId: template._id,
-        //   templateName: template.templateName,
-        //   strategyId: strategyId,
-        //   strategyName: strategyName,
-        //   title: messageData.title,
-        //   content: messageData.content,
-        //   image: messageData.image,
-        //   bigger: messageData.bigger === "true",
-        //   action: messageData.action,
-        //   param: messageData.param,
-        //   extend: messageData.extend,
-        //   plannedSendAt: plannedSendAt, // 使用计算出的计划时间
-        //   status: 0,
-        // });
+        await messageRecordModel_1.MessageRecord.create({
+            uid: uid,
+            cc: cc,
+            templateId: template._id,
+            templateName: template.templateName,
+            strategyId: strategyId,
+            strategyName: strategyName,
+            title: messageData.title,
+            content: messageData.content,
+            image: messageData.image,
+            bigger: messageData.bigger === "true",
+            action: messageData.action,
+            param: messageData.param,
+            extend: messageData.extend,
+            plannedSendAt: plannedSendAt, // 使用计算出的计划时间
+            status: 0,
+        });
         console.log(`成功为用户 ${uid} 创建消息记录。计划发送时间: ${plannedSendAt.toISOString()}`);
     }
     catch (error) {
@@ -129,7 +130,7 @@ const recordMessage = async (uid, cc, template, messageData, strategyId, strateg
  */
 async function run() {
     console.log("脚本开始:创建活跃用户每日通知任务...");
-    await (0, database_1.connectToDatabase)();
+    // await connectToDatabase();
     try {
         const sevenDaysAgo = new Date(Date.now() - 7 * 24 * 60 * 60 * 1000);
         const activeUsers = await userModel_1.User.find({