| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package org.springblade.common.cache; |
| | | |
| | | import org.apache.logging.log4j.util.Strings; |
| | |
| | | * @return regionCode |
| | | */ |
| | | public static List<String> getPoliceRegionChildCodesByDeptId(String deptId) { |
| | | //多个部门按逗号分割 |
| | | List<String> deptIdList = Arrays.asList(deptId.split(",")); |
| | | // 去重 |
| | | List<String> regionCodeList = new ArrayList<>(); |
| | | if (!Strings.isBlank(deptId)) { |
| | | //多个部门按逗号分割 |
| | | List<String> deptIdList = Arrays.asList(deptId.split(",")); |
| | | |
| | | //所有行政区划code |
| | | List<String> allRegionList = new ArrayList<>(); |
| | | deptIdList.forEach(id->{ |
| | | List<String> list = new ArrayList<>(); |
| | | // 查询对应的区域编号code |
| | | Dept dept = deptService.getById(id); |
| | | // 只取公安的 |
| | | if (dept.getDeptNature()==1) { |
| | | if (null != dept && !Strings.isBlank(dept.getRegionCode()) && !AuthUtil.isAdministrator()) { |
| | | list = getPoliceRegionChildCodes(dept.getRegionCode()); |
| | | //行政区划不为空添加进集合 |
| | | if (list.size() > 0) { |
| | | allRegionList.addAll(list); |
| | | //所有行政区划code |
| | | List<String> allRegionList = new ArrayList<>(); |
| | | deptIdList.forEach(id -> { |
| | | List<String> list = new ArrayList<>(); |
| | | // 查询对应的区域编号code |
| | | Dept dept = deptService.getById(id); |
| | | // 只取公安的 |
| | | if (dept.getDeptNature() == 1) { |
| | | if (null != dept && !Strings.isBlank(dept.getRegionCode()) && !AuthUtil.isAdministrator()) { |
| | | list = getPoliceRegionChildCodes(dept.getRegionCode()); |
| | | //行政区划不为空添加进集合 |
| | | if (list.size() > 0) { |
| | | allRegionList.addAll(list); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }); |
| | | |
| | | // 去重 |
| | | List<String> collect = allRegionList.stream().distinct().collect(Collectors.toList()); |
| | | return collect; |
| | | }); |
| | | // 去重 |
| | | regionCodeList = allRegionList.stream().distinct().collect(Collectors.toList()); |
| | | } |
| | | return regionCodeList; |
| | | } |
| | | |
| | | /** |