From 8a85fd6ed30b0df410f116abee2a643b4ead5a12 Mon Sep 17 00:00:00 2001 From: "PC-202302260912\\Administrator" <1769111741@qq.com> Date: Tue, 22 Aug 2023 11:48:06 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=88=E6=9C=8D=E4=BB=A3=E7=A0=81=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jieling/handler/LoginRequestHandler.java | 64 +++++++++---------- .../ljsd/jieling/logic/dao/GuilidManager.java | 54 +++++----------- .../java/com/ljsd/jieling/logic/dao/Hero.java | 1 + .../ljsd/jieling/logic/family/GuildLogic.java | 5 +- 4 files changed, 51 insertions(+), 73 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/LoginRequestHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/LoginRequestHandler.java index c6b1a5a06..54a6925b5 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/LoginRequestHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/LoginRequestHandler.java @@ -1,29 +1,29 @@ package com.ljsd.jieling.handler; -import com.ljsd.GameApplication; import com.ljsd.jieling.db.redis.RedisKey; import com.ljsd.jieling.db.redis.RedisUtil; import com.ljsd.jieling.handler.map.MapLogic; +import com.ljsd.jieling.ktbeans.KTDataUtil; +import com.ljsd.jieling.ktbeans.KTEnvironmentUtil; import com.ljsd.jieling.ktbeans.KTRequestBeans.LoginParamType; import com.ljsd.jieling.ktbeans.KtEventUtils; +import com.ljsd.jieling.ktbeans.ReportUtil; import com.ljsd.jieling.ktbeans.parmsBean.ParamDataBean; import com.ljsd.jieling.ktbeans.parmsBean.ParamEnvironmentBean; import com.ljsd.jieling.ktbeans.parmsBean.ParamEnvironmentSimpleBean; import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean; -import com.ljsd.jieling.ktbeans.*; +import com.ljsd.jieling.logic.dao.UserManager; import com.ljsd.jieling.logic.dao.UserRecentLoginInfo; import com.ljsd.jieling.logic.dao.root.User; -import com.ljsd.jieling.logic.dao.UserManager; -import com.ljsd.jieling.netty.cocdex.PacketNetData; import com.ljsd.jieling.network.server.Blocker; import com.ljsd.jieling.network.session.ISession; -import rpc.protocols.MessageTypeProto; -import rpc.protocols.PlayerInfoProto; import com.ljsd.jieling.util.MessageUtil; -import util.StringUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; +import rpc.protocols.MessageTypeProto; +import rpc.protocols.PlayerInfoProto; +import util.StringUtil; import java.net.InetSocketAddress; @@ -50,8 +50,7 @@ public class LoginRequestHandler extends BaseHandler baseCrossHandlerHashMap = new HashMap<>(); - public static void addGuildInfo(GuildInfo guildInfo) throws Exception { + public static void addGuildInfo(GuildInfo guildInfo) { saveOrUpdateGuildInfo(guildInfo); MongoTemplate otherMonogTemplate = MongoUtil.getInstence().getMonogTemplate(guildInfo.getServerId()); otherMonogTemplate.save(guildInfo); - RedisUtil.getInstence().putMapEntry(RedisKey.FAMILY_NAMES, "", guildInfo.getName(), Integer.toString(guildInfo.getId())); } public static void saveOrUpdateGuildInfo(GuildInfo guildInfo) { @@ -44,43 +42,36 @@ public class GuilidManager { } public static GuildInfo getGuildInfoByName(String guildName){ - String guildId = RedisUtil.getInstence().getMapEntry(RedisKey.FAMILY_NAMES, "", guildName, String.class); - if (guildId == null || guildId.isEmpty()) { - return null; + Map guildInfoMap = RedisUtil.getInstence().getMapValues2(RedisKey.FAMILY_INFO, "", String.class, GuildInfo.class); + for (GuildInfo value : guildInfoMap.values()) { + if (value.getName().equals(guildName)){ + return value; + } } - return getGuildInfo(Integer.parseInt(guildId)); + return null; } public static Map getAllGuildInfos(){ - Map mapValues = RedisUtil.getInstence().getMapValues2(RedisKey.FAMILY_NAMES, "", String.class, String.class); - if (mapValues == null || mapValues.isEmpty()) { - return new HashMap<>(0); - } - Map allGuildInfos = new HashMap<>(mapValues.size()); - for (Map.Entry entry : mapValues.entrySet()) { - GuildInfo guildInfo = getGuildInfo(Integer.parseInt(entry.getValue())); - if (guildInfo == null) { - RedisUtil.getInstence().removeMapEntrys(RedisKey.FAMILY_NAMES, "", entry.getKey()); - continue; - } - allGuildInfos.put(guildInfo.getId(), guildInfo); + Map guildInfoMap = RedisUtil.getInstence().getMapValues2(RedisKey.FAMILY_INFO, "", String.class, GuildInfo.class); + Map allGuildInfos = new HashMap<>(guildInfoMap.size()); + for (Map.Entry entry : guildInfoMap.entrySet()) { + allGuildInfos.put(Integer.parseInt(entry.getKey()), entry.getValue()); } return allGuildInfos; } public static int getAllGuildCount(){ - Map mapValues = RedisUtil.getInstence().getMapValues2(RedisKey.FAMILY_NAMES, "", String.class, String.class); - if (mapValues == null || mapValues.isEmpty()) { + Map guildInfoMap = RedisUtil.getInstence().getMapValues2(RedisKey.FAMILY_INFO, "", String.class, GuildInfo.class); + if (guildInfoMap == null || guildInfoMap.isEmpty()) { return 0; } - return mapValues.size(); + return guildInfoMap.size(); } public static void removeGuildInfo(GuildInfo guildInfo){ System.out.println("此处删除了工会信息"+guildInfo.getId()); int guildId = guildInfo.getId(); RedisUtil.getInstence().removeMapEntrys(RedisKey.FAMILY_INFO, "", String.valueOf(guildId)); - RedisUtil.getInstence().removeMapEntrys(RedisKey.FAMILY_NAMES, "", guildInfo.getName()); RedisUtil.getInstence().removeMapEntrys(RedisKey.FAMILY_LOGS, "", String.valueOf(guildId)); MongoTemplate otherMonogTemplate = MongoUtil.getInstence().getMonogTemplate(guildInfo.getServerId()); otherMonogTemplate.remove(new BasicQuery(new BasicDBObject("_id",guildId)),"guildInfo"); @@ -181,20 +172,9 @@ public class GuilidManager { } } - public static Collection recommandGuild(User user) { - Map mapValues = RedisUtil.getInstence().getMapValues2(RedisKey.FAMILY_NAMES, "", String.class, String.class); - if (mapValues == null || mapValues.isEmpty()) { - return new ArrayList<>(0); - } - List guildInfo = new ArrayList<>(mapValues.size()); - for (Map.Entry entry : mapValues.entrySet()) { - GuildInfo mapEntry = RedisUtil.getInstence().getMapEntry(RedisKey.FAMILY_INFO, "", entry.getValue(), GuildInfo.class); - if (mapEntry == null) { - continue; - } - guildInfo.add(mapEntry); - } - return guildInfo; + public static Collection recommandGuild() { + Map guildInfoMap = RedisUtil.getInstence().getMapValues2(RedisKey.FAMILY_INFO, "", String.class, GuildInfo.class); + return guildInfoMap.values(); } public static void addGuildToRelease(GuildInfo guildInfo) { diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/Hero.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/Hero.java index dcd50336a..a62e324fe 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/Hero.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/Hero.java @@ -213,6 +213,7 @@ public class Hero extends MongoBase implements Comparable,Cloneable { public void setId(String id) { this.id = id; + updateString("id",id); } public void setLevel(int level){ diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java index 49a78ed11..3fece4f65 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java @@ -221,7 +221,7 @@ public class GuildLogic { MessageUtil.sendMessage(session,1,msgId,build,true); } - public static void checkForCreateGuild( User user,String familyName,String announce) throws Exception { + public static void checkForCreateGuild(User user,String familyName,String announce) throws Exception { if(StringUtil.isEmpty(familyName)){ throw new ErrorCodeException(ErrorCode.NULL_NAME); } @@ -245,9 +245,8 @@ public class GuildLogic { */ public static void recommendFamily(ISession session,Family.FamilyRecommandRequest proto) throws Exception { int uid = session.getUid(); - User user = UserManager.getUser(uid); - Collection guildInfos = GuilidManager.recommandGuild(user); + Collection guildInfos = GuilidManager.recommandGuild(); Family.FamilyRecommandResponse.Builder builder = Family.FamilyRecommandResponse.newBuilder(); Map applyGuildInfos = GuilidManager.getApplyGuildInfos(uid, 1); int now = TimeUtils.nowInt();