From 771f92e73b681d427548d95e56d56d908893b444 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Tue, 24 Mar 2026 16:07:37 +0800
Subject: [PATCH] fix(mall): 修复公司会员数统计和优化登录令牌缓存策略
---
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java | 16 ++++++++++++----
1 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
index db77682..cfade23 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
@@ -708,14 +708,19 @@
@Override
@Transactional
- public FebsResponse xcxLogin(ApiXcxLoginDto apiXcxLoginDto) throws IOException {
+ public FebsResponse xcxLogin(ApiXcxLoginDto apiXcxLoginDto){
log.info("登录请求参数:{}", JSONObject.toJSONString(apiXcxLoginDto));
FebsResponse febsResponse = new FebsResponse();
String code = apiXcxLoginDto.getCode();
log.info("code:" + code);
if (StrUtil.isNotBlank(code)) {
String requrl = getXcxLoginUrl(code);
- String reslutData = HttpCurlUtil.sendGetHttp(requrl, null);
+ String reslutData = null;
+ try {
+ reslutData = HttpCurlUtil.sendGetHttp(requrl, null);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
net.sf.json.JSONObject json = net.sf.json.JSONObject.fromObject(reslutData);
log.info("微信登录获取到登录信息={}", json);
@@ -762,6 +767,9 @@
.isNull(YhAiMember::getRoleId)
);
Integer realNum = CollUtil.isEmpty(yhAiMembers) ? 0 : yhAiMembers.size();
+ log.info("公司会员数:{}", realNum);
+ log.info("公司会员数:{}", memberNum);
+ log.info("公司会员数:{}", realNum >= memberNum);
if (realNum >= memberNum){
throw new FebsException("公司会员已满");
}
@@ -799,8 +807,8 @@
}
YhAiMember yhAiMember = yhAiMemberMapper.selectById(entity.getId());
String token = IdUtil.simpleUUID();
- redisUtils.set(token, JSONObject.toJSONString(yhAiMember), -1);
- redisUtils.set(redisKey, token, -1);
+ redisUtils.set(token, JSONObject.toJSONString(yhAiMember), 60 * 60 * 24);
+ redisUtils.set(redisKey, token, 60 * 60 * 24);
Map<String, Object> authInfo = new HashMap<>();
authInfo.put("token", token);
authInfo.put("appid", xcxProperties.getXcxAppid());
--
Gitblit v1.9.1