寻宝:点击头像接口设置机器人

This commit is contained in:
luying
2021-08-25 16:57:11 +08:00
parent 14eac59d43
commit fe78c998b2
13 changed files with 98 additions and 31 deletions
@@ -1,6 +1,6 @@
import { Application, BackendSession, ChannelService, HandlerService, } from "pinus";
import { resResult, getRandEelm, getResStr, shouldRefresh, sortArrRandom } from "../../../pubUtils/util";
import { STATUS, ROLE_SELECT, FRIEND_DROP_TYPE, FRIEND_RELATION_TYPE, POPULATE_TYPE, BLOCK_OPEATE, CONSUME_TYPE, ITID, HERO_SELECT, EQUIP_SELECT, REDIS_KEY, MSG_SOURCE, MSG_TYPE, TASK_TYPE } from "../../../consts";
import { resResult, getRandEelm, getResStr, shouldRefresh, sortArrRandom, checkRoleIsRobot, getRobotSysType, makeRobotId } from "../../../pubUtils/util";
import { STATUS, ROLE_SELECT, FRIEND_DROP_TYPE, FRIEND_RELATION_TYPE, POPULATE_TYPE, BLOCK_OPEATE, CONSUME_TYPE, ITID, HERO_SELECT, EQUIP_SELECT, REDIS_KEY, MSG_SOURCE, MSG_TYPE, TASK_TYPE, ROBOT_SYS_TYPE } from "../../../consts";
import { RoleModel, RoleType } from "../../../db/Role";
import { getTimeFun, getZeroPointD } from "../../../pubUtils/timeUtil";
import { FriendApplyModel } from "../../../db/FriendApply";
@@ -23,6 +23,7 @@ import { PlayerDetail, PlayerDetailHero } from "../../../domain/battleField/guil
import { createPrivateMsg, pushMsgToRole, pushPresent } from "../../../services/chatService";
import { Rank } from "../../../services/rankService";
import { checkTaskWithRoles, checkTask, checkActivityTask } from "../../../services/taskService";
import { ComBattleTeamModel } from "../../../db/ComBattleTeam";
export default function (app: Application) {
@@ -607,6 +608,45 @@ export class FriendHandler {
});
}
async getPlayerSimpleInfo(msg: { roleId: string }, session: BackendSession) {
let roleId: string = session.get('roleId');
let { roleId: targetRoleId } = msg;
let isRobot = checkRoleIsRobot(targetRoleId);
if(isRobot) {
let role = await RoleModel.findByRoleId(roleId);
let sysType = getRobotSysType(targetRoleId);
let addObj: any = { roleId: makeRobotId(''), roleName: '' };
if(sysType == ROBOT_SYS_TYPE.COM_BTL) {
let comBattle = await ComBattleTeamModel.findByRoleId(targetRoleId);
if(comBattle) {
addObj = comBattle.roleStatus.find(cur => cur.roleId == targetRoleId)||{};
}
}
let param = new FriendRecommendParams({...role, ...addObj});
let { serverId, userInfo: { serverType } } = role;
let serverName = await getServerName(serverType, serverId);
param.setServerName(serverId, serverName);
return resResult(STATUS.SUCCESS, {...param, isRobot });
} else {
let role = await RoleModel.findByRoleId(targetRoleId);
let myFriendRelation = await FriendRelationModel.findFriendByRole(roleId, POPULATE_TYPE.NOT);
let type = getRecommendType(myFriendRelation, roleId, role.roleId);
let param = new FriendRecommendParams(role);
param.setType(type);
let { serverId, userInfo: { serverType } } = role;
let serverName = await getServerName(serverType, serverId);
param.setServerName(serverId, serverName);
return resResult(STATUS.SUCCESS, {...param, isRobot });
}
}
async getPlayerDetail(msg: { roleId: string }, session: BackendSession) {
// let roleId = session.get('roleId');
@@ -616,11 +656,13 @@ export class FriendHandler {
let dbHeroes = await HeroModel.findByRole(oppoRoleId);
let role = await RoleModel.findByRoleId(oppoRoleId, null, true);
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
let { topLineup, topLineupCe, towerLv, showLineup } = role;
let heroes = new Array<PlayerDetailHero>();
if (showLineup) { // 设置过展示阵容
if (showLineup && showLineup.length) { // 设置过展示阵容
for (let hid of showLineup) {
let curHero = dbHeroes.find(cur => cur.hid == hid);
if (curHero) {