From 02d6a517f7d4dac2d5271cefe421a628d838414b Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Sat, 20 Sep 2025 03:35:55 +0800
Subject: [PATCH] 1

---
 ruoyi-admin/src/main/java/com/ruoyi/im/service/impl/MedicalInsuranceAccountServiceImpl.java |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/im/service/impl/MedicalInsuranceAccountServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/im/service/impl/MedicalInsuranceAccountServiceImpl.java
index 575ec0e..0ca172b 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/im/service/impl/MedicalInsuranceAccountServiceImpl.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/im/service/impl/MedicalInsuranceAccountServiceImpl.java
@@ -11,6 +11,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
 import javax.xml.crypto.Data;
 import java.math.BigDecimal;
@@ -50,7 +51,7 @@
                 }
 
                 // 检查账户状态
-                if (!"ACTIVE".equals(account.getAccountStatus())) {
+                if (!"ACTIVE".equals(account.getAccountStatus().name())) {
                     return Result.error("保单已失效");
                 }
 
@@ -108,6 +109,7 @@
                 return Result.success("领取成功");
             }catch (Exception e){
                 e.printStackTrace();
+                TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                 log.error("领取保险金出错:"+e.getMessage());
             }finally {
                 accountLock.unlock();
@@ -126,7 +128,7 @@
             return Result.success(false);
         }
         // 检查账户状态
-        if (!"ACTIVE".equals(account.getAccountStatus())) {
+        if (!"ACTIVE".equals(account.getAccountStatus().name())) {
             return Result.success(false);
         }
         // 检查账户有效期

--
Gitblit v1.9.3