From 0a8b731d9cf46c78c0c4c66fa9954eeb262e4017 Mon Sep 17 00:00:00 2001 From: luliqiang <kidgrow> Date: Mon, 10 Aug 2020 09:20:50 +0800 Subject: [PATCH] Merge branch 'dev' of http://192.168.2.240:7070/r/kidgrow-microservices-platform into dev --- kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysOrganizationServiceImpl.java | 50 ++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 36 insertions(+), 14 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 b47160b..49f6395 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); } @@ -144,7 +151,7 @@ @Override public int deleteByUserId(Long userId) { Map<String, Object> params = new HashMap<>(); - params.put("userId", userId); + params.put("user_id", userId); return sysUserOrgMapper.deleteByMap(params); } @@ -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); @@ -225,25 +234,38 @@ //查询 QueryWrapper queryWrapper = new QueryWrapper(); queryWrapper.eq("org_parent_id", sysOrg.getId()); - queryWrapper.orderByAsc("id"); + queryWrapper.orderByDesc("org_code"); + queryWrapper.last("limit 1"); List<SysOrganization> list = baseMapper.selectList(queryWrapper); if (list.size() > 0) { SysOrganization sysOrganizationLast = list.get(list.size() - 1); - String orgCodeLast = sysOrganizationLast.getOrgCode(); - String orgCodeLastQianZhui = orgCodeLast.substring(0, orgCodeLast.length() - 4); - Integer codenum = Integer.valueOf(orgCodeLast.substring(orgCodeLast.length() - 4)); - String str = "0000"; - str += (codenum + 1); - String substring = str.substring(str.length() - 4); - return orgCodeLastQianZhui + substring; + if (sysOrganizationLast.getOrgLevel() >= 2) { + String orgCodeLast = sysOrganizationLast.getOrgCode(); + //取前部分 + String orgCodeLastQianZhui = orgCodeLast.substring(0, orgCodeLast.length() - 3); + //取后部分 + Integer codenum = Integer.valueOf(orgCodeLast.substring(orgCodeLast.length() - 3)); + String str = "00"; + str += (codenum + 1); + String substring = str.substring(str.length() - 3); + return orgCodeLastQianZhui + substring; + } else { + String orgCodeLast = sysOrganizationLast.getOrgCode(); + //取前部分 + String orgCodeLastQianZhui = orgCodeLast.substring(0, orgCodeLast.length() - 7); + //取后部分 + Integer codenum = Integer.valueOf(orgCodeLast.substring(orgCodeLast.length() - 7)); + String str = "0000000"; + str += (codenum + 1); + String substring = str.substring(str.length() - 7); + return orgCodeLastQianZhui + substring; + } } else { String fucode = sysOrg.getOrgCode(); - String str = "0001"; + String str = "01"; return fucode + str; } - } return null; } - } -- Gitblit v1.8.0