From 81fbffe6d5691f7c0e25acf0522b71ddf01a7240 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期三, 09 七月 2025 18:08:39 +0800
Subject: [PATCH] 上家发布商品功能

---
 buyer-api/src/main/java/cn/lili/controller/store/StoreBuyerController.java |   50 +++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 49 insertions(+), 1 deletions(-)

diff --git a/buyer-api/src/main/java/cn/lili/controller/store/StoreBuyerController.java b/buyer-api/src/main/java/cn/lili/controller/store/StoreBuyerController.java
index 35bdfbd..349ac8d 100644
--- a/buyer-api/src/main/java/cn/lili/controller/store/StoreBuyerController.java
+++ b/buyer-api/src/main/java/cn/lili/controller/store/StoreBuyerController.java
@@ -1,19 +1,29 @@
 package cn.lili.controller.store;
 
+import cn.lili.base.Result;
 import cn.lili.common.enums.ResultUtil;
 import cn.lili.common.security.AuthUser;
 import cn.lili.common.security.context.UserContext;
+import cn.lili.common.utils.StringUtils;
 import cn.lili.common.vo.PageVO;
 import cn.lili.common.vo.ResultMessage;
+import cn.lili.modules.goods.entity.dos.GoodsUnit;
+import cn.lili.modules.goods.entity.dto.GoodsOperationDTO;
 import cn.lili.modules.goods.entity.vos.StoreGoodsLabelVO;
+import cn.lili.modules.goods.service.GoodsService;
+import cn.lili.modules.goods.service.GoodsUnitService;
 import cn.lili.modules.goods.service.StoreGoodsLabelService;
 import cn.lili.modules.store.entity.dos.Store;
 import cn.lili.modules.store.entity.dto.StoreBankDTO;
 import cn.lili.modules.store.entity.dto.StoreCompanyDTO;
 import cn.lili.modules.store.entity.dto.StoreOtherInfoDTO;
 import cn.lili.modules.store.entity.vos.*;
+import cn.lili.modules.store.service.FreightTemplateService;
 import cn.lili.modules.store.service.StoreDetailService;
 import cn.lili.modules.store.service.StoreService;
+import cn.lili.mybatis.util.PageUtil;
+import cn.lili.utils.COSUtil;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
@@ -22,8 +32,10 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import javax.validation.Valid;
 import javax.validation.constraints.NotNull;
 import java.util.List;
+import java.util.Objects;
 
 
 /**
@@ -52,6 +64,17 @@
      */
     @Autowired
     private StoreDetailService storeDetailService;
+    @Autowired
+    private COSUtil cosUtil;
+
+    @Autowired
+    private FreightTemplateService freightTemplateService;
+
+    @Autowired
+    private GoodsUnitService goodsUnitService;
+
+    @Autowired
+    private GoodsService goodsService;
 
     @ApiOperation(value = "鑾峰彇搴楅摵鍒楄〃鍒嗛〉")
     @GetMapping
@@ -77,7 +100,11 @@
     @ApiImplicitParam(name = "id", value = "搴楅摵ID", required = true, paramType = "path")
     @GetMapping(value = "/get/detail/{id}")
     public ResultMessage<StoreBasicInfoVO> detail(@NotNull @PathVariable String id) {
-        return ResultUtil.data(storeDetailService.getStoreBasicInfoDTO(id));
+        StoreBasicInfoVO storeBasicInfoDTO = storeDetailService.getStoreBasicInfoDTO(id);
+        if (StringUtils.isNotBlank(storeBasicInfoDTO.getStoreLogo())&&!storeBasicInfoDTO.getStoreLogo().contains("http")) {
+            storeBasicInfoDTO.setStoreLogo(cosUtil.getPreviewUrl(storeBasicInfoDTO.getStoreLogo()));
+        }
+        return ResultUtil.data(storeBasicInfoDTO);
     }
 
     @ApiOperation(value = "閫氳繃id鑾峰彇搴楅摵璇︾粏淇℃伅-钀ヤ笟鎵х収")
@@ -122,4 +149,25 @@
     public ResultMessage<StoreDetailVO> apply() {
         return ResultUtil.data(storeDetailService.getStoreDetailVOByMemberId(UserContext.getCurrentUser().getId()));
     }
+
+
+    @ApiOperation(value = "鑾峰彇搴楅摵涓嬬殑鐗╂祦妯℃澘")
+    @GetMapping(value = "/freightTemplate")
+    public ResultMessage<List<FreightTemplateVO>> freightTemplate() {
+        String storeId = Objects.requireNonNull(UserContext.getCurrentUser()).getStoreId();
+        return ResultUtil.data(freightTemplateService.getFreightTemplateList(storeId));
+    }
+
+    @ApiOperation(value = "鑾峰彇搴楅摵涓嬬殑璁¢噺鍗曚綅")
+    @GetMapping(value = "/goods/unit")
+    public ResultMessage<IPage<GoodsUnit>> goodsUnit(PageVO pageVO) {
+        return ResultUtil.data(goodsUnitService.page(PageUtil.initPage(pageVO)));
+    }
+
+    @ApiOperation(value = "鏂板鍟嗗搧")
+    @PostMapping(value = "/goods/create", consumes = "application/json", produces = "application/json")
+    public ResultMessage<GoodsOperationDTO> save(@Valid @RequestBody GoodsOperationDTO goodsOperationDTO) {
+        goodsService.addGoods(goodsOperationDTO);
+        return ResultUtil.success();
+    }
 }

--
Gitblit v1.8.0