Commit dd1401f4 authored by KeYong's avatar KeYong

优化区域

parent 22759691
...@@ -26,6 +26,7 @@ import com.yeejoin.equipmanage.operation.AreaSynRiskOperator; ...@@ -26,6 +26,7 @@ import com.yeejoin.equipmanage.operation.AreaSynRiskOperator;
import com.yeejoin.equipmanage.service.IAreaService; import com.yeejoin.equipmanage.service.IAreaService;
import com.yeejoin.equipmanage.service.IEqSourceFileService; import com.yeejoin.equipmanage.service.IEqSourceFileService;
import com.yeejoin.equipmanage.service.IEquipmentSpecificSerivce; import com.yeejoin.equipmanage.service.IEquipmentSpecificSerivce;
import liquibase.pro.packaged.o;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
...@@ -33,9 +34,11 @@ import org.springframework.context.annotation.Lazy; ...@@ -33,9 +34,11 @@ import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.core.foundation.utils.Bean; import org.typroject.tyboot.core.foundation.utils.Bean;
import java.util.*; import java.util.*;
import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
...@@ -128,17 +131,6 @@ public class AreaServiceImpl extends ServiceImpl<AreaMapper, Area> implements IA ...@@ -128,17 +131,6 @@ public class AreaServiceImpl extends ServiceImpl<AreaMapper, Area> implements IA
return areaTreeVos; return areaTreeVos;
} }
private List<UnitAreaTreeVo> getAreaChildren(UnitAreaTreeVo root, List<UnitAreaTreeVo> all) {
return all.stream().filter(d -> StringUtil.isNotEmpty(d.getParentId()) && d.getParentId().equals(root.getId())
|| (StringUtil.isNotEmpty(d.getBizOrgCode())
&& d.getBizOrgCode().equals(root.getBizOrgCode())
&& !"area".equals(root.getType())
&& !d.getId().equals(root.getId()))
)
.peek(m -> m.setChildren(getAreaChildren(m, all)))
.collect(Collectors.toList());
}
/** /**
* 根据父节点查询子节点赋值 * 根据父节点查询子节点赋值
* *
...@@ -180,16 +172,15 @@ public class AreaServiceImpl extends ServiceImpl<AreaMapper, Area> implements IA ...@@ -180,16 +172,15 @@ public class AreaServiceImpl extends ServiceImpl<AreaMapper, Area> implements IA
List<UnitAreaTreeVo> list = new ArrayList<>(); List<UnitAreaTreeVo> list = new ArrayList<>();
list = treeMenuList(getAreaTreeListVo(), id); list = treeMenuList(getAreaTreeListVo(), id);
List<Long> parentIdSet = list.stream().map(vo -> vo.getId()).collect(Collectors.toList()); List<Long> parentIdSet = list.stream().map(vo -> vo.getId()).collect(Collectors.toList());
parentIdSet.add(id);
if (StringUtil.isNotEmpty(area.getBizOrgCode())) { if (StringUtil.isNotEmpty(area.getBizOrgCode())) {
queryWrapper.like(Area::getBizOrgCode, area.getBizOrgCode()); queryWrapper.like(Area::getBizOrgCode, area.getBizOrgCode());
} }
queryWrapper.eq(Area::getIsDelete, false); queryWrapper.eq(Area::getIsDelete, false);
if (parentIdSet.size() > 0) { if (parentIdSet.size() > 0) {
queryWrapper.in(Area::getParentId, parentIdSet); queryWrapper.in(Area::getParentId, parentIdSet);
if (0 != area.getParentId()) {
queryWrapper.or().eq(Area::getId, id); queryWrapper.or().eq(Area::getId, id);
} else { }
queryWrapper.eq(Area::getId, id);
} }
IPage pageArea = this.baseMapper.selectMapsPage(page, queryWrapper); IPage pageArea = this.baseMapper.selectMapsPage(page, queryWrapper);
...@@ -228,7 +219,7 @@ public class AreaServiceImpl extends ServiceImpl<AreaMapper, Area> implements IA ...@@ -228,7 +219,7 @@ public class AreaServiceImpl extends ServiceImpl<AreaMapper, Area> implements IA
List<UnitAreaTreeVo> voList = new ArrayList<>(); List<UnitAreaTreeVo> voList = new ArrayList<>();
for (UnitAreaTreeVo vo : list) { for (UnitAreaTreeVo vo : list) {
//遍历出父id等于参数的id,add进子节点集合 //遍历出父id等于参数的id,add进子节点集合
if (Long.valueOf(vo.getParentId()) == pid) { if (!ObjectUtils.isEmpty(vo.getParentId()) && 0 != vo.getParentId() && Long.valueOf(vo.getParentId()) == pid) {
//递归遍历下一级 //递归遍历下一级
treeMenuList(list, Long.valueOf(vo.getId())); treeMenuList(list, Long.valueOf(vo.getId()));
voList.add(vo); voList.add(vo);
...@@ -241,6 +232,7 @@ public class AreaServiceImpl extends ServiceImpl<AreaMapper, Area> implements IA ...@@ -241,6 +232,7 @@ public class AreaServiceImpl extends ServiceImpl<AreaMapper, Area> implements IA
public List<UnitAreaTreeVo> getAreaTreeListVo() { public List<UnitAreaTreeVo> getAreaTreeListVo() {
// 获取公司部门list // 获取公司部门list
List<OrgUsrDto> orgCompanyLists = jcsRemoteService.getCompanyDeptListWithAuth(authKey, "COMPANY"); List<OrgUsrDto> orgCompanyLists = jcsRemoteService.getCompanyDeptListWithAuth(authKey, "COMPANY");
AtomicReference<Boolean> flag = new AtomicReference<Boolean>();
List<UnitAreaTreeVo> areaTreeList = orgCompanyLists.stream() List<UnitAreaTreeVo> areaTreeList = orgCompanyLists.stream()
.map(key -> { .map(key -> {
UnitAreaTreeVo vo = new UnitAreaTreeVo(); UnitAreaTreeVo vo = new UnitAreaTreeVo();
...@@ -250,6 +242,9 @@ public class AreaServiceImpl extends ServiceImpl<AreaMapper, Area> implements IA ...@@ -250,6 +242,9 @@ public class AreaServiceImpl extends ServiceImpl<AreaMapper, Area> implements IA
vo.setBizOrgCode(key.getBizOrgCode()); vo.setBizOrgCode(key.getBizOrgCode());
vo.setBizOrgName(key.getBizOrgName()); vo.setBizOrgName(key.getBizOrgName());
vo.setParentId(StringUtil.isNotEmpty(key.getParentId()) ? Long.valueOf(key.getParentId()) : null); vo.setParentId(StringUtil.isNotEmpty(key.getParentId()) ? Long.valueOf(key.getParentId()) : null);
if ("".equals(vo.getParentId()) || "-1".equals(vo.getParentId()) || null == vo.getParentId()) {
flag.set(true);
}
return vo; return vo;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
...@@ -259,7 +254,7 @@ public class AreaServiceImpl extends ServiceImpl<AreaMapper, Area> implements IA ...@@ -259,7 +254,7 @@ public class AreaServiceImpl extends ServiceImpl<AreaMapper, Area> implements IA
wrapper.eq(Area::getIsDelete, false); wrapper.eq(Area::getIsDelete, false);
wrapper.in(Area::getBizOrgCode, bizOrgCodes); wrapper.in(Area::getBizOrgCode, bizOrgCodes);
List<Area> areaEntityList = this.baseMapper.selectList(wrapper); List<Area> areaEntityList = this.baseMapper.selectList(wrapper);
List<UnitAreaTreeVo> systemList = areaEntityList.stream() List<UnitAreaTreeVo> treeList = areaEntityList.stream()
.map(key -> { .map(key -> {
UnitAreaTreeVo vo = new UnitAreaTreeVo(); UnitAreaTreeVo vo = new UnitAreaTreeVo();
vo.setId(key.getId()); vo.setId(key.getId());
...@@ -271,13 +266,27 @@ public class AreaServiceImpl extends ServiceImpl<AreaMapper, Area> implements IA ...@@ -271,13 +266,27 @@ public class AreaServiceImpl extends ServiceImpl<AreaMapper, Area> implements IA
return vo; return vo;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
areaTreeList.addAll(systemList); areaTreeList.addAll(treeList);
return areaTreeList.stream() return areaTreeList.stream()
.filter(d -> !"area".equals(d.getType())) .filter(d -> flag.get() ? !"area".equals(d.getType()) && d.getBizOrgCode() != null
&& ("".equals(d.getParentId()) || "-1".equals(d.getParentId()) || null == d.getParentId())
: "area".equals(d.getType()) && null != d.getBizOrgCode())
.peek((m) -> m.setChildren(getAreaChildren(m, areaTreeList))) .peek((m) -> m.setChildren(getAreaChildren(m, areaTreeList)))
.collect(Collectors.toList()); .collect(Collectors.toList());
} }
private List<UnitAreaTreeVo> getAreaChildren(UnitAreaTreeVo root, List<UnitAreaTreeVo> all) {
return all.stream().filter(d -> StringUtil.isNotEmpty(d.getParentId()) && d.getParentId().equals(root.getId())
|| (StringUtil.isNotEmpty(d.getBizOrgCode())
&& d.getBizOrgCode().equals(root.getBizOrgCode())
&& !"area".equals(root.getType())
&& !d.getId().equals(root.getId()))
)
.peek(m -> m.setChildren(getAreaChildren(m, all)))
.collect(Collectors.toList());
}
@Override @Override
public List<OrgMenuDto> companyDeptTree() { public List<OrgMenuDto> companyDeptTree() {
return jcsRemoteService.getCompanyDeptTreeWithAuth(authKey, "COMPANY"); return jcsRemoteService.getCompanyDeptTreeWithAuth(authKey, "COMPANY");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment