From 07b964209ad7ff91def2ed1962c5a02441710d86 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Fri, 12 Jun 2026 09:48:25 +0800
Subject: [PATCH] refactor(mall): 重构DTO和控制器结构并添加验证注解

---
 src/main/java/cc/mrbird/febs/mall/controller/ApiMallOrderController.java |   17 ++++++++++++++---
 1 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallOrderController.java b/src/main/java/cc/mrbird/febs/mall/controller/ApiMallOrderController.java
index ba25382..d71f5fe 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallOrderController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/ApiMallOrderController.java
@@ -1,6 +1,8 @@
 package cc.mrbird.febs.mall.controller;
 
+import cc.mrbird.febs.common.annotation.Limit;
 import cc.mrbird.febs.common.entity.FebsResponse;
+import cc.mrbird.febs.common.entity.LimitType;
 import cc.mrbird.febs.mall.dto.*;
 import cc.mrbird.febs.mall.service.IApiMallOrderInfoService;
 import cc.mrbird.febs.mall.vo.OrderDetailVo;
@@ -27,22 +29,31 @@
 @RestController
 @RequiredArgsConstructor
 @RequestMapping(value = "/api/order")
-@Api(value = "ApiMallOrderController", tags = "订单接口类")
+@Api(value = "ApiMallOrderController", tags = "DS-订单接口类")
 public class ApiMallOrderController {
 
     private final IApiMallOrderInfoService mallOrderInfoService;
     private final IXcxPayService iXcxPayService;
 
+    @ApiOperation(value = "创建订单--验证是否允许创建", notes = "创建订单--验证是否允许创建")
+    @PostMapping(value = "/createOrderVerify")
+    @Limit(key = "createOrderVerify", period = 5, count = 1, name = "注册", prefix = "limit",limitType = LimitType.IP)
+    public FebsResponse createOrderVerify(@RequestBody ApiCreateOrderVerifyDto apiCreateOrderVerifyDto) {
+        return mallOrderInfoService.createOrderVerify(apiCreateOrderVerifyDto);
+    }
+
     @ApiOperation(value = "创建订单", notes = "创建订单")
     @PostMapping(value = "/createOrder")
-    public FebsResponse createOrder(@RequestBody AddOrderDto addOrderDto) {
+    @Limit(key = "createOrder", period = 5, count = 1, name = "注册", prefix = "limit",limitType = LimitType.IP)
+    public FebsResponse createOrder(@RequestBody @Validated AddOrderDto addOrderDto) {
         Long orderId = mallOrderInfoService.createOrder(addOrderDto);
 
-        return new FebsResponse().success().data(orderId).message("创建订单成功");
+        return new FebsResponse().success().data(orderId).message("Order successfully created");
     }
 
     @ApiOperation(value = "取消订单", notes = "取消订单")
     @PostMapping(value = "/cancelOrder/{id}")
+    @Limit(key = "cancelOrder", period = 5, count = 1, name = "注册", prefix = "limit",limitType = LimitType.IP)
     public FebsResponse cancelOrder(@PathVariable("id") Long id) {
         mallOrderInfoService.cancelOrder(id);
         return new FebsResponse().success();

--
Gitblit v1.9.1