1.控制层
2.业务层
@Override public void removeChildById(String id) { List<String> idList = new ArrayList<>(); this.selectChildListById(id, idList); idList.add(id); baseMapper.deleteBatchIds(idList); }
private void selectChildListById(String id, List<String> idList) { List<Permission> childList = baseMapper.selectList(new QueryWrapper<Permission>().eq("pid", id).select("id")); childList.stream().forEach(item -> { idList.add(item.getId()); this.selectChildListById(item.getId(), idList); }); }