From d2a4aff5980349f0b1523fa1894f3b629fff19b0 Mon Sep 17 00:00:00 2001 From: tianfeng <769204422@qq.com> Date: Tue, 21 Oct 2025 16:49:34 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=BD=E5=A5=96=20=E5=8F=91=E6=94=BE?= =?UTF-8?q?=E9=87=91=E5=B8=81=E5=A2=9E=E5=8A=A0=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wallet/inner/model/enums/GoldOrigin.java | 7 ++++++- .../impl/LotteryPrizeGrantServiceImpl.java | 20 +++++++++++-------- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/rc-service/rc-inner-api/wallet-inner/wallet-inner-model/src/main/java/com/red/circle/wallet/inner/model/enums/GoldOrigin.java b/rc-service/rc-inner-api/wallet-inner/wallet-inner-model/src/main/java/com/red/circle/wallet/inner/model/enums/GoldOrigin.java index 22f566bb..1d4027cc 100644 --- a/rc-service/rc-inner-api/wallet-inner/wallet-inner-model/src/main/java/com/red/circle/wallet/inner/model/enums/GoldOrigin.java +++ b/rc-service/rc-inner-api/wallet-inner/wallet-inner-model/src/main/java/com/red/circle/wallet/inner/model/enums/GoldOrigin.java @@ -696,7 +696,12 @@ public enum GoldOrigin { /** * 家族群聊付费解锁. */ - FAMILY_GROUP_CHAT_AMOUNT("Family group chat amount") + FAMILY_GROUP_CHAT_AMOUNT("Family group chat amount"), + + /** + * 抽奖奖励 + */ + LOTTERY_REWARD("Lottery reward"), ; private final String desc; diff --git a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/service/activity/impl/LotteryPrizeGrantServiceImpl.java b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/service/activity/impl/LotteryPrizeGrantServiceImpl.java index 0fc8213e..0f479868 100644 --- a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/service/activity/impl/LotteryPrizeGrantServiceImpl.java +++ b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/service/activity/impl/LotteryPrizeGrantServiceImpl.java @@ -23,6 +23,8 @@ import com.red.circle.wallet.inner.endpoint.wallet.WalletGoldClient; import com.red.circle.wallet.inner.model.cmd.DiamondReceiptCmd; import com.red.circle.wallet.inner.model.cmd.GoldReceiptCmd; import java.math.BigDecimal; + +import com.red.circle.wallet.inner.model.enums.GoldOrigin; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @@ -113,17 +115,19 @@ public class LotteryPrizeGrantServiceImpl implements LotteryPrizeGrantService { return; } - BigDecimal amount = prize.getPrizeValue(); + // 防止配错导致发送大量金币 + long goldAmount = prize.getPropsId() > 100000L ? 10000 : prize.getPropsId(); + BigDecimal amount = BigDecimal.valueOf(goldAmount); walletGoldClient.changeBalance( GoldReceiptCmd.builder() .opsIncome() .userId(userId) .sysOrigin(userProfile.getOriginSys()) .eventId(recordNo) - .origin(SysCurrencySendReasonEnum.LOTTERY.name()) - .originDescribe("抽奖奖励") + .origin(GoldOrigin.LOTTERY_REWARD) + .originDescribe(GoldOrigin.LOTTERY_REWARD.name()) .amount(amount) - .remark("抽奖获得金币") + .remark("") .build() ); @@ -175,7 +179,7 @@ public class LotteryPrizeGrantServiceImpl implements LotteryPrizeGrantService { .setPropsId(prize.getPropsId()) .setType("PROPS") .setOrigin(SendPropsOrigin.LOTTERY_REWARD.name()) - .setOriginDesc("抽奖奖励") + .setOriginDesc(SendPropsOrigin.LOTTERY_REWARD.getDesc()) .setDays(days) .setUseProps(Boolean.FALSE) .setAllowGive(Boolean.FALSE) @@ -206,7 +210,7 @@ public class LotteryPrizeGrantServiceImpl implements LotteryPrizeGrantService { .setPropsId(prize.getPropsId()) .setType(type) .setOrigin(SendPropsOrigin.LOTTERY_REWARD.name()) - .setOriginDesc("抽奖奖励") + .setOriginDesc(SendPropsOrigin.LOTTERY_REWARD.getDesc()) .setDays(days) .setUseProps(Boolean.FALSE) .setAllowGive(Boolean.FALSE) @@ -215,7 +219,7 @@ public class LotteryPrizeGrantServiceImpl implements LotteryPrizeGrantService { propsBackpackClient.giveProps(cmd); // 发送通知 - propsBackpackClient.givePropsNotify(userId, type, days, prize.getPropsId()); +// propsBackpackClient.givePropsNotify(userId, type, days, prize.getPropsId()); log.info("Backpack props granted, userId: {}, type: {}, propsId: {}, days: {}, recordNo: {}", userId, type, prize.getPropsId(), days, recordNo); @@ -246,7 +250,7 @@ public class LotteryPrizeGrantServiceImpl implements LotteryPrizeGrantService { ); // 发送通知 - propsBackpackClient.givePropsNotify(userId, "BADGE", days, prize.getPropsId()); +// propsBackpackClient.givePropsNotify(userId, "BADGE", days, prize.getPropsId()); log.info("Badge granted, userId: {}, badgeId: {}, days: {}, expireType: {}, recordNo: {}", userId, prize.getPropsId(), days, expireType, recordNo);