Administrator
7 days ago ed5a6de6023e73e7f5b5af86a94aa4f1e43a3fc4
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());