From 336b30aa1c28e2ff824e9ddf4dca08e4fd3138c3 Mon Sep 17 00:00:00 2001 From: peng <peng.com> Date: 星期一, 15 九月 2025 14:00:20 +0800 Subject: [PATCH] 调整领取逻辑 --- framework/src/main/java/cn/lili/modules/lmk/service/impl/CouponVirtualServiceImpl.java | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/impl/CouponVirtualServiceImpl.java b/framework/src/main/java/cn/lili/modules/lmk/service/impl/CouponVirtualServiceImpl.java index 9c32860..72fb330 100644 --- a/framework/src/main/java/cn/lili/modules/lmk/service/impl/CouponVirtualServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/lmk/service/impl/CouponVirtualServiceImpl.java @@ -182,6 +182,7 @@ RLock lock = null; try { lock = redissonClient.getLock(LOCK_COUPON_VIRTUAL_CARD_ID + cardId); + lock.lock(); LambdaQueryWrapper<CouponVirtual> forUpdate = Wrappers.<CouponVirtual>lambdaQuery().eq(CouponVirtual::getId, cardId).last("FOR UPDATE"); CouponVirtual cardInfo = this.getOne(forUpdate); if (cardInfo == null) { @@ -228,8 +229,7 @@ } return Result.ok().data(cardInfo.getCouponId()); } finally { - assert lock != null; - if (lock.isHeldByCurrentThread()) { + if ( lock != null && lock.isHeldByCurrentThread()) { lock.unlock(); } } -- Gitblit v1.8.0