From 9d809221eb4debba088ac2e56e63315b7596a30b Mon Sep 17 00:00:00 2001 From: peng <peng.com> Date: 星期二, 16 九月 2025 14:50:41 +0800 Subject: [PATCH] 解决图片显示问题和实物商品与虚拟商品中不包含礼品卡时去除优惠卷id和名称 --- framework/src/main/java/cn/lili/modules/lmk/service/impl/CouponVirtualServiceImpl.java | 14 ++++++++++++-- 1 files changed, 12 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 a0906b9..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 @@ -133,6 +133,12 @@ public Result page(CouponVirtualQuery query) { IPage<CouponVirtualVO> page = PageUtil.getPage(query, CouponVirtualVO.class); baseMapper.getPage(page, query); + for (CouponVirtualVO record : page.getRecords()) { + String original = record.getOriginal(); + if (StringUtils.isNotBlank(original) && !original.contains("http")) { + record.setOriginal(cosUtil.getPreviewUrl(original)); + } + } return Result.ok().data(page.getRecords()).total(page.getTotal()); } @@ -176,8 +182,12 @@ 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) { + throw new ServiceException("褰撳墠浼樻儬鍗蜂笉瀛樺湪"); + } if (ClaimStatusEnum.CLAIM.name().equals(cardInfo.getClaimStatus())) { throw new ServiceException("褰撳墠璐墿鍗″凡缁忚棰嗗彇"); } @@ -210,6 +220,7 @@ cardInfo.setUserNickname(nickName); cardInfo.setUserId(userId); cardInfo.setClaimStatus(ClaimStatusEnum.CLAIM.name()); + cardInfo.setShareStatus(ShareStatusEnum.SHARE.name()); cardInfo.setClaimTime(new Date()); boolean b = this.updateById(cardInfo); //鍘婚鍙栦紭鎯犲嵎 @@ -218,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