xin
2025-07-08 83396a38be3c69c81f8acc4681c18f5dd0e698be
oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderServiceImpl.java
@@ -196,6 +196,47 @@
    @Override
    @Transactional(rollbackFor = Exception.class)
    public Order getByOrderNum(String orderNum) {
        return orderMapper.getByOrderNum(orderNum);
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void paySuccess(Order order) {
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void updatePayStatus(String orderNum, PayStateEnum payState, String payMessage, String payTime) {
        orderMapper.updatePayStatus(orderNum, payState.getKey(), payMessage, payTime);
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void closeOrder(String orderNum) {
        Order order = getByOrderNum(orderNum);
        if (order == null) {
            throw new BadRequestException("订单不存在");
        }
        PayTypeEnum anEnum = PayTypeEnum.find(order.getPayType());
        switch (anEnum) {
            case HWC:
            case HWC2:
                JSONObject object = swiftPassService.query(orderNum, anEnum);
                if (object.getString("trade_state").equals(PayStateEnum.SUCCESS.getKey())) {
                    throw new BadRequestException("订单已支付");
                }
                if (object.getString("trade_state").equals(PayStateEnum.CLOSED.getKey())) {
                    throw new BadRequestException("订单已关闭");
                }
                swiftPassService.closeOrder(orderNum, anEnum);
                break;
        }
        orderMapper.updateCloseStatus(orderNum, PayStateEnum.CLOSED.getKey());
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void create(Order resources) {
        orderMapper.insert(resources);
    }