KKSU
2025-01-15 d724c10b82cf44d64af07495ec8dc901a7104055
fix(mall): 优化用户绑定逻辑

- 在绑定用户之前,先检查数据库中是否已存在相同的 memberId 和 bindId 组合
- 如果已存在,则不进行插入操作,避免重复绑定
- 使用 LambdaQueryWrapper 进行查询,提高代码可读性
1 files modified
32 ■■■■■ changed files
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java 32 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
@@ -1244,21 +1244,27 @@
            return new FebsResponse().fail().message(message);
        }
        Long bindId = JSONUtil.parseObj(result).getJSONObject("data").getLong("userId");
        List<MallStoreMember> mallStoreMembers1 = mallStoreMemberMapper.selectList(
                new LambdaQueryWrapper<MallStoreMember>()
                        .eq(MallStoreMember::getMemberId, memberId)
                        .eq(MallStoreMember::getBindId, bindId)
        );
        if(CollUtil.isEmpty(mallStoreMembers1)){
            MallStoreMember mallStoreMember = new MallStoreMember();
            mallStoreMember.setMemberId(memberId);
            mallStoreMember.setBindId(bindId);
            mallStoreMember.setStoreId(mallStoreItem.getStoreId());
            mallStoreMember.setStoreItemId(mallStoreItem.getId());
        MallStoreMember mallStoreMember = new MallStoreMember();
        mallStoreMember.setMemberId(memberId);
        mallStoreMember.setBindId(bindId);
        mallStoreMember.setStoreId(mallStoreItem.getStoreId());
        mallStoreMember.setStoreItemId(mallStoreItem.getId());
            mallStoreMember.setAccount(shopAccount);
            mallStoreMember.setPassword(shopPwd);
        mallStoreMember.setAccount(shopAccount);
        mallStoreMember.setPassword(shopPwd);
        mallStoreMember.setName(name);
        mallStoreMember.setAddress(address);
        mallStoreMember.setAge(age);
        mallStoreMember.setPhone(phoneNumber);
        mallStoreMemberMapper.insert(mallStoreMember);
            mallStoreMember.setName(name);
            mallStoreMember.setAddress(address);
            mallStoreMember.setAge(age);
            mallStoreMember.setPhone(phoneNumber);
            mallStoreMemberMapper.insert(mallStoreMember);
        }
        return new FebsResponse().success().message("绑定成功");
    }