diff --git a/shared/domain/gameField/serverlist.ts b/shared/domain/gameField/serverlist.ts index d04127358..230d39f57 100644 --- a/shared/domain/gameField/serverlist.ts +++ b/shared/domain/gameField/serverlist.ts @@ -27,13 +27,13 @@ export class ServerParam { export class GroupParam { groupId: number; // 大区号 groupName: string; // 大区名 - serverStr: string; // 大区内小区编号 S1-S10 + groupStr: string; // 大区内小区编号 S1-S10 servers: ServerParam[]; // 区 constructor(server: ServerInfo) { this.groupId = server.groupId; this.groupName = server.groupName; - this.serverStr = `S${server.id}-S${server.id + 9}`; + this.groupStr = `S${server.id}-S${server.id + 9}`; this.servers = new Array(); } @@ -52,6 +52,7 @@ export class ServerParamWithRole extends ServerParam { headHid: number; // 头像 sHid: number; // 形象 lv: number; // 等级 + updatedAt: Date; constructor(role: RoleType, server: ServerInfo) { super(server); @@ -63,5 +64,6 @@ export class ServerParamWithRole extends ServerParam { this.headHid = role.headHid; this.sHid = role.sHid; this.lv = role.lv; + this.updatedAt = role.updatedAt; } } \ No newline at end of file diff --git a/web-server/app/controller/game.ts b/web-server/app/controller/game.ts index 317b4f02d..445f3d6c6 100644 --- a/web-server/app/controller/game.ts +++ b/web-server/app/controller/game.ts @@ -17,6 +17,9 @@ export default class GameController extends Controller { let allServers = await GameModel.getServerList(); let roles = await RoleModel.findAllByUid(uid); + allServers.sort((a, b) => { + return b.id - a.id; + }); for(let server of allServers) { if(auth === 1 || (!auth && server.serverType == serverType)) { server['serverStr'] = `S${server.id}`; @@ -35,6 +38,8 @@ export default class GameController extends Controller { } } + loginServerList.sort((a, b) => { return b.updatedAt.getTime() - a.updatedAt.getTime()}); + if (serverList && serverList.length > 0) { ctx.body = ctx.service.utils.resResult(STATUS.SUCCESS, { serverList, loginServerList }); } else {