From d6d06b62f76cb972bb220035401520e100cb1a35 Mon Sep 17 00:00:00 2001
From: xin <1099200748@qq.com>
Date: Tue, 19 Aug 2025 21:40:47 +0800
Subject: [PATCH] 取消订单校验优化
---
oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderServiceImpl.java | 17 +++++++++++++++--
oying-common/src/main/java/com/oying/utils/enums/OrderStatusEnum.java | 1 +
2 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/oying-common/src/main/java/com/oying/utils/enums/OrderStatusEnum.java b/oying-common/src/main/java/com/oying/utils/enums/OrderStatusEnum.java
index 114841b..0a37bb9 100644
--- a/oying-common/src/main/java/com/oying/utils/enums/OrderStatusEnum.java
+++ b/oying-common/src/main/java/com/oying/utils/enums/OrderStatusEnum.java
@@ -22,6 +22,7 @@
TWELVE(12, "REFUND", "退款申诉"),
THIRTEEN(13, "REFUND", "申请同意"),
FOURTEEN(14, "REFUND", "退款成功"),
+ FIFTEEN(15, "REFUND", "取消退款"),
UNKNOWN(99, "UNKNOWN", "未知枚举");
private final Integer key;
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..27ef9c0 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
@@ -294,7 +294,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 +307,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 +335,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