From 6f30b5c886cd05081d6250eb0506816fb2ac80ec Mon Sep 17 00:00:00 2001
From: lidongdong <1459917685@qq.com>
Date: 星期二, 22 十一月 2022 14:11:30 +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 | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 53 insertions(+), 2 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 02b9f5e..fecfdad 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;
@@ -19,17 +20,30 @@
@Override
public List<OrganizationChartEntity> selectConfigList(String parentId,String grade,List<String> ids)
{
- List<OrganizationChartEntity> ocList=baseMapper.selectConfigList("","1",ids);
+ 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()+"","",ids));
+ entity.setChild(baseMapper.selectConfigList(entity.getId()+"","",null));
if (entity.getChild()!=null)
{
entity.setChild(this.selectConfigList(entity.getId().toString()));
}
}
+ return ocList;
+ }
+
+ @Override
+ public List<OrganizationChartEntity> selectConfigList(List<String> ids) {
+ List<OrganizationChartEntity> ocList=baseMapper.selectConfigList(null,null,ids);
return ocList;
}
@@ -120,6 +134,43 @@
return ids;
}
+ @Override
+ public List<String> getDepartmentId(String id){
+ String parentId = parentId(id);
+ List<String> departmentIds=new ArrayList<>();
+ departmentIds.add(parentId);
+ List<OrganizationChartEntity> organizationChartEntities = baseMapper.selectList(new QueryWrapper<OrganizationChartEntity>().lambda().eq(OrganizationChartEntity::getParentId, parentId));
+ for (OrganizationChartEntity organizationChart :organizationChartEntities){
+ departmentIds.add(organizationChart.getId().toString());
+ departmentIds=getDepartmentIds(organizationChart.getId().toString(),departmentIds);
+ }
+ return departmentIds;
+ }
+
+
+ public String parentId(String id){
+ String parentId=id;
+ OrganizationChartEntity organizationChart = baseMapper.selectOne(new QueryWrapper<OrganizationChartEntity>().lambda().eq(OrganizationChartEntity::getId, id));
+ if (organizationChart.getParentId().length()>0){
+ parentId=parentId(organizationChart.getParentId());
+ }
+ return parentId;
+ }
+
+ public List<String> getDepartmentIds(String id,List<String> departmentIds){
+ List<OrganizationChartEntity> organizationChartEntities = baseMapper.selectList(new QueryWrapper<OrganizationChartEntity>().lambda().eq(OrganizationChartEntity::getParentId, id));
+ if (organizationChartEntities.size()==0){
+ return departmentIds;
+ }
+ else {
+ for (OrganizationChartEntity organizationChart :organizationChartEntities){
+ departmentIds.add(organizationChart.getId().toString());
+ departmentIds=getDepartmentIds(organizationChart.getId().toString(),departmentIds);
+ }
+ }
+ return departmentIds;
+ }
+
//递归取id
--
Gitblit v1.7.1