core: remove deprecated ScheduleService.Worker

This commit is contained in:
undefined committed 2025-10-02 23:52:05 +08:00
1 parent ddd821d1ba
commit fb4ff1c196
1 file changed
+6 -5
+6 -5
View File
@@ -1,10 +1,10 @@
import moment from 'moment-timezone'; import moment from 'moment-timezone';
import { Filter, ObjectId } from 'mongodb'; import { Filter, ObjectId } from 'mongodb';
import { Time } from '@hydrooj/utils';
import { Context } from '../context'; import { Context } from '../context';
import { Schedule } from '../interface'; import { Schedule } from '../interface';
import { Logger } from '../logger'; import { Logger } from '../logger';
import db from '../service/db'; import db from '../service/db';
import type WorkerService from '../service/worker';
import RecordModel from './record'; import RecordModel from './record';
const logger = new Logger('model/schedule'); const logger = new Logger('model/schedule');
@@ -55,16 +55,17 @@ class ScheduleModel {
} }
static getFirst = getFirst; static getFirst = getFirst;
/** @deprecated use ctx.inject(['worker'], cb) instead */
static Worker: WorkerService;
} }
export async function apply(ctx: Context) { export async function apply(ctx: Context) {
ctx.inject(['worker'], (c) => { ctx.inject(['worker'], (c) => {
ScheduleModel.Worker = c.worker; c.worker.addHandler('task.daily', async (task) => {
c.worker.addHandler('task.daily', async () => {
const pref: Record<string, number> = {}; const pref: Record<string, number> = {};
let start = Date.now(); 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] } }); await RecordModel.coll.deleteMany({ contest: { $in: [RecordModel.RECORD_PRETEST, RecordModel.RECORD_GENERATE] } });
pref.record = Date.now() - start; pref.record = Date.now() - start;
start = Date.now(); start = Date.now();