From aac2321d1cf5536f7ea03f30d55a4aba30fbf710 Mon Sep 17 00:00:00 2001
From: peng <peng.com>
Date: 星期三, 02 七月 2025 10:39:39 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev

---
 buyer-api/src/main/java/cn/lili/controller/order/CartController.java |   57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 55 insertions(+), 2 deletions(-)

diff --git a/buyer-api/src/main/java/cn/lili/controller/order/CartController.java b/buyer-api/src/main/java/cn/lili/controller/order/CartController.java
index 6eb90b1..70fc330 100644
--- a/buyer-api/src/main/java/cn/lili/controller/order/CartController.java
+++ b/buyer-api/src/main/java/cn/lili/controller/order/CartController.java
@@ -1,9 +1,11 @@
 package cn.lili.controller.order;
 
+import cn.hutool.json.JSONUtil;
 import cn.lili.common.aop.annotation.PreventDuplicateSubmissions;
 import cn.lili.common.enums.ResultCode;
 import cn.lili.common.enums.ResultUtil;
 import cn.lili.common.exception.ServiceException;
+import cn.lili.common.utils.StringUtils;
 import cn.lili.common.vo.ResultMessage;
 import cn.lili.modules.order.cart.entity.dto.BuyBackDTO;
 import cn.lili.modules.order.cart.entity.dto.TradeDTO;
@@ -11,6 +13,7 @@
 import cn.lili.modules.order.cart.entity.vo.TradeParams;
 import cn.lili.modules.order.cart.service.CartService;
 import cn.lili.modules.order.order.entity.vo.ReceiptVO;
+import cn.lili.utils.COSUtil;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -45,6 +48,8 @@
      */
     @Autowired
     private CartService cartService;
+    @Autowired
+    private COSUtil cosUtil;
 
 
     @ApiOperation(value = "鍚戣喘鐗╄溅涓坊鍔犱竴涓骇鍝�")
@@ -69,12 +74,45 @@
             throw new ServiceException(ResultCode.CART_ERROR);
         }
     }
+    @ApiOperation(value = "鍚戣喘鐗╄溅涓鐩栨坊鍔犱竴涓骇鍝�")
+    @PostMapping("/addCard")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "skuId", value = "浜у搧ID", required = true, dataType = "Long", paramType = "query"),
+            @ApiImplicitParam(name = "num", value = "姝や骇鍝佺殑璐拱鏁伴噺", required = true, dataType = "int", paramType = "query"),
+            @ApiImplicitParam(name = "cartType", value = "璐墿杞︾被鍨嬶紝榛樿鍔犲叆璐墿杞�", paramType = "query")
+    })
+    public ResultMessage<Object> addCard(@NotNull(message = "浜у搧id涓嶈兘涓虹┖") String skuId,
+                                     @NotNull(message = "璐拱鏁伴噺涓嶈兘涓虹┖") @Min(value = 1, message = "鍔犲叆璐墿杞︽暟閲忓繀椤诲ぇ浜�0") Integer num) {
+        try {
+            //璇诲彇閫変腑鐨勫垪琛�
+            cartService.add(skuId, num, CartTypeEnum.CART.name(), true);
+            return ResultUtil.success();
+        } catch (ServiceException se) {
+            log.info(se.getMsg(), se);
+            throw se;
+        } catch (Exception e) {
+            log.error(ResultCode.CART_ERROR.message(), e);
+            throw new ServiceException(ResultCode.CART_ERROR);
+        }
+    }
 
 
     @ApiOperation(value = "鑾峰彇璐墿杞﹂〉闈㈣喘鐗╄溅璇︽儏")
     @GetMapping("/all")
     public ResultMessage<TradeDTO> cartAll() {
-        return ResultUtil.data(this.cartService.getAllTradeDTO());
+        TradeDTO allTradeDTO = this.cartService.getAllTradeDTO();
+        allTradeDTO.getSkuList().forEach(item->{
+            String goodsVideo = item.getGoodsSku().getGoodsVideo();
+            if (StringUtils.isNotBlank(goodsVideo)&&!goodsVideo.contains("http")) {
+                item.getGoodsSku().setGoodsVideo(cosUtil.getPreviewUrl(goodsVideo));
+            }
+
+            String thumbnail = item.getGoodsSku().getThumbnail();
+            if (StringUtils.isNotBlank(thumbnail)&&!thumbnail.contains("http")) {
+                item.getGoodsSku().setThumbnail(cosUtil.getPreviewUrl(thumbnail));
+            }
+        });
+        return ResultUtil.data(allTradeDTO);
     }
 
     @ApiOperation(value = "鑾峰彇璐墿杞︽暟閲�")
@@ -174,7 +212,22 @@
     public ResultMessage<TradeDTO> cartChecked(@NotNull(message = "璇诲彇閫変腑鍒楄〃") String way) {
         try {
             //璇诲彇閫変腑鐨勫垪琛�
-            return ResultUtil.data(this.cartService.getCheckedTradeDTO(CartTypeEnum.valueOf(way)));
+            TradeDTO checkedTradeDTO = this.cartService.getCheckedTradeDTO(CartTypeEnum.valueOf(way));
+            checkedTradeDTO.getSkuList().forEach(item->{
+
+
+                String goodsVideo = item.getGoodsSku().getGoodsVideo();
+                if (StringUtils.isNotBlank(goodsVideo)&&!goodsVideo.contains("http")) {
+                    item.getGoodsSku().setGoodsVideo(cosUtil.getPreviewUrl(goodsVideo));
+                }
+
+                String thumbnail = item.getGoodsSku().getThumbnail();
+                if (StringUtils.isNotBlank(thumbnail)&&!thumbnail.contains("http")) {
+                    item.getGoodsSku().setThumbnail(cosUtil.getPreviewUrl(thumbnail));
+                }
+            });
+            System.err.println(JSONUtil.toJsonStr(checkedTradeDTO));
+            return ResultUtil.data(checkedTradeDTO);
         } catch (ServiceException se) {
             log.error(se.getMsg(), se);
             throw se;

--
Gitblit v1.8.0