From 1fb23cbeeaaeda0a66cf8fe8977c3f5915743cc7 Mon Sep 17 00:00:00 2001
From: fengjin <1435304038@qq.com>
Date: 星期五, 21 十月 2022 15:13:10 +0800
Subject: [PATCH] Merge branch 'zigonggao_dev' into huacheng_test

---
 flower_city/src/main/java/com/dg/core/service/impl/OrganizationChartImpl.java |   61 ++++++++++++++++++++++++++++++
 1 files changed, 61 insertions(+), 0 deletions(-)

diff --git a/flower_city/src/main/java/com/dg/core/service/impl/OrganizationChartImpl.java b/flower_city/src/main/java/com/dg/core/service/impl/OrganizationChartImpl.java
index c06ddb6..0751fdc 100644
--- a/flower_city/src/main/java/com/dg/core/service/impl/OrganizationChartImpl.java
+++ b/flower_city/src/main/java/com/dg/core/service/impl/OrganizationChartImpl.java
@@ -8,6 +8,7 @@
 import com.dg.core.service.IOrganizationChartService;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.List;
 
 @Service
@@ -87,4 +88,64 @@
     public int countList(String organizationName) {
         return baseMapper.countList(organizationName);
     }
+
+
+    @Override
+    public List<OrganizationChartEntity> selectParentList(String parentId, String grade) {
+        return baseMapper.selectConfigList(parentId,grade);
+    }
+
+    /**
+     * 递归获取id  内部使用
+     * @param id
+     * @return
+     */
+
+    @Override
+    public List<String> getIds(String id)
+    {
+        List<String> ids=new ArrayList<>();
+        List<OrganizationChartEntity> lists = baseMapper.selectConfigList(id,"");
+        if(lists.size()<1)
+        {
+            lists.add(baseMapper.selectConfigById(id));
+        }
+        ids=disposestreetId(lists);
+        if(ids.size()<1)
+        {
+            return null;
+        }
+        ids.add(id);
+        return ids;
+    }
+
+
+
+    //递归取id
+    private List<String> disposestreetId(List<OrganizationChartEntity> lists)
+    {
+        List<String> ids=new ArrayList<>();
+        if(lists==null || lists.size()<1)
+        {
+            return ids;
+        }
+
+        for (OrganizationChartEntity sysStreet:lists)
+        {
+            if(sysStreet!=null&&sysStreet.getId()!=null)
+            {
+                if(sysStreet.getChild()!=null && sysStreet.getChild().size()>0)
+                {
+                    ids.addAll(disposestreetId(sysStreet.getChild()));
+                }
+                else
+                {
+                    ids.add(sysStreet.getId()+"");
+                }
+            }
+        }
+        return ids;
+    }
+
+
 }

--
Gitblit v1.7.1