package com.panzhihua.sangeshenbian.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.panzhihua.sangeshenbian.dao.SystemMenuMapper; import com.panzhihua.sangeshenbian.model.entity.SystemMenu; import com.panzhihua.sangeshenbian.service.ISystemMenuService; import org.springframework.stereotype.Service; import java.util.List; import java.util.stream.Collectors; /** * @author zhibing.pu * @Date 2025/2/23 1:03 */ @Service public class SystemMenuServiceImpl extends ServiceImpl implements ISystemMenuService { @Override public List getSystemMenuList() { List list = this.list(); List collect = list.stream().filter(s->s.getParentId() == 0).collect(Collectors.toList()); for (SystemMenu systemMenu : collect) { build(systemMenu, list); } return list; } public void build(SystemMenu systemMenu, List list) { List collect = list.stream().filter(s->s.getParentId().equals(systemMenu.getParentId())).collect(Collectors.toList()); if(collect.size() == 0){ return; } systemMenu.setChildren(collect); for (SystemMenu menu : collect) { build(menu, list); } } }