From 227b029030818925089cbe91dc1288594a5d4aa9 Mon Sep 17 00:00:00 2001
From: xin <1099200748@qq.com>
Date: Thu, 21 Aug 2025 14:28:58 +0800
Subject: [PATCH] 退款订单

---
 oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderServiceImpl.java |   20 +++++++++++++++++---
 1 files changed, 17 insertions(+), 3 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 ba1eb63..5c4657e 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
@@ -57,6 +57,7 @@
     private static final String DESCRIBE = "哦应:";
     private static final String ORDER_KEY = "oying:order";
     private static final String ORDER_STORE_KEY = "oying:order:store";
+    private static final String ORDER_CODE = "ORDER";
 
     @Override
     public PageResult<Order> queryAll(OrderQueryCriteria criteria, Page<Object> page) {
@@ -267,7 +268,7 @@
     public OrderResponse getByOrderNum(String orderNum) {
         return new OrderResponse(orderMapper.getByOrderNum(orderNum),
                 addressSnapshotService.queryByOrderNum(orderNum),
-                operationLogService.getByOrderNum(orderNum, null));
+                operationLogService.getByOrderNum(orderNum, ORDER_CODE));
     }
 
     @Override
@@ -294,7 +295,7 @@
         OrderResponse response = getByOrderNum(orderNum);
         Order order = response.getOrder();
         if (order == null) {
-            throw new BadRequestException("订单不存在");
+            throw new BadRequestException("订单不存在!");
         }
         if (!SecurityUtils.getCurrentUserId().equals(order.getUserId())) {
             throw new BadRequestException("不能修改他人订单");
@@ -307,7 +308,7 @@
             case HWC:
             case HWC2:
                 JSONObject object = swiftPassService.query(orderNum, anEnum);
-                if (object.getString("trade_state").equals(PayStateEnum.NOTPAY.getKey())) {
+                if (!object.getString("trade_state").equals(PayStateEnum.NOTPAY.getKey())) {
                     throw new BadRequestException(PayStateEnum.getValue(order.getPayState()));
                 }
                 swiftPassService.closeOrder(orderNum, anEnum);
@@ -335,6 +336,19 @@
     @Override
     @Transactional(rollbackFor = Exception.class)
     public void deleteAll(List<Long> ids) {
+        Long userid = SecurityUtils.getCurrentUserId();
+        for (Long id : ids) {
+            Order order = getById(id);
+            if (order == null) {
+                throw new BadRequestException("订单不存在!");
+            }
+            if (!order.getUserId().equals(userid)) {
+                throw new BadRequestException("不能删除他人订单");
+            }
+            if (!order.getPayState().equals(PayStateEnum.NOTPAY.getKey())) {
+                throw new BadRequestException("只能删除未支付订单");
+            }
+        }
         orderMapper.deleteBatchIds(ids);
     }
 

--
Gitblit v1.9.3