| | |
| | | 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()); |
| | | } |
| | | |
| | |
| | | lock = redissonClient.getLock(LOCK_COUPON_VIRTUAL_CARD_ID + cardId); |
| | | 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("当前购物卡已经被领取"); |
| | | } |