✨ feat(gvg): 组建期
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import { Application, BackendSession, pinus } from 'pinus';
|
||||
import { getRandSingleEelm, resResult } from '../../../pubUtils/util';
|
||||
import { getRandSingleEelm, isTimestamp, resResult } from '../../../pubUtils/util';
|
||||
import { STATUS } from '../../../consts/statusCode';
|
||||
import { GMMailModel, GMMailType } from '../../../db/GMMail';
|
||||
import { ACTIVITY_TYPE, GM_MAIL_STATUS, GM_MAIL_TYPE, MAIL_TIME_TYPE, MEMORY_LOG_TYPE, PUSH_ROUTE, SURVEY_SELECT } from '../../../consts';
|
||||
@@ -17,6 +17,12 @@ import { getSurvey } from '../../../services/gmService';
|
||||
import { sendMessageToAllWithSuc } from '../../../services/pushService';
|
||||
import { sendMailByContent, sendMailsByGmMail } from '../../../services/mailService';
|
||||
import { saveMemory } from '../../../services/log/memoryLogService';
|
||||
import { getGVGConfigFromRemote } from '../../../services/gvg/gvgService';
|
||||
import { GVGServerGroupModel } from '../../../db/GVGServerGroup';
|
||||
import { isNumber } from 'underscore';
|
||||
import { group } from 'console';
|
||||
import { GVGConfigModel } from '../../../db/GVGConfig';
|
||||
import { ServerlistModel } from '../../../db/Serverlist';
|
||||
|
||||
let timer: NodeJS.Timer;
|
||||
export default function (app: Application) {
|
||||
@@ -285,4 +291,30 @@ export class GmHandler {
|
||||
await saveMemory(memoryLogType);
|
||||
return resResult(STATUS.SUCCESS);
|
||||
}
|
||||
|
||||
async updateGVGServerGroup(msg: { serverId: number[], groupId: number }, session: BackendSession) {
|
||||
const { serverId: serverIds, groupId } = msg;
|
||||
if(!isNumber(groupId)) return resResult(STATUS.WRONG_PARMS);
|
||||
for(let serverId of serverIds) {
|
||||
if(!isNumber(serverId)) return resResult(STATUS.WRONG_PARMS);
|
||||
}
|
||||
let { scheduleTime } = await getGVGConfigFromRemote();
|
||||
for(let serverId of serverIds) {
|
||||
await GVGServerGroupModel.updateByServerId(serverId, groupId, scheduleTime);
|
||||
}
|
||||
return resResult(STATUS.SUCCESS);
|
||||
}
|
||||
|
||||
async updateGVGConfig(msg: { configId: number, teamTime: number, prepareTime: number, battleTime: number, scheduleTime: number }, session: BackendSession) {
|
||||
const { configId, teamTime, prepareTime, battleTime, scheduleTime } = msg;
|
||||
if(!isNumber(configId) || !isTimestamp(teamTime) || !isTimestamp(prepareTime) || !isTimestamp(battleTime) || !isTimestamp(scheduleTime)) {
|
||||
return resResult(STATUS.WRONG_PARMS);
|
||||
}
|
||||
if(teamTime > prepareTime || prepareTime > battleTime || battleTime > scheduleTime) {
|
||||
return resResult(STATUS.GM_GVG_TIME_ERR);
|
||||
}
|
||||
await GVGConfigModel.updateConfig(configId, teamTime, prepareTime, battleTime, scheduleTime);
|
||||
await pinus.app.rpc.systimer.systimerRemote.initGVGConfigSchedule.broadcast();
|
||||
return resResult(STATUS.SUCCESS);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user