From b0b43e2ac0ba96117b10bf722793f050ea94b200 Mon Sep 17 00:00:00 2001
From: whywhyo <1511349576@qq.com>
Date: 星期二, 16 五月 2023 18:00:54 +0800
Subject: [PATCH] 11

---
 zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java |   47 +++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 41 insertions(+), 6 deletions(-)

diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java
index ca62533..21fcf92 100644
--- a/zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java
+++ b/zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java
@@ -296,14 +296,15 @@
      * @return
      */
     @Override
-    public AjaxResult listWithTree() {
+    public AjaxResult listWithTree(Integer depth) {
 
         List<ZInfoUser> allPeopleList = list();
         List<ZInfoUser> result = null;
         try {
             result = allPeopleList.stream().filter(people -> people.getUserId()!=1&&(people.getFatherId() == 0||people.getMomId()==0))
                     .map(people -> {
-                        people.setChildList(fillChildren(people, allPeopleList));
+                        if(depth>1)
+                            people.setChildList(fillChildren(people, allPeopleList, depth-1));
                         return people;
                     }).collect(Collectors.toList());
         } catch (NullPointerException e) {
@@ -341,21 +342,55 @@
 
     }
 
+    @Override
+    public AjaxResult listMySelfAndSpouse(Long id) {
+        LambdaQueryWrapper<ZInfoUser> lqw1 = new LambdaQueryWrapper<>();
+        lqw1.eq(ZInfoUser::getUserId,id);
+        ZInfoUser myself = getOne(lqw1);
+        Long spouseId = myself.getSpouseId();
+
+        LambdaQueryWrapper<ZInfoUser> lqw2 = new LambdaQueryWrapper<>();
+        lqw2.eq(ZInfoUser::getUserId,spouseId);
+        ZInfoUser spouse = getOne(lqw2);
+
+        ArrayList<ZInfoUser> zInfoUsers = new ArrayList<>();
+        zInfoUsers.add(myself);
+        zInfoUsers.add(spouse);
+
+        return AjaxResult.success(zInfoUsers);
+    }
+
     /**
      * 閫掑綊绠楁硶
      * @param people
      * @param allPeopleList
      * @return
      */
-    private List<ZInfoUser> fillChildren(ZInfoUser people, List<ZInfoUser> allPeopleList) {
-        return allPeopleList.stream().filter(
+    private List<ZInfoUser> fillChildren(ZInfoUser people, List<ZInfoUser> allPeopleList, Integer depth) {
+
+        // TODO: 2023-05-05 鎺у埗閫掑綊鐨勬鏁�
+       // if(depth==layer)
+
+       // layer = layer + 1;
+        System.out.println(depth);
+        List<ZInfoUser> collect = allPeopleList.stream().filter(
                 one -> one.getFatherId() == people.getUserId() || one.getMomId() == people.getUserId()
         ).map(
                 one -> {
-                    one.setChildList(fillChildren(one, allPeopleList));
-                    return one;
+                    if(depth==1)
+                        return one;
+                    else {
+                        List<ZInfoUser> zinfo = fillChildren(one, allPeopleList, depth - 1);
+                        one.setChildList(zinfo);
+                        System.out.println(one);
+                        return one;
+                    }
+
+                    //return one;
                 }
         ).collect(Collectors.toList());
+        System.out.println(collect);
+        return collect;
 
     }
 

--
Gitblit v1.9.1