From 7ae6893e2746869f879d270544b7804a82ea88a9 Mon Sep 17 00:00:00 2001 From: peng <peng.com> Date: 星期五, 19 九月 2025 14:20:42 +0800 Subject: [PATCH] 会员列表导出 --- 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