🐞 fix(好友): 推荐好友列表无数据
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
import { Application, BackendSession, ChannelService, HandlerService, } from "pinus";
|
||||
import { resResult, getRandEelm, getResStr, shouldRefresh, sortArrRandom, checkRoleIsRobot, getRobotSysType, makeRobotId, parseNumberList } from "../../../pubUtils/util";
|
||||
import { STATUS, ROLE_SELECT, FRIEND_DROP_TYPE, FRIEND_RELATION_TYPE, POPULATE_TYPE, BLOCK_OPEATE, CONSUME_TYPE, ITID, HERO_SELECT, REDIS_KEY, MSG_SOURCE, MSG_TYPE, TASK_TYPE, ROBOT_SYS_TYPE, ITEM_CHANGE_REASON, PUSH_ROUTE } from "../../../consts";
|
||||
import Role, { RoleType } from "../../../db/Role";
|
||||
import Role, { RoleModel, RoleType } from "../../../db/Role";
|
||||
import { getTimeFun, getZeroPointD } from "../../../pubUtils/timeUtil";
|
||||
import { FriendApplyModel } from "../../../db/FriendApply";
|
||||
import { FriendListParam, FriendRecommendParams, BlackListParam, FriendValueListParam, HeroDetailParam } from "../../../domain/roleField/friend";
|
||||
@@ -52,12 +52,13 @@ export class FriendHandler {
|
||||
|
||||
const { lv, serverId: myServerId } = await Role.findByRoleId(roleId, ROLE_SELECT.GET_MY_SERVER);
|
||||
let nums = parseNumberList(FRIEND.FRIEND_RECONMMEND_LEVEL);
|
||||
let max = Math.max(...nums);
|
||||
let allList = await Role.getRecommedList(lv - max, lv + max, day);
|
||||
// let max = Math.max(...nums);
|
||||
let recommendList = await RoleModel.find({ loginTime: { $gt: day }, hasInit: true }).limit(200).lean({ getters: true, virtuals: true })
|
||||
let allList: RoleType[] = []
|
||||
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;
|
||||
allList = recommendList.filter(cur => { return cur.lv >= lv - num && cur.lv <= lv + num });
|
||||
if(allList.length > FRIEND.FRIEND_RECONMMEND_NUM) break;
|
||||
}
|
||||
|
||||
// 筛掉自己今天申请过的人
|
||||
|
||||
Reference in New Issue
Block a user