日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java用户里获取部门id_javaWeb开发,根据部门ID查询该部门和下属所有部门的ID集合...

發布時間:2024/1/23 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java用户里获取部门id_javaWeb开发,根据部门ID查询该部门和下属所有部门的ID集合... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

由于博主太菜,就直接上圖了,結果是正確的。

1:首先看下數據庫

2:對應的實體類

3:mapper.xml和mapper.java

再xml中根據限定條件查詢出當前所有的部門集合

4:在serviceImpl中做邏輯處理,最后用遞歸求出結果。

public class PostTotalNumServiceImpl implements PostTotalNumService {

/**

* 根據部門ID獲取該部門及其下屬部門的ID集合

*/

public List getDeptIdList(String deptId) {

Department department = this.getDepartment(deptId);

List deptIdList = new ArrayList<>();

if (department != null) {

deptIdList.add(department.getId());

deptIdList = addDeptIdList(deptIdList, department);

}

return deptIdList;

}

/**

* 根據部門ID獲取該部門及其下屬部門樹

*/

public Department getDepartment(String deptId) {

List departments = departmentMapper.findAllDepartments();

Map map = departments.stream().collect(

Collectors.toMap(Department::getId, department -> department));

for (Department dept : map.values()) {

Department parent = map.get(dept.getPid());

if (parent != null) {

List children = parent.getChildren() == null ? new ArrayList<>() : parent.getChildren();

children.add(dept);

parent.setChildren(children);

}

}

return map.get(deptId);

}

public List addDeptIdList(List deptIdList, Department department) {

List children = department.getChildren();

if (children != null) {

for (Department d : children) {

deptIdList.add(d.getId());

addDeptIdList(deptIdList, d);

}

}

return deptIdList;

}

}

5:service接口

public interface PostTotalNumService {

/**

*查出當前部門和下屬部門的集合

*/

List deptList(String pkDept);

}

6:junit單元測試

public class PostTest extends BaseTest {

@Autowired

private PostTotalNumService postService;

@Test

public void postTest(){

//查詢當前部門及下屬部門的集合

List strings = postService.deptList("1001K31000000003M1BT");

System.out.println(strings.size());

}

}

總結

以上是生活随笔為你收集整理的java用户里获取部门id_javaWeb开发,根据部门ID查询该部门和下属所有部门的ID集合...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。