From 74c467fe392a71755813283e322e0d8a083ef73e Mon Sep 17 00:00:00 2001
From: Cui Zhi Feng <7426394+wuxixiaocui@user.noreply.gitee.com>
Date: 星期四, 29 八月 2024 14:38:54 +0800
Subject: [PATCH] 积分商品 2

---
 src/main/java/com/mzl/flower/config/ResourceServerConfig.java               |    1 
 src/main/java/com/mzl/flower/web/customer/PointGoodsCustomerController.java |   50 +++++++++++++++++++++++++
 src/main/java/com/mzl/flower/web/point/PointGoodsController.java            |   19 +++++++++
 src/main/java/com/mzl/flower/service/point/PointGoodsService.java           |   11 +++++
 4 files changed, 81 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/mzl/flower/config/ResourceServerConfig.java b/src/main/java/com/mzl/flower/config/ResourceServerConfig.java
index c77de72..17cbe9a 100644
--- a/src/main/java/com/mzl/flower/config/ResourceServerConfig.java
+++ b/src/main/java/com/mzl/flower/config/ResourceServerConfig.java
@@ -51,6 +51,7 @@
                 .antMatchers("/api/customer/flower/list/view").permitAll()
                 .antMatchers("/api/customer/flower/up/stock").permitAll()
                 .antMatchers("api/pub/customer/home/**").permitAll()
+                .antMatchers("/api/customer/point/goods/**").permitAll()
                 .antMatchers("/api/upload/oss/file").permitAll()
                 .antMatchers("/api/flower/zone/list").permitAll()
                 .antMatchers("/api/config/content/list/view").permitAll()
diff --git a/src/main/java/com/mzl/flower/service/point/PointGoodsService.java b/src/main/java/com/mzl/flower/service/point/PointGoodsService.java
index 0b25f44..12fb25c 100644
--- a/src/main/java/com/mzl/flower/service/point/PointGoodsService.java
+++ b/src/main/java/com/mzl/flower/service/point/PointGoodsService.java
@@ -75,4 +75,15 @@
 
         return dto;
     }
+
+    public void updateStatus(Long id, String status){
+        PointGoods p = pointGoodsMapper.selectById(id);
+        if(p == null){
+            throw new ValidationException("商品未找到");
+        }
+
+        p.setStatus(status);
+        p.update(SecurityUtils.getUserId());
+        pointGoodsMapper.updateById(p);
+    }
 }
diff --git a/src/main/java/com/mzl/flower/web/customer/PointGoodsCustomerController.java b/src/main/java/com/mzl/flower/web/customer/PointGoodsCustomerController.java
new file mode 100644
index 0000000..532a098
--- /dev/null
+++ b/src/main/java/com/mzl/flower/web/customer/PointGoodsCustomerController.java
@@ -0,0 +1,50 @@
+package com.mzl.flower.web.customer;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.mzl.flower.base.BaseController;
+import com.mzl.flower.base.R;
+import com.mzl.flower.base.ReturnDataDTO;
+import com.mzl.flower.constant.Constants;
+import com.mzl.flower.dto.request.point.PointGoodsCreateDTO;
+import com.mzl.flower.dto.request.point.PointGoodsQueryDTO;
+import com.mzl.flower.dto.request.point.PointGoodsUpdateDTO;
+import com.mzl.flower.dto.response.point.PointGoodsDTO;
+import com.mzl.flower.dto.response.point.PointGoodsListDTO;
+import com.mzl.flower.service.point.PointGoodsService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+@RestController
+@RequestMapping("/api/customer/point/goods")
+@Api(value = "积分商品-花店", tags = "积分商品-花店")
+@Validated
+@Slf4j
+public class PointGoodsCustomerController extends BaseController {
+
+    @Autowired
+    private PointGoodsService pointGoodsService;
+
+    @GetMapping("/list")
+    @ApiOperation(value = "商品列表")
+    public ResponseEntity<ReturnDataDTO<Page<PointGoodsListDTO>>> selectGoodsList(Page page, PointGoodsQueryDTO dto){
+        dto.setStatus(Constants.POINT_GOODS_STATUS.A.name());
+        return returnData(R.SUCCESS.getCode(), pointGoodsService.selectGoodsList(page, dto));
+    }
+
+    @GetMapping("/list/view")
+    @ApiOperation(value = "商品详情")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "id", value = "商品id", required = true, dataType = "Long", paramType = "query")
+    })
+    public ResponseEntity<ReturnDataDTO<PointGoodsDTO>> getGoodsInfo(Long id) {
+        return returnData(R.SUCCESS.getCode(), pointGoodsService.getGoodsInfo(id));
+    }
+
+}
diff --git a/src/main/java/com/mzl/flower/web/point/PointGoodsController.java b/src/main/java/com/mzl/flower/web/point/PointGoodsController.java
index 858b61b..97614f8 100644
--- a/src/main/java/com/mzl/flower/web/point/PointGoodsController.java
+++ b/src/main/java/com/mzl/flower/web/point/PointGoodsController.java
@@ -68,4 +68,23 @@
         return returnData(R.SUCCESS.getCode(), null);
     }
 
+    @GetMapping("/list/on")
+    @ApiOperation(value = "商品上架")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "id", value = "商品id", required = true, dataType = "Long", paramType = "query")
+    })
+    public ResponseEntity<ReturnDataDTO<?>> upGoods(Long id) {
+        pointGoodsService.updateStatus(id, Constants.POINT_GOODS_STATUS.A.name());
+        return returnData(R.SUCCESS.getCode(), null);
+    }
+
+    @GetMapping("/list/off")
+    @ApiOperation(value = "商品下架")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "id", value = "商品id", required = true, dataType = "Long", paramType = "query")
+    })
+    public ResponseEntity<ReturnDataDTO<?>> offGoods(Long id) {
+        pointGoodsService.updateStatus(id, Constants.POINT_GOODS_STATUS.I.name());
+        return returnData(R.SUCCESS.getCode(), null);
+    }
 }

--
Gitblit v1.9.3