From fd68c25ee4890f298c4bce1c2e4da97b6a70a402 Mon Sep 17 00:00:00 2001 From: 张天森 <1292933220@qq.com> Date: 星期四, 03 十一月 2022 16:28:13 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/huacheng_test' into huacheng_test --- flower_city/src/main/java/com/dg/core/service/impl/OrganizationChartImpl.java | 60 ++++++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 42 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..a4b8ad2 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 @@ -6,6 +6,7 @@ import com.dg.core.db.gen.entity.OrganizationChartEntity; import com.dg.core.db.gen.mapper.OrganizationChartMapper; import com.dg.core.service.IOrganizationChartService; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import java.util.ArrayList; @@ -17,13 +18,20 @@ { @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(parentId,"1",ids); + + if(ocList==null || ocList.size()<1) + { + List<String> id=new ArrayList<>(); + id.add(parentId); + ocList=baseMapper.selectConfigList(null,null,id); + } for (OrganizationChartEntity entity:ocList) { - entity.setChild(baseMapper.selectConfigList(entity.getId()+"","")); + entity.setChild(baseMapper.selectConfigList(entity.getId()+"","",null)); if (entity.getChild()!=null) { @@ -57,9 +65,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 +88,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 +114,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 +128,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