From ce5a23492e79ab02ac1c7b27fc483bdd8da4a348 Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Thu, 28 Dec 2023 14:03:23 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=A9=E6=88=98=E5=BC=82=E5=B8=B8=EF=BC=8C?= =?UTF-8?q?=E5=AE=9D=E7=89=A9=E6=8A=A5null=EF=BC=8C=E5=B7=B2=E5=A4=84?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ljsd/jieling/util/CBean2Proto.java | 33 ++++++++++++------- 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java index b93f73429..1430a42a0 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java @@ -232,23 +232,33 @@ public class CBean2Proto { return lists; } + /** + * 编译助战状态 + * @param propertyItems 装备列表 + * @return proto对象 + */ + private static List buildHelpFightEquip(List propertyItems){ + List resultEquip = new ArrayList<>(); + if (propertyItems != null && !propertyItems.isEmpty()){ + for (PropertyItem item : propertyItems) { + if (item == null){ + continue; + } + resultEquip.add(getPropertyEquipProto(item)); + } + } + return resultEquip; + } + /** * 助战,redis类型转proto */ public static CommonProto.HelpFightList helpHeroProto(HelpHero helpHero) throws Exception { User otherUser = UserManager.getUser(helpHero.getUid()); // 魂宝灵宝 - List jewels = new ArrayList<>(); - List jewel = helpHero.getJewels(); - if (jewel != null && !jewel.isEmpty()){ - jewel.forEach(item->jewels.add(getPropertyEquipProto(item))); - } + List jewels = buildHelpFightEquip(helpHero.getJewels()); // 法相 - List faxiang = new ArrayList<>(); - List faxiangs = helpHero.getFaxiangs(); - if (faxiangs != null && !faxiangs.isEmpty()){ - faxiangs.forEach(item->faxiang.add(getPropertyEquipProto(item))); - } + List faxiang = buildHelpFightEquip(helpHero.getFaxiangs()); // 装备详细信息 List equips = new ArrayList<>(); Map equip = helpHero.getHero().getEquipByPositionMap(); @@ -286,7 +296,7 @@ public class CBean2Proto { * 助战,hero对象转redis类型 * 存入redis时调用 */ - public static HelpHero heroToHelpHero(User user,Hero hero) throws Exception { + public static HelpHero heroToHelpHero(User user,Hero hero) { // 获取神将类型 HelpTypeEnum type = HelpTypeEnum.getType(hero.getPropertyId()); // 英雄镜像 @@ -296,7 +306,6 @@ public class CBean2Proto { List jewels = clonePropertyItemList(equipManager, heroVo.getJewelInfo()); // 法相 List faxiangs = clonePropertyItemList(equipManager, heroVo.getFaxiangList()); - // 结果返回,援助类型不在这里写 HelpHero helpHero = new HelpHero(); helpHero.setUid(user.getId());