From 83396a38be3c69c81f8acc4681c18f5dd0e698be Mon Sep 17 00:00:00 2001 From: xin <1099200748@qq.com> Date: Tue, 08 Jul 2025 21:17:41 +0800 Subject: [PATCH] 完善提交订单逻辑 --- oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderServiceImpl.java | 41 +++++++++++++++++++++++++++++++++++++++++ 1 files changed, 41 insertions(+), 0 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 82885bb..c185dc3 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 @@ -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); } -- Gitblit v1.9.3