From 93bce0f7bddb1f7bf638aca414a6684c2390d7fc Mon Sep 17 00:00:00 2001 From: "DESKTOP-C3M45P4\\dengdan" Date: Mon, 17 Aug 2026 21:34:04 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=BF=83=E6=B3=95=E7=A4=BC?= =?UTF-8?q?=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jieling/logic/activity/ActivityType.java | 4 ++-- .../logic/activity/ActivityTypeEnum.java | 1 + .../jieling/logic/store/BuyGoodsNewLogic.java | 17 ++++++++++++---- .../rechargeHandler/PerpetualHandler.java | 4 ++++ .../rechargeHandler/TimeLimitHandler.java | 20 +++++++++++++++++++ 5 files changed, 40 insertions(+), 6 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityType.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityType.java index e677470f8..70bc4b905 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityType.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityType.java @@ -162,6 +162,6 @@ public interface ActivityType { int FENGSHEN_TREASURE_THREE = 116;//三队封神 int EVERY_DAY_DISCOUNT = 126;//天天0.1折扣 int FABAO_JULING_GIFT = 20019;//法宝聚灵礼包 - - int PLAYER_GOD_GIFT = 20020;//法宝聚灵礼包 + int PLAYER_GOD_GIFT = 20020;//主角神觉礼包 + int SI_XIANG_GIFT = 20021;//四相心法礼包 } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityTypeEnum.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityTypeEnum.java index ec23bb613..e6697f366 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityTypeEnum.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityTypeEnum.java @@ -125,6 +125,7 @@ public enum ActivityTypeEnum { BAUBLES_SUMMON_GIFT(ActivityType.BAUBLES_SUMMON_GIFT, DefaultEmptyActivity::new),//法宝召唤礼包 FABAO_JULING_GIFT(ActivityType.FABAO_JULING_GIFT, DefaultEmptyActivity::new),//法宝聚灵礼包 PLAYER_GOD_GIFT(ActivityType.PLAYER_GOD_GIFT, DefaultEmptyActivity::new),//主角成神礼包 + SI_XIANG_GIFT(ActivityType.SI_XIANG_GIFTT, DefaultEmptyActivity::new),//四相心法礼包 BAUBLES_BOOK(ActivityType.BAUBLES_BOOK, BaublesBookNumActivity::new),//法宝图鉴,专武活动 /****************************************************** bt **********************************************************/ 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 4cfb91322..68923a2f5 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 @@ -83,6 +83,9 @@ public class BuyGoodsNewLogic { boolean needChange = false; for(Map.Entry entry : SRechargeCommodityNewConfig.configMap.entrySet()){ SRechargeCommodityNewConfig config = entry.getValue(); + if(config.getId() == 9006){ + System.out.println("--------------" + config.getId()); + } // 获取处理类 RechargeHandler rechargeHandler = getRechargeHandler(config.getOtype()); // 没有礼包先新增礼包 @@ -192,12 +195,12 @@ public class BuyGoodsNewLogic { } /** - * 是否是rmb支付 + * 是否是rmb支付,本地测试购买也记录为人民币 * @param orderId 订单id * @return 返回true表示是rmb支付 */ private static boolean isRmb(String orderId){ - return !(orderId.equals(test_buy_order) || orderId.equals(support_order) || orderId.equals(vouchers_order) + return !( orderId.equals(support_order) || orderId.equals(vouchers_order) || orderId.equals(money_order) || orderId.equals(gm_modifier)); } @@ -230,8 +233,7 @@ public class BuyGoodsNewLogic { Poster.getPoster().dispatchEvent(new SingleRechargeEvent(user.getId(),amount)); } // 线下活动 - if (orderId.equals(test_buy_order) || orderId.equals(support_order) || isRmb(orderId) - || orderId.equals(vouchers_order) || config.getType() == GiftGoodsType.voucher){ + if (orderId.equals(test_buy_order) || orderId.equals(support_order) || isRmb(orderId)){ Poster.getPoster().dispatchEvent(new AutoRechargeBackEvent(user.getId(),giftId,orderId)); } // 额外掉落 @@ -781,6 +783,13 @@ public class BuyGoodsNewLogic { result = bag.getBuyTimes() >= 1; } break; + case 11: + int value = con[1]; + double total = user.getPlayerInfoManager().getNewRechargeInfo().getRealityRmb(); + if(total >= value){ + result = true; + } + break; default:break; } return !result; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/rechargeHandler/PerpetualHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/rechargeHandler/PerpetualHandler.java index 5fc7ed0ca..e91453876 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/rechargeHandler/PerpetualHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/rechargeHandler/PerpetualHandler.java @@ -32,6 +32,10 @@ public class PerpetualHandler extends AbstractRechargeHandler{ bag.setOpen(false); break; } + if (con[0] == 11 && BuyGoodsNewLogic.noEnoughOpen(con, user)){ + bag.setOpen(false); + break; + } } return result; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/rechargeHandler/TimeLimitHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/rechargeHandler/TimeLimitHandler.java index f2ce44512..d66f8af5c 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/rechargeHandler/TimeLimitHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/rechargeHandler/TimeLimitHandler.java @@ -2,6 +2,7 @@ package com.ljsd.jieling.logic.store.newRechargeInfo.rechargeHandler; import com.ljsd.jieling.logic.activity.ActivityLogic; import com.ljsd.jieling.logic.dao.root.User; +import com.ljsd.jieling.logic.store.BuyGoodsNewLogic; import com.ljsd.jieling.logic.store.newRechargeInfo.bean.AbstractWelfareBag; import com.ljsd.jieling.logic.store.newRechargeInfo.bean.TimeLimitWelfareBag; import config.SRechargeCommodityNewConfig; @@ -35,6 +36,17 @@ public class TimeLimitHandler extends AbstractRechargeHandler{ bag.setOpen(false); bag.resetBuyTimes(); } + //有累充条件限制 + if(bag.getConditionType().contains(11)){ + for (int[] ints : bag.getCondition()) { + //有累充条件限制,即便在活动时间内也不显示 + if (ints[0] == 11 && BuyGoodsNewLogic.noEnoughOpen(ints, user)){ + bag.setOpen(false); + bag.resetBuyTimes(); + break; + } + } + } // 月礼包 特殊处理,需要每日都刷新 return refreshTime8(result, user, rechargeId); } @@ -48,6 +60,14 @@ public class TimeLimitHandler extends AbstractRechargeHandler{ bag.setEndTime(time[1]); bag.setOpen(true); } + //有累充条件限制,即便在活动时间内也不显示 + if (ints[0] == 11 && BuyGoodsNewLogic.noEnoughOpen(ints, user)){ + long[] time = ActivityLogic.getStartAndEndTime(user, value); + bag.setStartTime(time[0]); + bag.setEndTime(time[1]); + bag.setOpen(false); + break; + } } return result; }