From a40e559c58516efbdbca03b6d7ae57cc93b17b85 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Wed, 07 May 2025 18:17:57 +0800 Subject: [PATCH] feat(mall): 新增分销等级功能 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java | 29 ++++++++++++++++++++--------- 1 files changed, 20 insertions(+), 9 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 2dc58bc..3a4c4ab 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 @@ -1342,18 +1342,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("当前检测记录无法绑定!"); } @@ -1365,7 +1366,11 @@ } // 查询与当前门店会员ID关联的医生列表 - List<MallDoctor> mallDoctors = mallDoctorMapper.selectList(new LambdaQueryWrapper<MallDoctor>().eq(MallDoctor::getStoreMemberId, mallStoreMember.getId())); + List<MallDoctor> mallDoctors = mallDoctorMapper.selectList( + new LambdaQueryWrapper<MallDoctor>() + .eq(MallDoctor::getStoreMemberId, mallStoreMember.getId()) + .eq(MallDoctor::getMemberId, mallMember.getId()) + ); // 如果医生列表为空,创建新的医生对象并设置相关信息,然后插入数据库 if(CollUtil.isEmpty(mallDoctors)){ MallDoctor mallDoctor = new MallDoctor(); @@ -1374,8 +1379,13 @@ mallDoctor.setBindMemberId(mallStoreMember.getMemberId()); mallDoctor.setBindPhone(mallStoreMember.getPhone()); mallDoctor.setBindName(mallStoreMember.getName()); - mallDoctor.setBindInfo(mallStoreMember.getAccount()); mallDoctor.setBindAge(mallStoreMember.getAge()); + + Long storeId = mallStoreMember.getStoreId(); + Long storeItemId = mallStoreMember.getStoreItemId(); + MallStore mallStore = mallStoreMapper.selectById(storeId); + MallStoreItem mallStoreItem = mallStoreItemMapper.selectById(storeItemId); + mallDoctor.setBindInfo(mallStore.getName()+"-"+mallStoreItem.getCode()); mallDoctorMapper.insert(mallDoctor); } @@ -1449,7 +1459,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()); @@ -1468,7 +1479,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