luodangjia
2025-01-15 257d66798aa538f8737980f13d94c547bf0b51ea
ruoyi-service/ruoyi-account/src/test/java/com/ruoyi/order/account/RuoYiAccountApplicationTests.java
@@ -22,38 +22,32 @@
    @Test
    public void contextLoads() {
        List<AppUser> appUserList = appUserService.list(new LambdaQueryWrapper<AppUser>()
                .ne(AppUser::getStatus, 3));
                .ne(AppUser::getStatus, 3)
                .eq(AppUser::getDelFlag, 0));
        AppUser user = appUserService.getById(1879046499735789569L);
        ArrayList<Long> userIds = new ArrayList<>();
        userIds.add(1879046499735789569L);
        getUserAncestorList(userIds, appUserList);
        System.err.println(count1);
        System.err.println(count2);
        System.err.println(count3);
        System.err.println(count4);
        System.err.println(count5);
        System.err.println(count6);
        System.err.println(count7);
        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());
    }
    private Long count1 = 0L;
    private Long count2 = 0L;
    private Long count3 = 0L;
    private Long count4 = 0L;
    private Long count5 = 0L;
    private Long count6 = 0L;
    private Long count7 = 0L;
    public void getUserAncestorList(List<Long> userIds, List<AppUser> list) {
    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)){
            count1 = count1 + children.stream().filter(e->e.getVipId() == 1).count();
            count2 = count2 + children.stream().filter(e->e.getVipId() == 2).count();
            count3 = count3 + children.stream().filter(e->e.getVipId() == 3).count();
            count4 = count4 + children.stream().filter(e->e.getVipId() == 4).count();
            count5 = count5 + children.stream().filter(e->e.getVipId() == 5).count();
            count6 = count6 + children.stream().filter(e->e.getVipId() == 6).count();
            count7 = count7 + children.stream().filter(e->e.getVipId() == 7).count();
            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(userIdList, children);
            getUserAncestorList(user,userIdList, children);
        }
    }