xin
2025-08-19 d6d06b62f76cb972bb220035401520e100cb1a35
取消订单校验优化
2 files modified
18 ■■■■ changed files
oying-common/src/main/java/com/oying/utils/enums/OrderStatusEnum.java 1 ●●●● patch | view | raw | blame | history
oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderServiceImpl.java 17 ●●●● patch | view | raw | blame | history
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;
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);
    }