xin
2025-07-19 7ece553fd95f30dcfafa66f667ef9d0c064a22e6
oying-system/src/main/java/com/oying/modules/pc/product/rest/ProductController.java
@@ -11,11 +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.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -65,10 +67,16 @@
    // @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}}")
    @GetMapping(value = "/{productId}")
    @ApiOperation("查询商品")
    // @PreAuthorize("@el.check('product:list')")
    public ResponseEntity<?> getProduct(@PathVariable Long productId) {
@@ -79,8 +87,8 @@
        return ResponseEntity.ok(R.success(product));
    }
    @GetMapping(value = "/{productId}}/details")
    @ApiOperation("查询商品")
    @GetMapping(value = "/{productId}/details")
    @ApiOperation("查询商品详情")
    // @PreAuthorize("@el.check('product:list')")
    public ResponseEntity<?> getProductDetails(@PathVariable Long productId) {
        Product product = productService.getById(productId);
@@ -91,16 +99,16 @@
        return ResponseEntity.ok(R.success(product));
    }
    @GetMapping(value = "/{productId}}/images")
    @ApiOperation("查询商品")
    @GetMapping(value = "/{productId}/images")
    @ApiOperation("查询商品图片")
    // @PreAuthorize("@el.check('product:list')")
    public ResponseEntity<?> getProductImages(@PathVariable Long productId) {
        return ResponseEntity.ok(R.success(productImageService.queryImagesByProductId(productId)));
    }
    @GetMapping(value = "/{productId}}/labels")
    @ApiOperation("查询商品")
    @GetMapping(value = "/{productId}/labels")
    @ApiOperation("查询商品标签信息")
    // @PreAuthorize("@el.check('product:list')")
    public ResponseEntity<?> getProductLabels(@PathVariable Long productId) {
        return ResponseEntity.ok(R.success(productLabelService.queryLabelsByProductId(productId)));
@@ -112,7 +120,7 @@
    //@PreAuthorize("@el.check('merchant:product:add')")
    public ResponseEntity<?> createProduct(@Validated @RequestBody ProductMerchantCreateRequest request) {
        productAdminService.create(request);
        return ResponseEntity.noContent().build();
        return ResponseEntity.status(HttpStatus.CREATED).build();
    }
    @PutMapping