diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/WishDrawCardInfo.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/WishDrawCardInfo.java index e3a97c8f5..e343536d4 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/WishDrawCardInfo.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/WishDrawCardInfo.java @@ -1,6 +1,5 @@ package com.ljsd.jieling.logic.dao; -import java.io.Serializable; /** * @Author hj @@ -8,9 +7,7 @@ import java.io.Serializable; * @Description: * @Version 1.0 */ -public class WishDrawCardInfo implements Serializable { - - private static final long serialVersionUID = -4813948169695919232L; +public class WishDrawCardInfo implements Cloneable { private int id; private int heroTid; @@ -45,4 +42,9 @@ public class WishDrawCardInfo implements Serializable { public void setStatus(int status) { this.status = status; } + + @Override + public WishDrawCardInfo clone() throws CloneNotSupportedException { + return (WishDrawCardInfo)super.clone(); + } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java index b58a5f52f..e647378d6 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java @@ -495,7 +495,18 @@ public class HeroLogic{ * @throws ErrorCodeException */ public void updateWishDrawCardInfo(User user, List list) throws ErrorCodeException { - HashMap map = Utils.clone(user.getHeroManager().getWishDrawCardInfoMap()); + HashMap wishDrawCardInfoMap = user.getHeroManager().getWishDrawCardInfoMap(); + + // 英雄拷贝 + HashMap map = new HashMap<>(wishDrawCardInfoMap.size()); + wishDrawCardInfoMap.forEach((k,v)->{ + try { + map.put(k,v.clone()); + } catch (CloneNotSupportedException e) { + e.printStackTrace(); + } + }); + // 遍历 for (CommonProto.wishDrawCardInfo v : list) { WishDrawCardInfo cardInfo = map.get(v.getId()); @@ -527,8 +538,6 @@ public class HeroLogic{ else { user.getHeroManager().setWishDrawCardInfoMap(map); } - // 推送消息 - sendWishCardIndication(user); } private void changeRandomItem(User user,int activityId,int[][] random){