From f5a352df9e40f98ec4ba43fcc0f280952decbe84 Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期五, 12 九月 2025 17:06:42 +0800
Subject: [PATCH] 分享虚拟商品优惠劵

---
 framework/src/main/java/cn/lili/modules/lmk/service/impl/CouponVirtualServiceImpl.java |   26 +++++++++++++++++++++++++-
 1 files changed, 25 insertions(+), 1 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 dc1a5f2..a0906b9 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
@@ -4,10 +4,12 @@
 import cn.lili.common.exception.ServiceException;
 import cn.lili.common.security.AuthUser;
 import cn.lili.common.security.context.UserContext;
+import cn.lili.modules.goods.service.GoodsService;
 import cn.lili.modules.lmk.domain.entity.CouponVirtual;
 import cn.lili.modules.lmk.domain.form.CouponVirtualForm;
 import cn.lili.modules.lmk.domain.query.CouponVirtualQuery;
 import cn.lili.modules.lmk.domain.vo.CouponVirtualVO;
+import cn.lili.modules.lmk.domain.vo.CouponVirtualVOInfo;
 import cn.lili.modules.lmk.mapper.CouponVirtualMapper;
 import cn.lili.modules.lmk.service.CouponVirtualService;
 import cn.lili.modules.order.order.entity.dos.Order;
@@ -19,6 +21,7 @@
 import cn.lili.modules.order.order.service.OrderItemService;
 import cn.lili.modules.order.order.service.OrderService;
 import cn.lili.modules.promotion.service.MemberCouponService;
+import cn.lili.utils.COSUtil;
 import cn.lili.utils.PageUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -62,6 +65,10 @@
     private final OrderService orderService;
 
     private final MemberCouponService memberCouponService;
+
+    private final GoodsService goodsService;
+
+    private final COSUtil cosUtil;
     /**
      * 娣诲姞
      *
@@ -209,7 +216,7 @@
             if (!b) {
                 throw new RuntimeException("棰嗗彇澶辫触");
             }
-            return Result.ok("棰嗗彇鎴愬姛");
+            return Result.ok().data(cardInfo.getCouponId());
         } finally {
             assert lock != null;
             if (lock.isHeldByCurrentThread()) {
@@ -225,4 +232,21 @@
         this.updateById(couponVirtual);
         return Result.ok();
     }
+
+    @Override
+    public Result couponCardInfo(String cardId) {
+        CouponVirtual couponVirtual = this.getById(cardId);
+        if (couponVirtual == null) {
+            throw new ServiceException("褰撳墠璐墿鍗′笉瀛樺湪");
+        }
+        CouponVirtualVOInfo virtualVOInfo = new CouponVirtualVOInfo();
+        BeanUtils.copyProperties(couponVirtual, virtualVOInfo);
+
+        String goodsId = virtualVOInfo.getGoodsId();
+        String url = goodsService.getById(goodsId).getOriginal();
+        if (StringUtils.isNotBlank(url) && !url.contains("http")) {
+            virtualVOInfo.setGoodsUrl(cosUtil.getPreviewUrl(url));
+        }
+        return Result.ok().data(virtualVOInfo);
+    }
 }

--
Gitblit v1.8.0