| | |
| | | RedisUtils redisUtils; |
| | | @Autowired |
| | | SysUserOrgMapper sysUserOrgMapper; |
| | | |
| | | /** |
| | | * 列表 |
| | | * |
| | |
| | | @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); |
| | | } |
| | |
| | | @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); |
| | | } |
| | | |
| | |
| | | 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<>(); |
| | |
| | | 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); |
| | |
| | | //查询 |
| | | 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; |
| | | } |
| | | |
| | | } |