New file |
| | |
| | | package cc.mrbird.febs; |
| | | |
| | | import cc.mrbird.febs.mall.entity.MallMember; |
| | | import cc.mrbird.febs.mall.mapper.MallMemberMapper; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.util.StrUtil; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.junit.jupiter.api.Test; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.boot.test.context.SpringBootTest; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author wzy |
| | | * @date 2023-06-03 |
| | | **/ |
| | | @Slf4j |
| | | @SpringBootTest |
| | | public class MemberTest { |
| | | |
| | | @Autowired |
| | | private MallMemberMapper mallMemberMapper; |
| | | |
| | | @Test |
| | | public void refererIds() { |
| | | MallMember member = mallMemberMapper.selectById(1L); |
| | | |
| | | updateRefererIds(member); |
| | | } |
| | | |
| | | private void updateRefererIds(MallMember member) { |
| | | List<MallMember> mallMembers = mallMemberMapper.selectByRefererId(member.getInviteId()); |
| | | if (CollUtil.isEmpty(mallMembers)) { |
| | | return; |
| | | } |
| | | |
| | | mallMembers.forEach(item -> { |
| | | MallMember updateMember = new MallMember(); |
| | | updateMember.setId(item.getId()); |
| | | String s = refererIds(item.getReferrerId()); |
| | | updateMember.setReferrerIds(s); |
| | | mallMemberMapper.updateById(updateMember); |
| | | |
| | | updateRefererIds(item); |
| | | }); |
| | | } |
| | | |
| | | private String refererIds(String parentId) { |
| | | boolean flag = false; |
| | | if (StrUtil.isBlank(parentId)) { |
| | | flag = true; |
| | | } |
| | | String ids = ""; |
| | | while (!flag) { |
| | | if (StrUtil.isBlank(ids)) { |
| | | ids += parentId; |
| | | } else { |
| | | ids += ("," + parentId); |
| | | } |
| | | MallMember parentMember = this.mallMemberMapper.selectInfoByInviteId(parentId); |
| | | if (parentMember == null) { |
| | | break; |
| | | } |
| | | parentId = parentMember.getReferrerId(); |
| | | if (StrUtil.isBlank(parentMember.getReferrerId())) { |
| | | flag = true; |
| | | } |
| | | } |
| | | |
| | | return ids; |
| | | } |
| | | } |