From 220b6da85c960a28e205264154b5aefe01cc1624 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Tue, 24 Mar 2026 21:45:17 +0800
Subject: [PATCH] refactor(common): 移除HTTP消息转换器配置类
---
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java | 81 +++++++++++++++++++++++++++++++++++-----
1 files changed, 70 insertions(+), 11 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 1805188..905bc42 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
@@ -34,8 +34,10 @@
import cc.mrbird.febs.vip.entity.MallVipConfig;
import cc.mrbird.febs.vip.mapper.MallVipConfigMapper;
import cc.mrbird.febs.yinhe.entity.YHAiCompany;
+import cc.mrbird.febs.yinhe.entity.YHSysCompanyLevel;
import cc.mrbird.febs.yinhe.entity.YhAiMember;
import cc.mrbird.febs.yinhe.mapper.YHAiCompanyMapper;
+import cc.mrbird.febs.yinhe.mapper.YHSysCompanyLevelMapper;
import cc.mrbird.febs.yinhe.mapper.YhAiMemberMapper;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
@@ -702,16 +704,23 @@
private final XcxProperties xcxProperties = SpringContextHolder.getBean(XcxProperties.class);
private final YhAiMemberMapper yhAiMemberMapper;
private final YHAiCompanyMapper yhAiCompanyMapper;
+ private final YHSysCompanyLevelMapper yhSysCompanyLevelMapper;
@Override
- public FebsResponse xcxLogin(ApiXcxLoginDto apiXcxLoginDto) throws IOException {
+ @Transactional
+ 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);
@@ -738,14 +747,35 @@
entity.setSessionKey(sessionKey);
entity.setMemberUuid(UUID.getSimpleUUIDString());
+
+ log.info("公司编码={}", apiXcxLoginDto.getCompanyId());
if (StrUtil.isNotEmpty(apiXcxLoginDto.getCompanyId())){
YHAiCompany aiCompany = yhAiCompanyMapper.selectOne(
Wrappers.lambdaQuery(YHAiCompany.class)
.eq(YHAiCompany::getCode, apiXcxLoginDto.getCompanyId())
);
- if (ObjectUtil.isNotEmpty(aiCompany)){
- entity.setCompanyId(aiCompany.getId());
+ if (ObjectUtil.isEmpty(aiCompany)){
+ throw new FebsException("公司编码错误");
}
+ String levelCode = aiCompany.getLevelCode();
+ YHSysCompanyLevel yhSysCompanyLevel = yhSysCompanyLevelMapper.selectOne(
+ Wrappers.lambdaQuery(YHSysCompanyLevel.class)
+ .eq(YHSysCompanyLevel::getCode, levelCode)
+ );
+ Integer memberNum = yhSysCompanyLevel.getMemberNum();
+ List<YhAiMember> yhAiMembers = yhAiMemberMapper.selectList(
+ Wrappers.lambdaQuery(YhAiMember.class)
+ .eq(YhAiMember::getCompanyId, aiCompany.getId())
+ .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("公司会员已满");
+ }
+ entity.setCompanyId(aiCompany.getId());
}
entity.setCreateTime(systemTime);
entity.setUpdateTime(systemTime);
@@ -760,7 +790,7 @@
entity.setInviteId(inviteId);
yhAiMemberMapper.updateById(entity);
} else {
- if ("1".equals(entity.getAccountStatus())) {
+ if (entity.getAccountStatus() == 1) {
throw new FebsException("账号已停用");
}
entity.setSessionKey(sessionKey);
@@ -777,14 +807,17 @@
redisUtils.del(existToken);
}
}
+ YhAiMember yhAiMember = yhAiMemberMapper.selectById(entity.getId());
String token = IdUtil.simpleUUID();
- redisUtils.set(token, JSONObject.toJSONString(entity), -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());
- authInfo.put("member", entity);
- authInfo.put("rasToken", generateAsaToken(token));
+ authInfo.put("member", yhAiMember);
+ String rasToken = generateAsaToken(token);
+ authInfo.put("rasToken", rasToken);
+ log.info("登录成功rasToken={}", rasToken);
febsResponse.success().data(authInfo);
} else {
return febsResponse.fail().message("自动登录失败");
@@ -797,7 +830,7 @@
public FebsResponse xcxSaveInfo(ApiXcxSaveInfoDto apiXcxSaveInfoDto) {
log.info("name={},phone={},avatar={},sex={}",
apiXcxSaveInfoDto.getNickName(),apiXcxSaveInfoDto.getPhone(),apiXcxSaveInfoDto.getAvatarUrl(),apiXcxSaveInfoDto.getGender());
- String memberId = LoginUserUtil.getLoginUser().getMemberUuid();
+ String memberId = YHLoginUserUtil.getLoginUser().getMemberUuid();
YhAiMember entity = yhAiMemberMapper.selectOne(
Wrappers.lambdaQuery(YhAiMember.class)
.eq(YhAiMember::getMemberUuid, memberId)
@@ -837,10 +870,29 @@
throw new FebsException("公司编码不存在");
}
if (ObjectUtil.isNotEmpty(aiCompany)){
+ String levelCode = aiCompany.getLevelCode();
+ YHSysCompanyLevel yhSysCompanyLevel = yhSysCompanyLevelMapper.selectOne(
+ Wrappers.lambdaQuery(YHSysCompanyLevel.class)
+ .eq(YHSysCompanyLevel::getCode, levelCode)
+ );
+ Integer memberNum = yhSysCompanyLevel.getMemberNum();
+ List<YhAiMember> yhAiMembers = yhAiMemberMapper.selectList(
+ Wrappers.lambdaQuery(YhAiMember.class)
+ .eq(YhAiMember::getCompanyId, aiCompany.getId())
+ .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("公司会员已满");
+ }
+
companyId = aiCompany.getId();
}
+ entity.setCompanyId(companyId);
}
- entity.setCompanyId(companyId);
yhAiMemberMapper.updateById(entity);
return new FebsResponse().success();
@@ -2076,6 +2128,13 @@
return new FebsResponse().success().message("操作成功");
}
+ @Override
+ public FebsResponse getCompanyCode() {
+
+ String companyCode = yhAiCompanyMapper.selectDictLabel("xcx_register_default","default");
+ return new FebsResponse().success().data(companyCode);
+ }
+
// public static void main(String[] args) {
// Long userld = 16425L;
// String shopAccount = "爱和美医疗";
--
Gitblit v1.9.1