Explorar o código

商品以及优惠卷的后台维护

liude hai 1 ano
pai
achega
5ec7a712f8

+ 64 - 0
src/main/java/com/chelvc/cloud/admin/controller/CouponController.java

@@ -0,0 +1,64 @@
+package com.chelvc.cloud.admin.controller;
+
+import com.chelvc.cloud.vehicle.api.dto.CouponDTO;
+import com.chelvc.cloud.vehicle.api.param.CouponModifyParam;
+import com.chelvc.cloud.vehicle.api.param.CouponPagingParam;
+import com.chelvc.cloud.vehicle.api.service.CouponService;
+import com.chelvc.framework.base.annotation.UnifiedResponseBody;
+import com.chelvc.framework.base.model.Pagination;
+import org.apache.dubbo.config.annotation.DubboReference;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import javax.validation.constraints.Min;
+
+/**
+ * 商品优惠券接口
+ *
+ * @author liude
+ * @Date 2023/8/29
+ **/
+@Validated
+@RestController
+@UnifiedResponseBody
+@PreAuthorize("isBusiness('COUPON')")
+public class CouponController {
+    @DubboReference
+    private CouponService couponService;
+
+    /**
+     * 新增商品优惠券
+     *
+     * @param param 新增参数
+     * @return 商品优惠券主键
+     */
+    @PostMapping("/coupon")
+    public Long addCoupon(@RequestBody @Valid CouponModifyParam param) {
+        return this.couponService.addCoupon(param);
+    }
+
+    /**
+     * 修改商品优惠券
+     *
+     * @param id    商品优惠券主键
+     * @param param 修改参数
+     */
+    @PutMapping("/coupon/{id}")
+    public void updateCoupon(@PathVariable("id") @Min(value = 1, message = "分类主键不能小于1") Long id,
+                               @RequestBody @Valid CouponModifyParam param) {
+        this.couponService.updateCoupon(id, param);
+    }
+
+    /**
+     * 查询商品优惠券分页
+     *
+     * @param param 查询参数
+     * @return 商品优惠券分页信息
+     */
+    @GetMapping("/coupon/paging")
+    public Pagination<CouponDTO> getCouponPaging(@Valid CouponPagingParam param) {
+        return this.couponService.getCouponPaging(param);
+    }
+}

+ 68 - 0
src/main/java/com/chelvc/cloud/admin/controller/GoodsController.java

@@ -0,0 +1,68 @@
+package com.chelvc.cloud.admin.controller;
+
+import com.chelvc.cloud.vehicle.api.dto.CouponDTO;
+import com.chelvc.cloud.vehicle.api.dto.GoodsDTO;
+import com.chelvc.cloud.vehicle.api.param.CouponModifyParam;
+import com.chelvc.cloud.vehicle.api.param.CouponPagingParam;
+import com.chelvc.cloud.vehicle.api.param.GoodsModifyParam;
+import com.chelvc.cloud.vehicle.api.param.GoodsPagingParam;
+import com.chelvc.cloud.vehicle.api.service.CouponService;
+import com.chelvc.cloud.vehicle.api.service.GoodsService;
+import com.chelvc.framework.base.annotation.UnifiedResponseBody;
+import com.chelvc.framework.base.model.Pagination;
+import org.apache.dubbo.config.annotation.DubboReference;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import javax.validation.constraints.Min;
+
+/**
+ * 商品接口
+ *
+ * @author liude
+ * @Date 2023/8/29
+ **/
+@Validated
+@RestController
+@UnifiedResponseBody
+@PreAuthorize("isBusiness('GOODS')")
+public class GoodsController {
+    @DubboReference
+    private GoodsService goodsService;
+
+    /**
+     * 新增商品
+     *
+     * @param param 新增参数
+     * @return 商品主键
+     */
+    @PostMapping("/goods")
+    public Long addGoods(@RequestBody @Valid GoodsModifyParam param) {
+        return this.goodsService.addGoods(param);
+    }
+
+    /**
+     * 修改商品
+     *
+     * @param id    商品主键
+     * @param param 修改参数
+     */
+    @PutMapping("/goods/{id}")
+    public void updateGoods(@PathVariable("id") @Min(value = 1, message = "分类主键不能小于1") Long id,
+                               @RequestBody @Valid GoodsModifyParam param) {
+        this.goodsService.updateGoods(id, param);
+    }
+
+    /**
+     * 查询商品分页
+     *
+     * @param param 查询参数
+     * @return 商品分页信息
+     */
+    @GetMapping("/goods/paging")
+    public Pagination<GoodsDTO> getGoodsPaging(@Valid GoodsPagingParam param) {
+        return this.goodsService.getGoodsPaging(param);
+    }
+}