mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-20 01:38:19 +08:00
core: remove deprecated ScheduleService.Worker
This commit is contained in:
1 file changed
+6
-5
@@ -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();
|
||||||
|
|||||||
Reference in new issue
Block a user