任务:完成每日刷新
This commit is contained in:
@@ -1,9 +1,12 @@
|
||||
import { FrontendOrBackendSession, pinus } from "pinus";
|
||||
import { refreshMails } from '../services/mailService';
|
||||
import { refreshMails } from './mailService';
|
||||
import { STATUS } from '../consts/statusCode';
|
||||
import { resResult } from '../pubUtils/util';
|
||||
import { resResult, shouldRefresh, shouldRefreshWeek } from '../pubUtils/util';
|
||||
import { nowSeconds } from "../pubUtils/timeUtil";
|
||||
import { RoleModel } from '../db/Role';
|
||||
import { refDailyTask, refDailyTaskBox } from './taskService'
|
||||
import { REFRESH_HOUR } from "../consts";
|
||||
|
||||
/**
|
||||
* 刷新
|
||||
* @param session
|
||||
@@ -22,4 +25,27 @@ export async function refresh(session: FrontendOrBackendSession) {
|
||||
RoleModel.updatedRoleMailAt(roleId, nowTime);
|
||||
await refreshMails(roleId, sid, serverId, updatedMailAt);
|
||||
}
|
||||
await refreshDaily(session);
|
||||
}
|
||||
|
||||
/**
|
||||
* 每日刷新
|
||||
* @param session
|
||||
*/
|
||||
export async function refreshDaily(session: FrontendOrBackendSession) {
|
||||
let refDaily: number = session.get('refDaily'); // 10位时间戳,每天每人更新一次
|
||||
let refWeekly: number = session.get('refWeekly'); // 10位时间戳,每天每人更新一次
|
||||
if(!refDaily || shouldRefresh(new Date(refDaily * 1000), new Date(), REFRESH_HOUR)) {
|
||||
refDaily = nowSeconds();
|
||||
session.set('refDaily', refDaily);
|
||||
session.push('refDaily', () => {});
|
||||
await refDailyTask(session.get('roleId'), session.get('sid'));
|
||||
}
|
||||
|
||||
if(!refWeekly || shouldRefreshWeek(new Date(refWeekly * 1000), new Date(), 1, REFRESH_HOUR)) {
|
||||
refWeekly = nowSeconds();
|
||||
session.set('refWeekly', refWeekly);
|
||||
session.push('refWeekly', () => {});
|
||||
await refDailyTaskBox(session.get('roleId'), session.get('sid'));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user