发送红包增加区域限制

This commit is contained in:
tianfeng 2026-01-14 15:32:21 +08:00
parent 8d20ad4899
commit 8625ad3a8b

View File

@ -7,6 +7,7 @@ import com.red.circle.other.app.convertor.UserRedPacketAppConvertor;
import com.red.circle.other.app.dto.clientobject.UserRedPacketCO;
import com.red.circle.other.app.dto.cmd.SendUserRedPacketCmd;
import com.red.circle.other.domain.gateway.UserRedPacketGateway;
import com.red.circle.other.domain.gateway.user.ability.UserRegionGateway;
import com.red.circle.other.domain.redpacket.RoomRedPacketType;
import com.red.circle.other.domain.redpacket.UserRedPacket;
import com.red.circle.other.domain.redpacket.UserRedPacketStatus;
@ -14,6 +15,7 @@ import com.red.circle.other.infra.database.cache.service.other.UserRedPacketCach
import com.red.circle.other.infra.database.rds.entity.user.user.ConsumptionLevel;
import com.red.circle.other.infra.database.rds.service.user.user.ConsumptionLevelService;
import com.red.circle.other.inner.asserts.OtherErrorCode;
import com.red.circle.other.inner.asserts.user.UserRelationErrorCode;
import com.red.circle.tool.core.sequence.IdWorkerUtils;
import com.red.circle.tool.core.tuple.PennyAmount;
import com.red.circle.wallet.inner.endpoint.wallet.WalletGoldClient;
@ -43,6 +45,7 @@ public class SendUserRedPacketCmdExe {
private final UserRedPacketCacheService userRedPacketCacheService;
private final WalletGoldClient walletGoldClient;
private final ConsumptionLevelService consumptionLevelService;
private final UserRegionGateway userRegionGateway;
/**
* 手续费比例10%
@ -96,6 +99,8 @@ public class SendUserRedPacketCmdExe {
Integer level = LevelUtils.getWealthLevel(SysOriginPlatformEnum.LIKEI, consumptionLevel.getConsumptionGolds().longValue()).getLevel();
ResponseAssert.isTrue(OtherErrorCode.USER_WEALTH_NEED_THAN_10, level >= 10);
boolean eqRegion = userRegionGateway.checkEqRegion(cmd.getReqUserId(), cmd.getReceiverUserId());
ResponseAssert.isTrue(UserRelationErrorCode.UNAVAILABLE_NOT_REGION, eqRegion);
}
/**