From a1bb62e3ea757c41ad11be1d13a6fc63cf79fbd1 Mon Sep 17 00:00:00 2001
From: zhaoxiaohao <913652501@qq.com>
Date: Sat, 08 Aug 2020 18:00:11 +0800
Subject: [PATCH] 修改 组织树的bug
---
kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysOrganizationServiceImpl.java | 17 +++++++++++++----
1 files changed, 13 insertions(+), 4 deletions(-)
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysOrganizationServiceImpl.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysOrganizationServiceImpl.java
index d3795a3..622341f 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysOrganizationServiceImpl.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysOrganizationServiceImpl.java
@@ -38,6 +38,7 @@
RedisUtils redisUtils;
@Autowired
SysUserOrgMapper sysUserOrgMapper;
+
/**
* 列表
*
@@ -137,6 +138,12 @@
@Override
public ResultBody getTree(Map<String, Object> params) {
List<SysOrganization> sysOrganizations = baseMapper.selectByMap(params);
+ //查询 ,父类为-1的;即顶级父类
+// params.put("org_parent_id",Long.valueOf("-1"));
+// List<SysOrganization> sysOrgs=baseMapper.selectByMap(params);
+// if (sysOrgs.isEmpty()) {
+// return ResultBody.ok().data(null);
+// }
List<Map<String, Object>> treeData = getTreeData(Long.valueOf("-1"), sysOrganizations);
return ResultBody.ok().data(treeData);
}
@@ -158,7 +165,7 @@
public List<Map<String, Object>> getTreeData(Long MyId, List<SysOrganization> sysOrganizations) {
List<Map<String, Object>> listMap = new ArrayList<>();
Map<Long, SysOrganization> collect = sysOrganizations.stream().collect(Collectors.toMap(SysOrganization::getId, SysOrganization -> SysOrganization));
- List<Long> idList = sysOrganizations.stream().filter(e -> e.getOrgParentId() == MyId).map(e -> e.getId()).collect(Collectors.toList());
+ List<Long> idList = sysOrganizations.stream().filter(e -> MyId.equals(e.getOrgParentId())).map(e -> e.getId()).collect(Collectors.toList());
for (Long id : idList
) {
Map<String, Object> map = new HashMap<>();
@@ -166,7 +173,9 @@
map.put("name", collect.get(id).getOrgName());
map.put("level", collect.get(id).getOrgLevel());
map.put("parentId", collect.get(id).getOrgParentId());
- List<Long> childs = sysOrganizations.stream().filter(e -> e.getOrgParentId() == id).map(e -> e.getId()).collect(Collectors.toList());
+ List<Long> childs = sysOrganizations.stream().filter(e ->
+ id.equals(e.getOrgParentId())
+ ).map(e -> e.getId()).collect(Collectors.toList());
if (childs.size() > 0) {
List<Map<String, Object>> treeData = getTreeData(id, sysOrganizations);
map.put("children", treeData);
@@ -230,7 +239,7 @@
List<SysOrganization> list = baseMapper.selectList(queryWrapper);
if (list.size() > 0) {
SysOrganization sysOrganizationLast = list.get(list.size() - 1);
- if(sysOrganizationLast.getOrgLevel()>=2){
+ if (sysOrganizationLast.getOrgLevel() >= 2) {
String orgCodeLast = sysOrganizationLast.getOrgCode();
//取前部分
String orgCodeLastQianZhui = orgCodeLast.substring(0, orgCodeLast.length() - 3);
@@ -240,7 +249,7 @@
str += (codenum + 1);
String substring = str.substring(str.length() - 3);
return orgCodeLastQianZhui + substring;
- }else {
+ } else {
String orgCodeLast = sysOrganizationLast.getOrgCode();
//取前部分
String orgCodeLastQianZhui = orgCodeLast.substring(0, orgCodeLast.length() - 7);
--
Gitblit v1.8.0