From 43e10b0ea8bff3316f1d18d15825fbfbd47e73fc Mon Sep 17 00:00:00 2001 From: lvxinran Date: Tue, 27 Apr 2021 15:53:23 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=85=A5=E5=BA=93=E8=AF=BB?= =?UTF-8?q?=E5=BA=93=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ljsd/jieling/db/mongo/MongoConfig.java | 5 +-- .../db/mongo/MongoPerpetualConverter.java | 29 --------------- .../jieling/db/mongo/MongoPushConverter.java | 25 ------------- .../db/mongo/MongoReceiveConverter.java | 25 ------------- .../db/mongo/MongoRechargeConverter.java | 36 +++++++++++++++++++ .../db/mongo/MongoTimeLimitConverter.java | 26 -------------- .../logic/activity/GrowthFundActivity.java | 5 +-- .../jieling/logic/store/BuyGoodsNewLogic.java | 14 ++++---- .../newRechargeInfo/NewRechargeInfo.java | 28 +++++++-------- .../bean/AbstractWelfareBag.java | 1 + 10 files changed, 62 insertions(+), 132 deletions(-) delete mode 100644 serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoPerpetualConverter.java delete mode 100644 serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoPushConverter.java delete mode 100644 serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoReceiveConverter.java create mode 100644 serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoRechargeConverter.java delete mode 100644 serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoTimeLimitConverter.java diff --git a/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoConfig.java b/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoConfig.java index c36a69854..e4b89497a 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoConfig.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoConfig.java @@ -84,10 +84,7 @@ public class MongoConfig { private CustomConversions customConversions() { List> converterList = new ArrayList>(); converterList.add(new MongoPropertyConverter()); - converterList.add(new MongoPerpetualConverter()); - converterList.add(new MongoTimeLimitConverter()); - converterList.add(new MongoReceiveConverter()); - converterList.add(new MongoPushConverter()); + converterList.add(new MongoRechargeConverter()); return new CustomConversions(converterList); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoPerpetualConverter.java b/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoPerpetualConverter.java deleted file mode 100644 index 12d927173..000000000 --- a/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoPerpetualConverter.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.ljsd.jieling.db.mongo; - -import com.alibaba.fastjson.JSON; -import com.google.gson.Gson; -import com.ljsd.jieling.globals.GlobalItemType; -import com.ljsd.jieling.logic.store.newRechargeInfo.RechargeType; -import com.ljsd.jieling.logic.store.newRechargeInfo.bean.*; -import com.mongodb.BasicDBObject; -import config.SRechargeCommodityNewConfig; -import manager.STableManager; -import org.bson.json.JsonWriterSettings; -import org.springframework.core.convert.converter.Converter; -import org.springframework.data.convert.ReadingConverter; - -@ReadingConverter -public class MongoPerpetualConverter implements Converter { - Gson gson = new Gson(); - @Override - public PerpetualWelfareBag convert(BasicDBObject source) { - SRechargeCommodityNewConfig config = STableManager.getConfig(SRechargeCommodityNewConfig.class).get(source.getInt("modId")); - Class target = PerpetualWelfareBag.class; - if(config.getOtype() == RechargeType.perpetual.getType()){ - target = PerpetualWelfareBag.class; - } - String s = gson.toJson(source); - PerpetualWelfareBag bag = JSON.parseObject(s,target); - return bag; - } -} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoPushConverter.java b/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoPushConverter.java deleted file mode 100644 index 51f252b2b..000000000 --- a/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoPushConverter.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.ljsd.jieling.db.mongo; - -import com.alibaba.fastjson.JSON; -import com.google.gson.Gson; -import com.ljsd.jieling.logic.store.newRechargeInfo.RechargeType; -import com.ljsd.jieling.logic.store.newRechargeInfo.bean.PushWelfareBag; -import com.mongodb.BasicDBObject; -import config.SRechargeCommodityNewConfig; -import manager.STableManager; -import org.springframework.core.convert.converter.Converter; - -public class MongoPushConverter implements Converter { - Gson gson = new Gson(); - @Override - public PushWelfareBag convert(BasicDBObject source) { - SRechargeCommodityNewConfig config = STableManager.getConfig(SRechargeCommodityNewConfig.class).get(source.getInt("modId")); - Class target = PushWelfareBag.class; - if(config.getOtype() == RechargeType.perpetual.getType()){ - target = PushWelfareBag.class; - } - String s = gson.toJson(source); - PushWelfareBag bag = JSON.parseObject(s,target); - return bag; - } -} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoReceiveConverter.java b/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoReceiveConverter.java deleted file mode 100644 index 9474a23a9..000000000 --- a/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoReceiveConverter.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.ljsd.jieling.db.mongo; - -import com.alibaba.fastjson.JSON; -import com.google.gson.Gson; -import com.ljsd.jieling.logic.store.newRechargeInfo.RechargeType; -import com.ljsd.jieling.logic.store.newRechargeInfo.bean.ReceiveWelfareBag; -import com.mongodb.BasicDBObject; -import config.SRechargeCommodityNewConfig; -import manager.STableManager; -import org.springframework.core.convert.converter.Converter; - -public class MongoReceiveConverter implements Converter { - Gson gson = new Gson(); - @Override - public ReceiveWelfareBag convert(BasicDBObject source) { - SRechargeCommodityNewConfig config = STableManager.getConfig(SRechargeCommodityNewConfig.class).get(source.getInt("modId")); - Class target = ReceiveWelfareBag.class; - if(config.getOtype() == RechargeType.perpetual.getType()){ - target = ReceiveWelfareBag.class; - } - String s = gson.toJson(source); - ReceiveWelfareBag bag = JSON.parseObject(s,target); - return bag; - } -} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoRechargeConverter.java b/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoRechargeConverter.java new file mode 100644 index 000000000..1278b9170 --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoRechargeConverter.java @@ -0,0 +1,36 @@ +package com.ljsd.jieling.db.mongo; + +import com.alibaba.fastjson.JSON; +import com.google.gson.Gson; +import com.ljsd.jieling.logic.store.newRechargeInfo.RechargeType; +import com.ljsd.jieling.logic.store.newRechargeInfo.bean.*; +import com.mongodb.BasicDBObject; +import config.SRechargeCommodityNewConfig; +import manager.STableManager; +import org.springframework.core.convert.converter.Converter; +import org.springframework.data.convert.ReadingConverter; + +@ReadingConverter +public class MongoRechargeConverter implements Converter { + @Override + public AbstractWelfareBag convert(BasicDBObject source) { + Gson gson = new Gson(); + SRechargeCommodityNewConfig config = STableManager.getConfig(SRechargeCommodityNewConfig.class).get(source.getInt("modId")); + Class target =null; + + + if(config.getOtype() == RechargeType.timeLimit.getType()){ + target = TimeLimitWelfareBag.class; + }else if(config.getOtype() ==RechargeType.perpetual.getType()){ + target = PerpetualWelfareBag.class; + + }else if(config.getOtype()==RechargeType.receive.getType()){ + target = ReceiveWelfareBag.class; + }else if(config.getOtype()==RechargeType.push.getType()){ + target = PushWelfareBag.class; + } + String s = gson.toJson(source); + AbstractWelfareBag abstractWelfareBag = JSON.parseObject(s, target); + return abstractWelfareBag; + } +} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoTimeLimitConverter.java b/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoTimeLimitConverter.java deleted file mode 100644 index b5ff988ab..000000000 --- a/serverlogic/src/main/java/com/ljsd/jieling/db/mongo/MongoTimeLimitConverter.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.ljsd.jieling.db.mongo; - -import com.alibaba.fastjson.JSON; -import com.google.gson.Gson; -import com.ljsd.jieling.logic.store.newRechargeInfo.RechargeType; -import com.ljsd.jieling.logic.store.newRechargeInfo.bean.PerpetualWelfareBag; -import com.ljsd.jieling.logic.store.newRechargeInfo.bean.TimeLimitWelfareBag; -import com.mongodb.BasicDBObject; -import config.SRechargeCommodityNewConfig; -import manager.STableManager; -import org.springframework.core.convert.converter.Converter; - -public class MongoTimeLimitConverter implements Converter { - Gson gson = new Gson(); - @Override - public TimeLimitWelfareBag convert(BasicDBObject source) { - SRechargeCommodityNewConfig config = STableManager.getConfig(SRechargeCommodityNewConfig.class).get(source.getInt("modId")); - Class target = TimeLimitWelfareBag.class; - if(config.getOtype() == RechargeType.timeLimit.getType()){ - target = TimeLimitWelfareBag.class; - } - String s = gson.toJson(source); - TimeLimitWelfareBag bag = JSON.parseObject(s,target); - return bag; - } -} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/GrowthFundActivity.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/GrowthFundActivity.java index 293623978..801dd48bc 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/GrowthFundActivity.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/GrowthFundActivity.java @@ -4,6 +4,7 @@ import com.ljsd.jieling.jbean.ActivityMission; import com.ljsd.jieling.jbean.ActivityProgressInfo; import com.ljsd.jieling.logic.dao.UserManager; import com.ljsd.jieling.logic.dao.root.User; +import com.ljsd.jieling.logic.store.newRechargeInfo.bean.AbstractWelfareBag; import com.ljsd.jieling.logic.store.newRechargeInfo.bean.ReceiveWelfareBag; import com.ljsd.jieling.network.session.ISession; import config.SActivityRewardConfig; @@ -24,8 +25,8 @@ class GrowthFundActivity extends AbstractActivity { int[][] values = sActivityRewardConfig.getValues(); User user = UserManager.getUser(session.getUid()); SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id); - ReceiveWelfareBag bag = user.getPlayerInfoManager().getNewRechargeInfo().getReceiveMap().get(sGlobalActivity.getCanBuyRechargeId()[0]); - Integer buyTimes = bag.getBuyTimes(); + AbstractWelfareBag bag = user.getPlayerInfoManager().getNewRechargeInfo().getReceiveMap().get(sGlobalActivity.getCanBuyRechargeId()[0]); + int buyTimes = bag.getBuyTimes(); if(buyTimes == 0){ return false; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsNewLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsNewLogic.java index e971331d7..d7a3c4f07 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsNewLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsNewLogic.java @@ -173,8 +173,8 @@ public class BuyGoodsNewLogic { //成功购买 if (goodsId == GlobalsDef.DAILY_GOODS_FAST_ID) { //每日礼包一键购买之后,把所有单个的每日礼包的购买次数加一 - for (int gId : SSpecialConfig.getOnceArrayValue("YIJIANGOUMAI")) { - PerpetualWelfareBag pbag = info.getPerpetualMap().get(gId); + for (int gId : SSpecialConfig.getOnceArrayValue(SSpecialConfig.YIJIANGOUMAI)) { + AbstractWelfareBag pbag = info.getPerpetualMap().get(gId); pbag.setBuyTimes(pbag.getBuyTimes()+1); } } @@ -699,15 +699,15 @@ public class BuyGoodsNewLogic { NewRechargeInfo info = user.getPlayerInfoManager().getNewRechargeInfo(); List found1 = SRechargeCommodityNewConfig.getConfigListByType(GiftGoodsType.FOUND_ONE); List found2 = SRechargeCommodityNewConfig.getConfigListByType(GiftGoodsType.FOUND_TWO); - for(ReceiveWelfareBag bag : info.getReceiveMap().values()){ + for(AbstractWelfareBag bag : info.getReceiveMap().values()){ for(int id :found1){ - if(bag.getModId() == id && canReward(bag)){ - sendReward(user.getId(),id,bag,GiftGoodsType.FOUND_ONE); + if(bag.getModId() == id && canReward((ReceiveWelfareBag) bag)){ + sendReward(user.getId(),id,(ReceiveWelfareBag) bag,GiftGoodsType.FOUND_ONE); } } for(int id :found2){ - if(bag.getModId() == id && canReward(bag)){ - sendReward(user.getId(),id,bag,GiftGoodsType.FOUND_TWO); + if(bag.getModId() == id && canReward((ReceiveWelfareBag)bag)){ + sendReward(user.getId(),id,(ReceiveWelfareBag) bag,GiftGoodsType.FOUND_TWO); } } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/NewRechargeInfo.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/NewRechargeInfo.java index 05c54bc1a..c3c4a1c61 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/NewRechargeInfo.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/NewRechargeInfo.java @@ -19,10 +19,10 @@ public class NewRechargeInfo extends MongoBase { private long firstTime;//首冲时间 private int isDayFirst; - private Map perpetualMap = new HashMap<>();//永久礼包 - private Map timeLimitMap = new HashMap<>();//限时刷新礼包 - private Map receiveMap = new HashMap<>();//限时刷新礼包 - private Map pushMap = new HashMap<>();//推送礼包 + private Map perpetualMap = new HashMap<>();//永久礼包 + private Map timeLimitMap = new HashMap<>();//限时刷新礼包 + private Map receiveMap = new HashMap<>();//限时刷新礼包 + private Map pushMap = new HashMap<>();//推送礼包 private long lostTime; //上次记录时间 private int mainLineLost; //记录主线失败次数 @@ -31,7 +31,7 @@ public class NewRechargeInfo extends MongoBase { public boolean checkOneGoodsIsOverTimeByPrivilege(int privilegeId){ - for(PerpetualWelfareBag bag : perpetualMap.values()){ + for(AbstractWelfareBag bag : perpetualMap.values()){ if(!bag.isOpen()){ continue; } @@ -69,7 +69,7 @@ public class NewRechargeInfo extends MongoBase { public List getPushList(){ List list = new ArrayList<>(); - for(PushWelfareBag bag : pushMap.values()){ + for(AbstractWelfareBag bag : pushMap.values()){ if(bag.isOpen()){ list.add(bag.getModId()); } @@ -133,22 +133,22 @@ public class NewRechargeInfo extends MongoBase { updateString("isDayFirst",isDayFirst); } - public Map getPerpetualMap() { + public Map getPerpetualMap() { return perpetualMap; } - public Map getTimeLimitMap() { + public Map getTimeLimitMap() { return timeLimitMap; } - public Map getReceiveMap() { + public Map getReceiveMap() { return receiveMap; } - public Map getPushMap() { + public Map getPushMap() { return pushMap; } @@ -220,19 +220,19 @@ public class NewRechargeInfo extends MongoBase { updateString("isFirst",isFirst); } - public void setPerpetualMap(Map perpetualMap) { + public void setPerpetualMap(Map perpetualMap) { this.perpetualMap = perpetualMap; } - public void setTimeLimitMap(Map timeLimitMap) { + public void setTimeLimitMap(Map timeLimitMap) { this.timeLimitMap = timeLimitMap; } - public void setReceiveMap(Map receiveMap) { + public void setReceiveMap(Map receiveMap) { this.receiveMap = receiveMap; } - public void setPushMap(Map pushMap) { + public void setPushMap(Map pushMap) { this.pushMap = pushMap; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/bean/AbstractWelfareBag.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/bean/AbstractWelfareBag.java index 7febdaf73..0dce7d250 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/bean/AbstractWelfareBag.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/bean/AbstractWelfareBag.java @@ -32,6 +32,7 @@ public class AbstractWelfareBag extends MongoBase{ private boolean isUserBuyRefresh; public AbstractWelfareBag(User user,SRechargeCommodityNewConfig config){ + this.setRootCollection(User._COLLECTION_NAME); setModId(config.getId()); setType(config.getOtype()); setLimit(config.getLimit());