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 |   30 ++++++++++++++++++++++--------
 1 files changed, 22 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 3628f67..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);
                 }
@@ -1348,15 +1363,14 @@
         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){
-            log.info("开始绑定医生{}",mallStoreMember.getMemberId());
-            throw new FebsException("检测记录无法绑定!");
         }
 
         // 根据邀请ID查询会员信息
@@ -1480,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