diff --git a/game-server/app/servers/battle/handler/comBattleHandler.ts b/game-server/app/servers/battle/handler/comBattleHandler.ts index 0e1c65396..74b3a004a 100644 --- a/game-server/app/servers/battle/handler/comBattleHandler.ts +++ b/game-server/app/servers/battle/handler/comBattleHandler.ts @@ -291,7 +291,8 @@ export class ComBattleHandler { let sid = session.get('sid'); let { teamCode, isFrd } = msg; let teamStatus = this.teamMap.get(teamCode); - if (!teamStatus || teamStatus.status !== COM_TEAM_STATUS.DEFAULT || teamStatus.roleIds.length === 3) return resResult(STATUS.COM_BATTLE_MEMBER_LIMIT); + if (!teamStatus || teamStatus.status !== COM_TEAM_STATUS.DEFAULT) return resResult(STATUS.COM_BATTLE_TEAM_INVALID); + if (teamStatus.roleIds.length === 3) return resResult(STATUS.COM_BATTLE_MEMBER_LIMIT); if (teamStatus.roleIds.indexOf(roleId) !== -1) return resResult(STATUS.COM_BATTLE_DUP_ENTER); let { lv = 1, headHid = 19, topFiveCe = 0, sHid = 19 } = await Role.findByRoleId(roleId); diff --git a/game-server/test/comBattle.test.ts b/game-server/test/comBattle.test.ts index 2de8cf8e8..ee233306b 100644 --- a/game-server/test/comBattle.test.ts +++ b/game-server/test/comBattle.test.ts @@ -13,6 +13,8 @@ describe('寻宝创建队伍', function() { var pinusClient; var roleInfo; + const loginParm = {token:'mgn0njiajb6kapid3eekvt7tssxelig9zi2oq2bzkxr4zzi9w9', serverId: 1}; + const createTeamParm = {blueprtId: 33001, pub: true, ceLimit: 0}; beforeEach(function(done) { pinusClient = new PinusWSClient(); pinusClient.on(PinusWSClientEvent.EVENT_IO_ERROR, (event) => { @@ -42,7 +44,7 @@ describe('寻宝创建队伍', function() { // 连接成功执行函数 console.log('gate连接成功', data); // done(); - pinusClient.request('connector.entryHandler.enter', {token:'mgn0njiajb6kapid3eekvt7tssxelig9zi2oq2bzkxr4zzi9w9', serverId: 1} , (ret) => { + pinusClient.request('connector.entryHandler.enter', loginParm, (ret) => { // 消息回调 console.log('connector返回', JSON.stringify(ret)); roleInfo = ret.role; @@ -57,12 +59,28 @@ describe('寻宝创建队伍', function() { }); it('直接返回队伍', function(done) { - pinusClient.request('battle.comBattleHandler.createTeam', {blueprtId: 33001, pub: true, ceLimit: 0}, (res) => { + pinusClient.request('battle.comBattleHandler.createTeam', createTeamParm, (res) => { expect(res).to.be.an('object'); expect(res.code).equal(0); expect(res.data).to.be.an('object'); expect(res.data.teamCode).to.be.a('string'); expect(res.data.roleStatus).to.be.an('array'); + res.data.roleStatus.forEach(roleSt => { + expect(roleSt).to.have.all.keys('roleId', 'roleName', 'isCap', 'isFrd', 'headHid', 'sHid', 'topFiveCe', 'lv', 'isRobot', 'heroes', 'killed', 'totalDmg'); + }); + done(); + }); + }); + + it('获取寻宝记录', function(done) { + pinusClient.request('battle.comBattleHandler.getTeamRec', {}, (res) => { + expect(res).to.be.an('object'); + expect(res.code).equal(0); + expect(res.data).to.be.an('object'); + expect(res.data.teamInfos).to.be.an('array'); + res.data.teamInfos.forEach(info => { + expect(info).to.have.contains.keys('teamCode', 'roleIds', 'pub', 'blueprtId', 'quality', 'status', 'roleStatus', 'capId', 'ceLimit', 'roleCnt', 'bossHpArr', 'createdAt'); + }); done(); }); }); diff --git a/shared/db/ComBattleTeam.ts b/shared/db/ComBattleTeam.ts index 0d7a73bb6..4f359cf5d 100644 --- a/shared/db/ComBattleTeam.ts +++ b/shared/db/ComBattleTeam.ts @@ -229,7 +229,7 @@ export default class ComBattleTeam extends BaseModel { if (isAssist) { query = Object.assign(query, {capId: {$ne: roleId}}); } - const teams: ComBattleTeamType[] = await ComBattleTeamModel.find(query).limit(limitCnt).lean(lean); + const teams: ComBattleTeamType[] = await ComBattleTeamModel.find(query).limit(limitCnt).sort({createdAt: -1}).lean(lean); return teams; }