From b1e8fbbda55251f4d30ee05c49ffc6271f05c113 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期三, 15 一月 2025 14:32:05 +0800
Subject: [PATCH] 修改
---
ruoyi-service/ruoyi-account/src/test/java/com/ruoyi/order/account/RuoYiAccountApplicationTests.java | 55 +++++++++++++++++++++++++++
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java | 42 ++++++++++++++++----
2 files changed, 87 insertions(+), 10 deletions(-)
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java
index d7472d4..51a5b88 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java
@@ -330,13 +330,18 @@
user.setShopName(shop.getName());
}
}
- Long count1 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 1).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count();
- Long count2 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 2).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count();
- Long count3 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 3).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count();
- Long count4 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 4).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count();
- Long count5 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 5).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count();
- Long count6 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 6).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count();
- Long count7 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 7).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count();
+ List<AppUser> appUserList = appUserService.list(new LambdaQueryWrapper<AppUser>()
+ .ne(AppUser::getStatus, 3));
+ ArrayList<Long> userIds = new ArrayList<>();
+ userIds.add(userId);
+ getUserAncestorList(userIds, appUserList);
+// Long count1 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 1).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count();
+// Long count2 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 2).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count();
+// Long count3 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 3).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count();
+// Long count4 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 4).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count();
+// Long count5 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 5).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count();
+// Long count6 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 6).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count();
+// Long count7 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 7).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count();
user.setCount1(count1);
user.setCount2(count2);
user.setCount3(count3);
@@ -352,8 +357,27 @@
user.setIsSign(0);
}
return R.ok(user);
-
-
+ }
+ 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) {
+ 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();
+ List<Long> userIdList = children.stream().map(AppUser::getId).collect(Collectors.toList());
+ getUserAncestorList(userIdList, children);
+ }
}
@GetMapping("/index/change")
diff --git a/ruoyi-service/ruoyi-account/src/test/java/com/ruoyi/order/account/RuoYiAccountApplicationTests.java b/ruoyi-service/ruoyi-account/src/test/java/com/ruoyi/order/account/RuoYiAccountApplicationTests.java
index 5d28046..acaa797 100644
--- a/ruoyi-service/ruoyi-account/src/test/java/com/ruoyi/order/account/RuoYiAccountApplicationTests.java
+++ b/ruoyi-service/ruoyi-account/src/test/java/com/ruoyi/order/account/RuoYiAccountApplicationTests.java
@@ -1,8 +1,61 @@
-package com.ruoyi.account;
+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));
+ 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);
+ }
+
+ 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) {
+ 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();
+ List<Long> userIdList = children.stream().map(AppUser::getId).collect(Collectors.toList());
+ getUserAncestorList(userIdList, children);
+ }
+ }
+
+
}
--
Gitblit v1.7.1