From 0e2114636d18ac1281118205ede060fdfbbf35e1 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Wed, 21 May 2025 10:38:41 +0800
Subject: [PATCH] fix(mall): 修复管理员禁用会员时未同步更新小程序登录状态

---
 src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
index ba81e08..f2e24b9 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
@@ -5,6 +5,7 @@
 import cc.mrbird.febs.common.enumerates.*;
 import cc.mrbird.febs.common.exception.FebsException;
 import cc.mrbird.febs.common.utils.AppContants;
+import cc.mrbird.febs.common.utils.LoginUserUtil;
 import cc.mrbird.febs.common.utils.MallUtils;
 import cc.mrbird.febs.common.utils.RedisUtils;
 import cc.mrbird.febs.mall.dto.*;
@@ -96,6 +97,17 @@
         }
         mallMember.setAccountStatus(MallMember.ACCOUNT_STATUS_DISABLED);
         mallMemberMapper.updateById(mallMember);
+
+        String redisKey = AppContants.XCX_LOGIN_PREFIX + id;
+        String existToken = redisUtils.getString(redisKey);
+        if (StrUtil.isNotBlank(existToken)) {
+            Object o = redisUtils.get(existToken);
+            if (ObjectUtil.isNotEmpty(o)) {
+                redisUtils.del(existToken);
+            }
+        }
+        redisUtils.del(AppContants.XCX_LOGIN_PREFIX + id);
+        redisUtils.del(AppContants.XCX_LOGIN_PHONE_PREFIX + id);
         return new FebsResponse().success();
     }
 

--
Gitblit v1.9.1