跨服工会

back_recharge
duhui 2021-07-30 18:33:52 +08:00
parent 57433529aa
commit 07287547b0
2 changed files with 27 additions and 4 deletions

View File

@ -3,9 +3,12 @@ package com.ljsd.jieling.logic.activity.crossService;
import com.ljsd.GameApplication; import com.ljsd.GameApplication;
import com.ljsd.jieling.core.GlobalsDef; import com.ljsd.jieling.core.GlobalsDef;
import com.ljsd.jieling.db.mongo.MongoUtil; import com.ljsd.jieling.db.mongo.MongoUtil;
import com.ljsd.jieling.db.redis.RedisKey;
import com.ljsd.jieling.db.redis.RedisUtil;
import com.ljsd.jieling.logic.arena.ArenaLogic; import com.ljsd.jieling.logic.arena.ArenaLogic;
import com.ljsd.jieling.logic.dao.*; import com.ljsd.jieling.logic.dao.*;
import com.ljsd.jieling.logic.dao.gm.*; import com.ljsd.jieling.logic.dao.gm.*;
import com.ljsd.jieling.logic.dao.root.GuildCache;
import com.ljsd.jieling.logic.dao.root.GuildInfo; import com.ljsd.jieling.logic.dao.root.GuildInfo;
import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.dao.root.User;
import com.ljsd.jieling.logic.family.CrossDeathPathLogic; import com.ljsd.jieling.logic.family.CrossDeathPathLogic;
@ -135,9 +138,9 @@ public class CrossServiceLogic {
arenaOfPlayerManager.setName(player.getNickName()); arenaOfPlayerManager.setName(player.getNickName());
arenaOfPlayerManager.setHead(player.getHead()); arenaOfPlayerManager.setHead(player.getHead());
arenaOfPlayerManager.setHeadFrame(player.getHeadFrame()); arenaOfPlayerManager.setHeadFrame(player.getHeadFrame());
GuildInfo guildInfo = GuilidManager.guildInfoMap.get(guildId); GuildCache mapEntry = RedisUtil.getInstence().getMapEntry(RedisKey.FAMILY_INFO, "", String.valueOf(guildId), GuildCache.class);
arenaOfPlayerManager.setGuildId(guildId); arenaOfPlayerManager.setGuildId(guildId);
arenaOfPlayerManager.setGuildName(guildInfo==null?"":guildInfo.getName()); arenaOfPlayerManager.setGuildName(mapEntry==null?"":mapEntry.getName());
arenaOfPlayerManager.setUserTitle(player.getUserTitle()); arenaOfPlayerManager.setUserTitle(player.getUserTitle());
arenaOfPlayerManager.setPracticeLevel(user.getHeroManager().getPracticeLevel()); arenaOfPlayerManager.setPracticeLevel(user.getHeroManager().getPracticeLevel());

View File

@ -37,10 +37,30 @@ public class CrossGuildForceRank extends GuildForceRank {
if (query == null){ if (query == null){
return; return;
} }
CommonProto.UserRank.Builder oneUserRank = getCrossOneUserRank(query, everyRankInfo); String name = Optional.ofNullable(mapEntry).map(GuildCache::getName).orElse("");
CommonProto.UserRank.Builder oneUserRank = getCrossOneUserRank(query,name,everyRankInfo);
builder.addRanks(oneUserRank); builder.addRanks(oneUserRank);
} }
public CommonProto.UserRank.Builder getCrossOneUserRank(ArenaOfUser query,String guildName,CommonProto.RankInfo.Builder everyRankInfo){
String serverName = CrossServiceLogic.getInstance().getServerNameByUId(query.getId());
return CommonProto.UserRank.newBuilder()
.setUid(query.getId())
.setLevel(query.getPlayerManager().getLevel())
.setUserName(query.getPlayerManager().getName())
.setRankInfo(everyRankInfo)
.setForce(query.getPlayerManager().getMaxFore())
.setSex(query.getPlayerManager().getGender())
.setHead(query.getPlayerManager().getHead())
.setGuildName(guildName)
.setHeadFrame(query.getPlayerManager().getHeadFrame())
.setUserMount(query.getPlayerManager().getUserMount())
.setUserSkin(query.getPlayerManager().getSkin())
.setUserTitle(query.getPlayerManager().getUserTitle())
.setPracticeLevel(query.getPlayerManager().getPracticeLevel())
.setServerName(serverName);
}
@Override @Override
public CommonProto.UserRank.Builder getFirstByCross(String rKey) throws UnknownHostException { public CommonProto.UserRank.Builder getFirstByCross(String rKey) throws UnknownHostException {
Set<ZSetOperations.TypedTuple<String>> rankByKey = Set<ZSetOperations.TypedTuple<String>> rankByKey =
@ -64,7 +84,7 @@ public class CrossGuildForceRank extends GuildForceRank {
if (query == null){ if (query == null){
return builder; return builder;
} }
builder = getCrossOneUserRank(query, everyRankInfo); builder = getCrossOneUserRank(query,mapEntry.getName(),everyRankInfo);
return builder; return builder;
} }
} }