From 21fee5d76f3af3da1c379599ed3f68c534b869e6 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Tue, 13 May 2025 14:42:04 +0800
Subject: [PATCH] feat(mall): 新增我的推广相关功能
---
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java | 33 +++++++++++++++++++++++++--------
1 files changed, 25 insertions(+), 8 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 a718f66..f37ac73 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
@@ -89,6 +89,7 @@
private final MallStoreItemMapper mallStoreItemMapper;
private final MallStoreMemberMapper mallStoreMemberMapper;
private final MallDoctorMapper mallDoctorMapper;
+ private final HappyMemberLevelMapper happyMemberLevelMapper;
@Value("${spring.profiles.active}")
@@ -264,7 +265,18 @@
Long id = LoginUserUtil.getLoginUser().getId();
MallMember mallMember = this.baseMapper.selectById(id);
+
+
MallMemberVo mallMemberVo = MallMemberConversion.INSTANCE.entityToVo(mallMember);
+
+ HappyMemberLevel happyMemberLevel = happyMemberLevelMapper.selectOne(
+ new LambdaQueryWrapper<HappyMemberLevel>()
+ .select(HappyMemberLevel::getName)
+ .eq(HappyMemberLevel::getCode, mallMember.getDirector())
+ );
+ if(happyMemberLevel != null){
+ mallMemberVo.setLevelName(happyMemberLevel.getName());
+ }
if(StrUtil.isNotEmpty(mallMember.getReferrerId())){
MallMember referMember = this.baseMapper.selectInfoByInviteId(mallMember.getReferrerId());
if (referMember != null) {
@@ -302,7 +314,7 @@
mallMemberVo.setVipInfo(mallVipConfig);
mallMemberVo.setBalance(wallet.getBalance());
-// mallMemberVo.setScore(wallet.getScore());
+ mallMemberVo.setScore(wallet.getScore());
mallMemberVo.setPrizeScore(wallet.getPrizeScore());
// mallMemberVo.setTotalCost(mallOrderInfoMapper.selectTotalAmount(id));
return new FebsResponse().success().data(mallMemberVo);
@@ -678,6 +690,9 @@
wallet.setMemberId(mallMember.getId());
mallMemberWalletMapper.insert(wallet);
} else {
+ if (MallMember.ACCOUNT_STATUS_DISABLED.equals(mallMember.getAccountStatus())) {
+ throw new FebsException("账号已停用");
+ }
mallMember.setSessionKey(sessionKey);
this.baseMapper.updateById(mallMember);
}
@@ -1342,18 +1357,19 @@
// 获取当前登录用户的ID
Long memberId = LoginUserUtil.getLoginUser().getId();
+ log.info("开始绑定医生{}",memberId);
// 从DTO中提取邀请ID和门店会员ID
String inviteId = dto.getInviteId();
Long storeMemberId = dto.getStoreMemberId();
// 根据门店会员ID查询门店会员信息
- MallStoreMember mallStoreMember = mallStoreMemberMapper.selectById(storeMemberId);
+ MallStoreMember mallStoreMember = mallStoreMemberMapper.selectOne(
+ new LambdaQueryWrapper<MallStoreMember>()
+ .eq(MallStoreMember::getId,storeMemberId)
+ .eq(MallStoreMember::getMemberId,memberId)
+ );
// 如果门店会员信息为空,抛出异常
if(null == mallStoreMember){
- throw new FebsException("当前检测记录无法绑定!");
- }
- // 如果门店会员的会员ID与当前登录用户ID不匹配,抛出异常
- if(mallStoreMember.getMemberId() != memberId){
throw new FebsException("当前检测记录无法绑定!");
}
@@ -1458,7 +1474,8 @@
ApiDoctorListVo apiDoctorListVo = new ApiDoctorListVo();
apiDoctorListVo.setId(mallDoctor.getId());
apiDoctorListVo.setStoreMemberId(mallDoctor.getStoreMemberId());
- apiDoctorListVo.setName(mallDoctor.getBindName());
+ MallMember mallMember = this.baseMapper.selectById(mallDoctor.getMemberId());
+ apiDoctorListVo.setName(mallMember.getName());
apiDoctorListVo.setPhone(mallDoctor.getBindPhone());
apiDoctorListVo.setBindAge(mallDoctor.getBindAge());
apiDoctorListVo.setBindInfo(mallDoctor.getBindInfo());
@@ -1477,7 +1494,7 @@
Long memberId = LoginUserUtil.getLoginUser().getId();
MallDoctor mallDoctor = mallDoctorMapper.selectById(dto.getId());
- if(memberId != mallDoctor.getBindMemberId()){
+ if(!memberId.equals(mallDoctor.getBindMemberId())){
throw new FebsException("当前授权无法删除!");
}
mallDoctorMapper.deleteById(dto.getId());
--
Gitblit v1.9.1