添加服务器接口
This commit is contained in:
@@ -12,6 +12,7 @@ export const STATUS = {
|
||||
SERVER_NOT_FOUND: { code: 10004, simStr: '未找到服务器列表' },
|
||||
ROLE_NOT_FOUND: { code: 10005, simStr: '未找到角色' },
|
||||
DUP_LOGIN: { code: 10006, simStr: '重复登录' },
|
||||
NEW_SERVER_ERR: { code: 10007, simStr: '添加新服务器失败' },
|
||||
// 战斗相关状态 20000 - 29999
|
||||
// 战斗通用 20000 - 20099
|
||||
BATTLE_MISS_INFO: { code: 20001, simStr: '缺少关卡信息' },
|
||||
|
||||
@@ -43,7 +43,7 @@ export default class Game extends BaseModel {
|
||||
@prop({ required: true })
|
||||
des: string;
|
||||
|
||||
@prop({ required: true })
|
||||
@prop({ required: true, type: ServerInfo, default: [] })
|
||||
serverList: Array<ServerInfo>;
|
||||
|
||||
@prop({ required: true })
|
||||
@@ -72,6 +72,12 @@ export default class Game extends BaseModel {
|
||||
console.log(serverType, serverList);
|
||||
return serverList;
|
||||
}
|
||||
|
||||
public static async newServer(serverId: number, serverType: string, name: string, host: string, port: number, status: number, lean = true) {
|
||||
let serverInfo: ServerInfo = {id: serverId, name, host, port, status, createTime: new Date(), serverType};
|
||||
let game = await GameModel.findOneAndUpdate({}, {$push: {serverList: serverInfo}}, {new: true}).lean(lean);
|
||||
return game;
|
||||
}
|
||||
}
|
||||
|
||||
export const GameModel = getModelForClass(Game);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { STATUS } from '@consts/statusCode';
|
||||
import { GameModel } from '@db/Game';
|
||||
import Game, { GameModel } from '@db/Game';
|
||||
import { Controller } from 'egg';
|
||||
|
||||
export default class GameController extends Controller {
|
||||
@@ -13,4 +13,15 @@ export default class GameController extends Controller {
|
||||
ctx.body = ctx.service.utils.resResult(STATUS.SERVER_NOT_FOUND);
|
||||
}
|
||||
}
|
||||
|
||||
public async newServer() {
|
||||
const { ctx } = this;
|
||||
const { serverId, serverType, name, host, port, status } = ctx.request.body;
|
||||
const gameInfo = await GameModel.newServer(serverId, serverType, name, host, port, status);
|
||||
if (gameInfo) {
|
||||
ctx.body = ctx.service.utils.resResult(STATUS.SUCCESS, { gameInfo });
|
||||
} else {
|
||||
ctx.body = ctx.service.utils.resResult(STATUS.NEW_SERVER_ERR);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user