From 7b55e2cd82647b87d79a778ed70fdbddb39ac00a Mon Sep 17 00:00:00 2001
From: luodangjia <luodangjia>
Date: 星期二, 24 九月 2024 13:44:26 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/SysUserFallbackFactory.java |   27 +++++++++++++++++++++------
 1 files changed, 21 insertions(+), 6 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/SysUserFallbackFactory.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/SysUserFallbackFactory.java
index 49df453..377c0da 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/SysUserFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/SysUserFallbackFactory.java
@@ -5,6 +5,8 @@
 import com.ruoyi.system.api.domain.SysUser;
 import com.ruoyi.system.api.feignClient.SysUserClient;
 import com.ruoyi.system.api.model.*;
+import io.seata.core.exception.TransactionException;
+import io.seata.tm.api.GlobalTransactionContext;
 import org.springframework.cloud.openfeign.FallbackFactory;
 import org.springframework.stereotype.Component;
 
@@ -27,6 +29,12 @@
 
             @Override
             public R<Boolean> updateSysUser(SysUser sysUser) {
+                // 手动进行全局事务回滚
+                try {
+                    GlobalTransactionContext.getCurrent().rollback();
+                } catch (TransactionException e) {
+                    throw new RuntimeException(e);
+                }
                 return R.fail("更新用户失败:" + cause.getMessage());
             }
 
@@ -86,23 +94,30 @@
             }
 
             @Override
-            public R<SysUser> queryUserByAccount(String account) {
-                return null;
-            }
-
-            @Override
             public R<SysUser> queryUserByUserName(String userName) {
                 return R.fail("通过账号查询用户失败:" + cause.getMessage());
             }
     
             @Override
             public R addSysUser(SysUser user) {
+                // 手动进行全局事务回滚
+                try {
+                    GlobalTransactionContext.getCurrent().rollback();
+                } catch (TransactionException e) {
+                    throw new RuntimeException(e);
+                }
                 return R.fail("添加用户失败:" + cause.getMessage());
             }
 
             @Override
             public R resetPassword(SysUser user) {
-                return null;
+                // 手动进行全局事务回滚
+                try {
+                    GlobalTransactionContext.getCurrent().rollback();
+                } catch (TransactionException e) {
+                    throw new RuntimeException(e);
+                }
+                return R.fail("重置用户密码失败:" + cause.getMessage());
             }
         };
     }

--
Gitblit v1.7.1