From 022aa0984400dbcf83eee700c172678077419fd4 Mon Sep 17 00:00:00 2001
From: lidongdong <1459917685@qq.com>
Date: 星期一, 24 十月 2022 15:46:54 +0800
Subject: [PATCH] 修改选择项部门权限显示  bug

---
 flower_city/src/main/java/com/dg/core/service/impl/OrganizationChartImpl.java |   52 ++++++++++++++++++++++++++++++++++------------------
 1 files changed, 34 insertions(+), 18 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 38ab575..02b9f5e 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
@@ -17,13 +17,13 @@
 {
 
     @Override
-    public List<OrganizationChartEntity> selectConfigList(String parentId,String grade)
+    public List<OrganizationChartEntity> selectConfigList(String parentId,String grade,List<String> ids)
     {
-        List<OrganizationChartEntity> ocList=baseMapper.selectConfigList("","1");
+        List<OrganizationChartEntity> ocList=baseMapper.selectConfigList("","1",ids);
 
         for (OrganizationChartEntity entity:ocList)
         {
-            entity.setChild(baseMapper.selectConfigList(entity.getId()+"",""));
+            entity.setChild(baseMapper.selectConfigList(entity.getId()+"","",ids));
 
             if (entity.getChild()!=null)
             {
@@ -57,9 +57,9 @@
 
 
     public List<OrganizationChartEntity> selectConfigList(String parentsId) {
-        List<OrganizationChartEntity> list =baseMapper.selectConfigList(parentsId,"");
+        List<OrganizationChartEntity> list =baseMapper.selectConfigList(parentsId,"",null);
         for (OrganizationChartEntity sysStreet:list) {
-            sysStreet.setChild(baseMapper.selectConfigList(sysStreet.getId().toString(),""));
+            sysStreet.setChild(baseMapper.selectConfigList(sysStreet.getId().toString(),"",null));
             if (sysStreet.getChild()!=null)
             {
                 sysStreet.setChild(this.selectConfigList(sysStreet.getId().toString()));
@@ -80,18 +80,25 @@
     }
 
     @Override
-    public List<OrganizationChartEntity> queryList(IPage<OrganizationChartEntity> page, Integer state, String organizationName) {
-        return baseMapper.queryList(page,state,organizationName);
+    public List<OrganizationChartEntity> queryList(IPage<OrganizationChartEntity> page, Integer state,
+                                                   String organizationName,List<String> ids) {
+        return baseMapper.queryList(page,state,organizationName,ids);
     }
 
     @Override
-    public int countList(String organizationName) {
-        return baseMapper.countList(organizationName);
+    public int countList(String organizationName,List<String> ids) {
+        return baseMapper.countList(organizationName,ids);
+    }
+
+
+    @Override
+    public List<OrganizationChartEntity> selectParentList(String parentId, String grade) {
+        return baseMapper.selectConfigList(parentId,grade,null);
     }
 
     /**
      * 递归获取id  内部使用
-     * @param departmentId
+     * @param id
      * @return
      */
 
@@ -99,7 +106,7 @@
     public List<String> getIds(String id)
     {
         List<String> ids=new ArrayList<>();
-        List<OrganizationChartEntity> lists = baseMapper.selectConfigList(id,"");
+        List<OrganizationChartEntity> lists = baseMapper.selectConfigList(id,"",null);
         if(lists.size()<1)
         {
             lists.add(baseMapper.selectConfigById(id));
@@ -113,20 +120,29 @@
         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)
         {
-            ids.add(sysStreet.getId()+"");
-            if(sysStreet.getChild()!=null && sysStreet.getChild().size()>0)
+            if(sysStreet!=null&&sysStreet.getId()!=null)
             {
-                ids.addAll(disposestreetId(sysStreet.getChild()));
-            }
-            else
-            {
-                ids.add(sysStreet.getId()+"");
+                if(sysStreet.getChild()!=null && sysStreet.getChild().size()>0)
+                {
+                    ids.addAll(disposestreetId(sysStreet.getChild()));
+                }
+                else
+                {
+                    ids.add(sysStreet.getId()+"");
+                }
             }
         }
         return ids;

--
Gitblit v1.7.1