package com.ruoyi.order.account;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.ruoyi.account.RuoYiAccountApplication;
|
import com.ruoyi.account.api.model.AppUser;
|
import com.ruoyi.account.service.AppUserService;
|
import org.junit.jupiter.api.Test;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.boot.test.context.SpringBootTest;
|
import org.springframework.util.CollectionUtils;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
import java.util.stream.Collectors;
|
|
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT, classes = RuoYiAccountApplication.class)
|
public class RuoYiAccountApplicationTests {
|
|
@Autowired
|
private AppUserService appUserService;
|
|
@Test
|
public void contextLoads() {
|
List<AppUser> appUserList = appUserService.list(new LambdaQueryWrapper<AppUser>()
|
.ne(AppUser::getStatus, 3)
|
.eq(AppUser::getDelFlag, 0));
|
AppUser user = appUserService.getById(1879046499735789569L);
|
ArrayList<Long> userIds = new ArrayList<>();
|
userIds.add(1879046499735789569L);
|
getUserAncestorList(user,userIds, appUserList);
|
System.err.println(user.getCount1());
|
System.err.println(user.getCount2());
|
System.err.println(user.getCount3());
|
System.err.println(user.getCount4());
|
System.err.println(user.getCount5());
|
System.err.println(user.getCount6());
|
System.err.println(user.getCount7());
|
}
|
public void getUserAncestorList(AppUser user,List<Long> userIds, List<AppUser> list) {
|
List<AppUser> children = list.stream().filter(u -> userIds.contains(u.getInviteUserId()) || userIds.contains(u.getTopInviteId())).collect(Collectors.toList());
|
if(!CollectionUtils.isEmpty(children)){
|
user.setCount1((user.getCount1() == null ? 0L : user.getCount1()) + children.stream().filter(e->e.getVipId() == 1).count());
|
user.setCount2((user.getCount2() == null ? 0L : user.getCount2()) + children.stream().filter(e->e.getVipId() == 2).count());
|
user.setCount3((user.getCount3() == null ? 0L : user.getCount3()) + children.stream().filter(e->e.getVipId() == 3).count());
|
user.setCount4((user.getCount4() == null ? 0L : user.getCount4()) + children.stream().filter(e->e.getVipId() == 4).count());
|
user.setCount5((user.getCount5() == null ? 0L : user.getCount5()) + children.stream().filter(e->e.getVipId() == 5).count());
|
user.setCount6((user.getCount6() == null ? 0L : user.getCount6()) + children.stream().filter(e->e.getVipId() == 6).count());
|
user.setCount7((user.getCount7() == null ? 0L : user.getCount7()) + children.stream().filter(e->e.getVipId() == 7).count());
|
List<Long> userIdList = children.stream().map(AppUser::getId).collect(Collectors.toList());
|
getUserAncestorList(user,userIdList, children);
|
}
|
}
|
|
|
}
|