添加数据库类型别名
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import { APP_ID } from './../consts';
|
||||
import BaseModel from './BaseModel';
|
||||
import { index, getModelForClass, prop } from '@typegoose/typegoose';
|
||||
import { index, getModelForClass, prop, DocumentType } from '@typegoose/typegoose';
|
||||
|
||||
class ServerInfo {
|
||||
@prop({ required: true })
|
||||
@@ -56,7 +56,7 @@ export default class Game extends BaseModel {
|
||||
versionCode: number;
|
||||
|
||||
public static async getAllServerList() {
|
||||
let game = await GameModel.findOne().lean();
|
||||
let game: GameType = await GameModel.findOne().lean();
|
||||
if(game) {
|
||||
return game.serverList;
|
||||
} else {
|
||||
@@ -65,7 +65,7 @@ export default class Game extends BaseModel {
|
||||
}
|
||||
|
||||
public static async getServerListByType(serverType: string) {
|
||||
let game = await GameModel.findOne().lean();
|
||||
let game: GameType = await GameModel.findOne().lean();
|
||||
if (!game) {
|
||||
const serverInfo: ServerInfo = { id: 1, name: '常山少年', host: 'pinus_test.trgame.cn', port: 3014, status: 1, createTime: new Date(), serverType: 'official' };
|
||||
const iconUrl = `https://download.tgamebox.cn/avatar/${APP_ID}/1.png`;
|
||||
@@ -84,9 +84,11 @@ export default class Game extends BaseModel {
|
||||
|
||||
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);
|
||||
let game: GameType = await GameModel.findOneAndUpdate({}, {$push: {serverList: serverInfo}}, {new: true}).lean(lean);
|
||||
return game;
|
||||
}
|
||||
}
|
||||
|
||||
export const GameModel = getModelForClass(Game);
|
||||
|
||||
export interface GameType extends Pick<DocumentType<Game>, keyof Game>{};
|
||||
|
||||
Reference in New Issue
Block a user