From 5da53ab90d6152de28b8475cd9ccaa00abba45e8 Mon Sep 17 00:00:00 2001
From: zepengdev <lzpsmith@outlook.com>
Date: Thu, 26 Jun 2025 22:45:18 +0800
Subject: [PATCH] fix: 优化店铺添加,预检查店铺名称,返回添加的店铺信息

---
 oying-system/src/main/java/com/oying/modules/pc/product/rest/ProductController.java |   24 +++++++++++++-----------
 1 files changed, 13 insertions(+), 11 deletions(-)

diff --git a/oying-system/src/main/java/com/oying/modules/pc/product/rest/ProductController.java b/oying-system/src/main/java/com/oying/modules/pc/product/rest/ProductController.java
index dafd176..149958d 100644
--- a/oying-system/src/main/java/com/oying/modules/pc/product/rest/ProductController.java
+++ b/oying-system/src/main/java/com/oying/modules/pc/product/rest/ProductController.java
@@ -1,6 +1,5 @@
 package com.oying.modules.pc.product.rest;
 
-import cn.hutool.core.collection.ListUtil;
 import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.oying.annotation.Log;
@@ -12,12 +11,13 @@
 import com.oying.modules.pc.product.service.ProductImageService;
 import com.oying.modules.pc.product.service.ProductLabelService;
 import com.oying.modules.pc.product.service.ProductService;
+import com.oying.utils.PageResult;
 import com.oying.utils.R;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import lombok.RequiredArgsConstructor;
-import org.apache.commons.lang3.ObjectUtils;
+import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
@@ -58,7 +58,7 @@
     @GetMapping(value = "/batch")
     @ApiOperation("查询商品(批量)")
     // @PreAuthorize("@el.check('product:list')")
-    public ResponseEntity<?> getProductsByIds(@RequestBody List<Long> ids) {
+    public ResponseEntity<?> getProductsByIds(@RequestParam(value = "ids") List<Long> ids) {
         return ResponseEntity.ok(R.success(productService.listByIds(ids)));
     }
 
@@ -67,7 +67,13 @@
     // @PreAuthorize("@el.check('product:list')")
     public ResponseEntity<?> getProductsByPage(ProductQueryCriteria criteria) {
         Page<Object> page = new Page<>(criteria.getPage(), criteria.getSize());
-        return ResponseEntity.ok(R.success(productService.queryAll(criteria, page)));
+        PageResult<Product> pageResult = productService.queryAll(criteria, page);
+        pageResult.getContent().forEach(product -> {
+            Long productId = product.getProductId();
+            product.setImages(productImageService.queryImagesByProductId(productId));
+            product.setLabels(productLabelService.queryLabelsByProductId(productId));
+        });
+        return ResponseEntity.ok(R.success(pageResult));
     }
 
     @GetMapping(value = "/{productId}}")
@@ -112,20 +118,16 @@
     @Log("新增商品")
     @ApiOperation("新增商品")
     //@PreAuthorize("@el.check('merchant:product:add')")
-    public ResponseEntity<?> createProduct(@PathVariable Long storeId,
-                                           @Validated @RequestBody ProductMerchantCreateRequest request) {
-        request.setStoreId(ObjectUtils.defaultIfNull(request.getStoreId(), storeId));
+    public ResponseEntity<?> createProduct(@Validated @RequestBody ProductMerchantCreateRequest request) {
         productAdminService.create(request);
-        return ResponseEntity.noContent().build();
+        return ResponseEntity.status(HttpStatus.CREATED).build();
     }
 
     @PutMapping
     @Log("修改商品")
     @ApiOperation("修改商品")
     // @PreAuthorize("@el.check('product:edit')")
-    public ResponseEntity<?> updateProduct(@PathVariable Long productId,
-                                           @Validated @RequestBody ProductMerchantUpdateRequest request) {
-        request.setProductId(ObjectUtils.defaultIfNull(request.getProductId(), productId));
+    public ResponseEntity<?> updateProduct(@Validated @RequestBody ProductMerchantUpdateRequest request) {
         productAdminService.update(request);
         return ResponseEntity.noContent().build();
     }

--
Gitblit v1.9.3