From fb4ff1c19681c7260f7316c22e42b489dcefbcbd Mon Sep 17 00:00:00 2001 From: undefined Date: Thu, 2 Oct 2025 23:52:05 +0800 Subject: [PATCH] core: remove deprecated ScheduleService.Worker --- packages/hydrooj/src/model/schedule.ts | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/hydrooj/src/model/schedule.ts b/packages/hydrooj/src/model/schedule.ts index ea2c73115..fdbeec728 100644 --- a/packages/hydrooj/src/model/schedule.ts +++ b/packages/hydrooj/src/model/schedule.ts @@ -1,10 +1,10 @@ import moment from 'moment-timezone'; import { Filter, ObjectId } from 'mongodb'; +import { Time } from '@hydrooj/utils'; import { Context } from '../context'; import { Schedule } from '../interface'; import { Logger } from '../logger'; import db from '../service/db'; -import type WorkerService from '../service/worker'; import RecordModel from './record'; const logger = new Logger('model/schedule'); @@ -55,16 +55,17 @@ class ScheduleModel { } static getFirst = getFirst; - /** @deprecated use ctx.inject(['worker'], cb) instead */ - static Worker: WorkerService; } export async function apply(ctx: Context) { ctx.inject(['worker'], (c) => { - ScheduleModel.Worker = c.worker; - c.worker.addHandler('task.daily', async () => { + c.worker.addHandler('task.daily', async (task) => { const pref: Record = {}; let start = Date.now(); + if (start - task.executeAfter.getTime() > Time.week) { + logger.warn('task.daily for date %s skipped', task.executeAfter.toISOString()); + return; + } await RecordModel.coll.deleteMany({ contest: { $in: [RecordModel.RECORD_PRETEST, RecordModel.RECORD_GENERATE] } }); pref.record = Date.now() - start; start = Date.now();