From d091184bf84d0cde2dd121ec8d8e878bc293fda5 Mon Sep 17 00:00:00 2001 From: SongZhang <2064194730@qq.com> Date: Wed, 16 Oct 2024 17:41:37 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=AF=E4=BB=98=E4=BA=8B=E5=8A=A1=E6=89=8B?= =?UTF-8?q?=E5=8A=A8=E6=8F=90=E4=BA=A4=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/cashierservice/service/PayService.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java index 7c07b35..a6d4007 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java @@ -1023,12 +1023,16 @@ public class PayService { orderInfo.setPayOrderNo("cash".concat(SnowFlakeUtil.generateOrderNo())); tbOrderInfoMapper.updateByPrimaryKeySelective(orderInfo); - // 提交当前事务 - transactionTemplate.execute((TransactionCallback) status -> { - status.flush(); // 提交 + // 创建一个新的事务定义 + DefaultTransactionDefinition def = new DefaultTransactionDefinition(); + TransactionStatus status = transactionManager.getTransaction(def); + try { + // 提交当前事务 transactionManager.commit(status); - return null; - }); + } catch (Exception e) { + transactionManager.rollback(status); // 回滚 + throw e; // 重新抛出异常 + } log.info("已经手动提交事务"); ThreadUtil.sleep(10, TimeUnit.SECONDS);