✨ feat(服务器): 更新维护逻辑
This commit is contained in:
@@ -65,8 +65,8 @@ export class GmHandler {
|
||||
}
|
||||
|
||||
// 开始维护
|
||||
async startMaintenance(msg: { id: number, startTime: number, endTime: number, hasNotify: boolean }, session: BackendSession) {
|
||||
const { id, startTime, endTime, hasNotify } = msg;
|
||||
async startMaintenance(msg: { id: number, startTime: number, endTime: number, hasNotify: boolean, version: string }, session: BackendSession) {
|
||||
const { id, startTime, endTime, hasNotify, version } = msg;
|
||||
if(!id || !isNumber(startTime) || !isNumber(endTime)) return resResult(STATUS.WRONG_PARMS);
|
||||
if(endTime < nowSeconds()) return resResult(STATUS.WRONG_PARMS, '结束时间不能比现在早');
|
||||
const uid = session.get('uid');
|
||||
@@ -75,7 +75,7 @@ export class GmHandler {
|
||||
await pinus.app.rpc.systimer.systimerRemote.stopMaintenance.broadcast(server.maintenance.batchCode, [server.id]);
|
||||
}
|
||||
|
||||
let newMaintenance: Maintenance = { batchCode: genCode(10), startTime, endTime, hasNotify, isOpen: true }
|
||||
let newMaintenance: Maintenance = { batchCode: genCode(10), startTime, endTime, hasNotify, isOpen: true, version }
|
||||
server = await ServerlistModel.updateByServerId(id, { maintenance: newMaintenance });
|
||||
await pinus.app.rpc.systimer.systimerRemote.initMaintenance.broadcast([server]);
|
||||
|
||||
@@ -83,12 +83,12 @@ export class GmHandler {
|
||||
}
|
||||
|
||||
// 大区一起维护
|
||||
async startRegionMaintenance(msg: { startTime: number, endTime: number, hasNotify: boolean }, session: BackendSession) {
|
||||
const { startTime, endTime, hasNotify } = msg;
|
||||
async startRegionMaintenance(msg: { startTime: number, endTime: number, hasNotify: boolean, version: string }, session: BackendSession) {
|
||||
const { startTime, endTime, hasNotify, version } = msg;
|
||||
if(!isNumber(startTime) || !isNumber(endTime)) return resResult(STATUS.WRONG_PARMS);
|
||||
if(endTime < nowSeconds()) return resResult(STATUS.WRONG_PARMS, '结束时间不能比现在早');
|
||||
const uid = session.get('uid');
|
||||
let newMaintenance: Maintenance = { batchCode: genCode(10), startTime, endTime, hasNotify, isOpen: true }
|
||||
let newMaintenance: Maintenance = { batchCode: genCode(10), startTime, endTime, hasNotify, isOpen: true, version }
|
||||
let servers = await ServerlistModel.findByEnv(this.app.get('env'));
|
||||
let serverIdsOfBatchCode = new Map<string, number[]>();
|
||||
let serverIds: number[] = [];
|
||||
|
||||
Reference in New Issue
Block a user