From 6d3f43aceecf5cb35c8440e8593263b0ca1bdcd6 Mon Sep 17 00:00:00 2001
From: xin <1099200748@qq.com>
Date: Mon, 14 Jul 2025 21:56:02 +0800
Subject: [PATCH] 订单流程

---
 oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderServiceImpl.java |   25 +++++++++++++++----------
 1 files changed, 15 insertions(+), 10 deletions(-)

diff --git a/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderServiceImpl.java b/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderServiceImpl.java
index f7e251a..d4a1f7f 100644
--- a/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderServiceImpl.java
+++ b/oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderServiceImpl.java
@@ -173,7 +173,9 @@
         productSnapshotService.saveBatch(snapshots);
 
         order.setProductSnapshots(new HashSet<>(snapshots));
-        operationLogService.create(order, addressSnapshot);
+        OrderResponse response = new OrderResponse(order, addressSnapshot, null);
+
+        operationLogService.create(response, OrderStatusEnum.ZERO);
         return order;
     }
 
@@ -236,17 +238,15 @@
     @Override
     @Transactional(rollbackFor = Exception.class)
     public OrderResponse getByOrderNum(String orderNum) {
-        OrderResponse response = new OrderResponse();
-        response.setOrder(orderMapper.getByOrderNum(orderNum));
-        response.setAddress(addressSnapshotService.queryByOrderNum(orderNum));
-        response.setOperation(operationLogService.getByOrderNum(orderNum));
-        return response;
+        return new OrderResponse(orderMapper.getByOrderNum(orderNum),
+                addressSnapshotService.queryByOrderNum(orderNum),
+                operationLogService.getByOrderNum(orderNum));
     }
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public void operationLog(OrderResponse order) {
-        orderMapper.updateOrderStatus(order.getOrder().getOrderNum(), OrderStatusEnum.TWO.getKey(), OrderStatusEnum.TWO.getValue());
+    public void operationLog(OrderResponse order, OrderStatusEnum stateEnum) {
+        operationLogService.create(order, stateEnum);
     }
 
     @Override
@@ -258,9 +258,13 @@
     @Override
     @Transactional(rollbackFor = Exception.class)
     public void closeOrder(String orderNum) {
-        Order order = orderMapper.getByOrderNum(orderNum);
+        OrderResponse response = getByOrderNum(orderNum);
+        Order order = response.getOrder();
         if (order == null) {
             throw new BadRequestException("订单不存在");
+        }
+        if (!SecurityUtils.getCurrentUserId().equals(order.getUserId())) {
+            throw new BadRequestException("不能修改他人订单");
         }
         if (!order.getPayState().equals(PayStateEnum.NOTPAY.getKey())) {
             throw new BadRequestException(PayStateEnum.getValue(order.getPayState()));
@@ -276,7 +280,8 @@
                 swiftPassService.closeOrder(orderNum, anEnum);
                 break;
         }
-        orderMapper.updateCloseStatus(orderNum, PayStateEnum.CLOSED.getKey());
+        operationLogService.create(response, OrderStatusEnum.NINE);
+        orderMapper.updateCloseStatus(orderNum, PayStateEnum.CLOSED.getKey(), PayStateEnum.CLOSED.getValue());
     }
 
     @Override

--
Gitblit v1.9.3