From 38d547d91d7eee81ed56ca6ceba7fd393952a082 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Mon, 12 May 2025 16:12:15 +0800
Subject: [PATCH] feat(sign): 增加签到获得会员经验或积分的功能 - 在 ApiSignVo 中添加 mostSignIn 字段,用于区分签到获得的类型 - 在 ScoreFlowTypeEnum 中新增 SIGN_EXPERIENCE 和 SIGN_SCORE 类型 - 修改 ScoreServiceImpl 中的签到逻辑,支持获得会员经验和积分 - 更新 ScoreSettingDto,添加 mostSignIn 字段用于配置签到获得类型 - 在前端设置页面添加签到获得类型的选项

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java |   16 ++++++++++------
 1 files changed, 10 insertions(+), 6 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 1a3f1b3..d661368 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
@@ -678,6 +678,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 +1345,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("当前检测记录无法绑定!");
         }
 
@@ -1478,7 +1482,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