Browse Source

订单状态测试完毕

skyfffire 1 tháng trước cách đây
mục cha
commit
e32db79060

+ 2 - 0
src/main/java/common/jfinal/AppConfig.java

@@ -12,6 +12,7 @@ import common.interceptor.empty.EmptyInterceptor;
 import common.model._MappingKit;
 import modules.hello.HelloController;
 import modules.nftt.NfttController;
+import modules.order.OrderController;
 import modules.upload.UploadController;
 import modules.user.UserController;
 
@@ -44,6 +45,7 @@ public class AppConfig extends JFinalConfig {
         routes.add("/user", UserController.class);
         routes.add("/upload", UploadController.class);
         routes.add("/nftt", NfttController.class);
+        routes.add("/order", OrderController.class);
     }
 
     @Override

+ 28 - 0
src/main/java/modules/order/OrderController.java

@@ -15,12 +15,21 @@ import common.utils.http.MyRet;
 import modules.user.UserController;
 import modules.user.UserService;
 
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
 public class OrderController extends MyController {
     @Inject
     private OrderService service;
     @Inject
     private UserService userService;
 
+    public void hello() {
+        renderJson(MyRet.ok(service.hello()));
+    }
+
     /**
      * 创建订单调用的接口,会检查库存什么的
      */
@@ -226,9 +235,28 @@ public class OrderController extends MyController {
      * 管理员更新状态,先不做
      */
     @Before(LoginInterceptor.class)
+    @RequiredRoleInterface({UserController.ROLE_CHECK_ADMIN, UserController.ROLE_SUPER_ADMIN})
     public void updateByAdmin() {
         renderJson(MyRet.fail("后端还没做"));
     }
+
+    /**
+     * 获取订单的状态码以及对应的状态描述
+     */
+    @Before(LoginInterceptor.class)
+    @RequiredRoleInterface({UserController.ROLE_CHECK_ADMIN, UserController.ROLE_SUPER_ADMIN})
+    public void orderStatus() {
+        List<Map<String, Object>> statusList = new ArrayList<>();
+
+        for (OrderStatus status : OrderStatus.values()) {
+            Map<String, Object> statusMap = new HashMap<>();
+            statusMap.put("code", status.code);
+            statusMap.put("desc", status.desc);
+            statusList.add(statusMap);
+        }
+
+        renderJson(MyRet.ok("查询成功").setData(statusList));
+    }
     
     // 订单状态枚举 (建议定义在单独的类或枚举中)
     public enum OrderStatus {

+ 6 - 4
src/main/java/modules/order/OrderService.java

@@ -1,8 +1,6 @@
 package modules.order;
 
-import com.jfinal.kit.StrKit;
 import com.jfinal.plugin.activerecord.Db;
-import com.jfinal.plugin.activerecord.Page;
 import com.jfinal.plugin.activerecord.Record;
 import common.model.Order;
 import common.model.OrderLog;
@@ -16,6 +14,10 @@ import java.util.Map;
 import java.util.stream.Collectors;
 
 public class OrderService {
+    public String hello() {
+        return "Hello order";
+    }
+    
     public MyRet create(long nfttId, long userId, int orderType) {
         BigDecimal quantity = BigDecimal.ONE;
         
@@ -34,7 +36,7 @@ public class OrderService {
                 }
 
                 // 2. 更新库存(在锁定的行上进行)
-                Db.update("UPDATE purchased_quantity SET purchased_quantity = purchased_quantity + 1 WHERE id = ?", nfttId);
+                Db.update("UPDATE t_nftt SET purchased_quantity = purchased_quantity + 1 WHERE id = ?", nfttId);
                 
                 // 3. 创建订单
                 Order order = new Order();
@@ -97,7 +99,7 @@ public class OrderService {
                 long nfttId = order.getNfttId();
                 
                 // 2. 更新库存(在锁定的行上进行)
-                if (Db.update("UPDATE purchased_quantity SET purchased_quantity = purchased_quantity - 1 WHERE id = ?", nfttId) != 1) {
+                if (Db.update("UPDATE t_nftt SET purchased_quantity = purchased_quantity - 1 WHERE id = ?", nfttId) != 1) {
                     throw new RuntimeException("更新库存失败导致的取消失败");
                 }
 

+ 48 - 0
src/test/rest/OrderControllerTest.http

@@ -0,0 +1,48 @@
+### 连通性测试
+POST {{ baseUrl }}/order/hello
+
+
+### 创建订单
+POST {{ baseUrl }}/order/create
+Content-Type: application/json
+dl-token: {{dl_token_var}}
+
+{
+  "nftt_id": 2
+}
+
+### 用户取消订单
+POST {{ baseUrl }}/order/cancel
+Content-Type: application/json
+dl-token: {{dl_token_var}}
+
+{
+  "order_id": 1
+}
+
+### 用户获取订单列表
+POST {{ baseUrl }}/order/orderList
+Content-Type: application/json
+dl-token: {{dl_token_var}}
+
+### 【超级管理员】获取订单的状态码以及对应的状态描述
+POST {{ baseUrl }}/order/orderStatus
+Content-Type: application/json
+dl-token: {{dl_token_var}}
+
+### 【超级管理员】获取用户列表,当前版本仅支持order_status查询
+POST {{ baseUrl }}/order/orderListByAdmin
+Content-Type: application/json
+dl-token: {{dl_token_var}}
+
+{
+  "page_number": 1,
+  "page_size": 100
+}
+### 返回值解释
+### list 分页结果的实际列表数据 
+### page_number 当前页码
+### page_size 每页大小
+### total_page 总页数
+### total_row  当前分页的总数
+### total_order_count 符合条件的总记录数