From 93dd377310eeec4389c6a0f786dd498bdb28cffc Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Thu, 27 Jul 2023 16:19:29 +0800
Subject: [PATCH] 赠送积分更新状态
---
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java | 91 ++++++++++++++++++++++++++++-----------------
1 files changed, 57 insertions(+), 34 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 22df22c..a535b8c5 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
@@ -20,6 +20,7 @@
import cc.mrbird.febs.mall.vo.*;
import cc.mrbird.febs.pay.model.BrandWCPayRequestData;
import cc.mrbird.febs.pay.service.IXcxPayService;
+import cc.mrbird.febs.rabbit.producter.AgentProducer;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.IdUtil;
@@ -69,6 +70,7 @@
private final SpringContextHolder springContextHolder;
private final MallAgentRecordMapper mallAgentRecordMapper;
private final IMallMoneyFlowService mallMoneyFlowService;
+ private final AgentProducer agentProducer;
@Value("${spring.profiles.active}")
@@ -237,7 +239,7 @@
MallMember mallMember = this.baseMapper.selectById(id);
MallMemberVo mallMemberVo = MallMemberConversion.INSTANCE.entityToVo(mallMember);
- if(StrUtil.isNotEmpty(mallMember.getReferrerId())){
+ if(!"".equals(mallMember.getReferrerId()) && ObjectUtil.isNotEmpty(mallMember.getReferrerId())){
MallMember referMember = this.baseMapper.selectInfoByInviteId(mallMember.getReferrerId());
if (referMember != null) {
mallMemberVo.setReferrerName(referMember.getName());
@@ -271,19 +273,24 @@
DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectDicDataByTypeAndCode("AGENT_LEVEL_APPLY", mallAgentRecordAgree.getAgentLevel());
mallMemberVo.setAgentLevelName(dataDictionaryCustom.getDescription());
}
- if(mallAgentRecordAgree.getAgentLevel().equals("LEVEL_ONE")){
+ if(AgentLevelEnum.LEVEL_ONE.name().equals(mallAgentRecordAgree.getAgentLevel())){
mallMemberVo.setAgentLevel(1);
}
- if(mallAgentRecordAgree.getAgentLevel().equals("LEVEL_TWO")){
+ if(AgentLevelEnum.LEVEL_TWO.name().equals(mallAgentRecordAgree.getAgentLevel())){
mallMemberVo.setAgentLevel(2);
}
- if(mallAgentRecordAgree.getAgentLevel().equals("LEVEL_THREE")){
+ if(AgentLevelEnum.LEVEL_THREE.name().equals(mallAgentRecordAgree.getAgentLevel())){
mallMemberVo.setAgentLevel(3);
}
}else if(ObjectUtil.isNotEmpty(mallAgentRecordDisagree)){
mallMemberVo.setIsAgent(3);
}
-
+// log.info(mallMemberVo.getName()+"---"+mallMemberVo.getAgentLevel());
+ DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.SCORE_CHANGE.getType(),
+ DataDictionaryEnum.SCORE_CHANGE.getCode()
+ );
+ mallMemberVo.setScoreChange(dataDictionaryCustom.getValue() == null ? "1" : dataDictionaryCustom.getValue());
return new FebsResponse().success().data(mallMemberVo);
}
@@ -592,34 +599,12 @@
}
String openId = json.getString("openid");
- String sessionKey = json.getString("session_key");
- log.info("openId={},sessionKey={}", openId, sessionKey);
+ String accessToken = json.getString("access_token");
+ log.info("openId={}", openId);
// 查询用户是否存在
- MallMember mallMember = null;
- synchronized (this) {
- mallMember = this.baseMapper.selectMemberByOpenId(openId);
- if (ObjectUtil.isEmpty(mallMember)) {
- // 新增用户
- mallMember = new MallMember();
- mallMember.setAccountStatus(MallMember.ACCOUNT_STATUS_ENABLE);
- mallMember.setAccountType(MallMember.ACCOUNT_TYPE_NORMAL);
- mallMember.setLevel(AgentLevelEnum.ZERO_LEVEL.name());
- mallMember.setOpenId(openId);
- mallMember.setSessionKey(sessionKey);
- this.baseMapper.insert(mallMember);
-
- mallMember = this.baseMapper.selectMemberByOpenId(openId);
- String inviteId = ShareCodeUtil.toSerialCode(mallMember.getId());
- mallMember.setInviteId(inviteId);
- this.baseMapper.updateById(mallMember);
- MallMemberWallet wallet = new MallMemberWallet();
- wallet.setBalance(BigDecimal.ZERO);
- wallet.setMemberId(mallMember.getId());
- mallMemberWalletMapper.insert(wallet);
- } else {
- mallMember.setSessionKey(sessionKey);
- this.baseMapper.updateById(mallMember);
- }
+ MallMember mallMember = this.baseMapper.selectMemberByOpenId(openId);
+ if (ObjectUtil.isEmpty(mallMember)) {
+ return febsResponse.fail().message("请先关注公众号");
}
// 存放redis
String redisKey = AppContants.XCX_LOGIN_PREFIX + mallMember.getId();
@@ -638,6 +623,9 @@
authInfo.put("appid", xcxProperties.getXcxAppid());
authInfo.put("member", mallMember);
authInfo.put("rasToken", generateAsaToken(token));
+ authInfo.put("accessToken",accessToken);
+ authInfo.put("openId",openId);
+ agentProducer.sendMemberInfoMsg(accessToken+"|"+openId);
febsResponse.success().data(authInfo);
} else {
return febsResponse.fail().message("自动登录失败");
@@ -799,9 +787,9 @@
@Override
public void updateMemberAgent(Long memberId,String levelCode) {
mallAgentRecordMapper.updateStateByMemberId(memberId);
-
+ MallAgentRecord mallAgentRecord = mallAgentRecordMapper.selectById(memberId);
//更新用户表中的LEVEL
- MallMember mallMember = this.baseMapper.selectById(memberId);
+ MallMember mallMember = this.baseMapper.selectById(mallAgentRecord.getMemberId());
mallMember.setLevel(levelCode);
this.baseMapper.updateById(mallMember);
}
@@ -845,6 +833,41 @@
return new FebsResponse().success().data(apiMallAgentRecordVo);
}
+ @Override
+ public FebsResponse findMallRollPerkInPage(ApiMallRollPerkDto queryDto) {
+ Long memberId = LoginUserUtil.getLoginUser().getId();
+ Page<MallRollPerk> page = new Page<>(queryDto.getPageNow(), queryDto.getPageSize());
+ MallRollPerk mallRollPerk = new MallRollPerk();
+ if(ObjectUtil.isNotEmpty(queryDto.getState())){
+ mallRollPerk.setState(queryDto.getState());
+ }
+ mallRollPerk.setRollId(queryDto.getRollId());
+ mallRollPerk.setMemberId(memberId);
+ IPage<MallRollPerk> mallGoodsCommentVoIPage = this.baseMapper.findMallRollPerkInPage(page,mallRollPerk);
+ return new FebsResponse().success().data(mallGoodsCommentVoIPage);
+ }
+
+ @Override
+ public FebsResponse findMallMemberClassInPage(ApiMemberClassDto queryDto) {
+ Long memberId = LoginUserUtil.getLoginUser().getId();
+ MallMemberClass mallMemberClass = new MallMemberClass();
+ Page<MallMemberClass> page = new Page<>(queryDto.getPageNow(), queryDto.getPageSize());
+ mallMemberClass.setMemberId(memberId);
+ IPage<MallMemberClass> mallMemberClassList = this.baseMapper.findMallMemberClassInPage(page,mallMemberClass);
+ return new FebsResponse().success().data(mallMemberClassList);
+ }
+
+ @Override
+ public FebsResponse findMallMemberHouseInPage(ApiMemberHouseDto queryDto) {
+ Long memberId = LoginUserUtil.getLoginUser().getId();
+ MallMemberHouse mallMemberHouse = new MallMemberHouse();
+ Page<MallMemberHouse> page = new Page<>(queryDto.getPageNow(), queryDto.getPageSize());
+ mallMemberHouse.setMemberId(memberId);
+ mallMemberHouse.setState(queryDto.getState());
+ IPage<MallMemberHouse> mallMemberHouseList = this.baseMapper.findMallMemberHouseInPage(page,mallMemberHouse);
+ return new FebsResponse().success().data(mallMemberHouseList);
+ }
+
private String getXcxLoginUrl(String code) {
String wechatLoginUrl =xcxProperties.getWecharLoginUrl();
return String.format(wechatLoginUrl, xcxProperties.getXcxAppid(), xcxProperties.getXcxSecret(), code);
--
Gitblit v1.9.1