diff --git a/game-server/app/servers/role/handler/friendHandler.ts b/game-server/app/servers/role/handler/friendHandler.ts index f2b50ff13..46352c662 100644 --- a/game-server/app/servers/role/handler/friendHandler.ts +++ b/game-server/app/servers/role/handler/friendHandler.ts @@ -44,12 +44,13 @@ export class FriendHandler { const day = getTimeFun().getBeforeHour(FRIEND.FRIEND_RECONMMEND_ACTIVETIME); - const { lv, serverId: myServerId, userInfo: { serverType: myServerType } } = await RoleModel.findByRoleId(roleId, ROLE_SELECT.GET_MY_SERVER); + const { lv, serverId: myServerId } = await RoleModel.findByRoleId(roleId, ROLE_SELECT.GET_MY_SERVER); let nums = parseNumberList(FRIEND.FRIEND_RECONMMEND_LEVEL); - nums = nums.sort((a, b) => b - a); - let allList = []; - for(let num of nums) { - allList = await RoleModel.getRecommedList(lv - num, lv + num, day); + let max = Math.max(...nums); + let allList = await RoleModel.getRecommedList(lv - max, lv + max, day); + let sortedNum = nums.sort((a, b) => a - b); + for(let num of sortedNum) { + allList = allList.filter(cur => cur.lv >= lv - num && cur.lv <= lv + num); if(allList.length > 0) break; }