package com.panzhihua.westcommittee.service.impl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.panzhihua.common.model.vos.west.SystemUserVo;
|
import com.panzhihua.westcommittee.dao.SystemMenuMapper;
|
import com.panzhihua.westcommittee.model.entity.SystemMenu;
|
import com.panzhihua.westcommittee.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<SystemMenuMapper, SystemMenu> implements ISystemMenuService {
|
|
|
@Override
|
public List<SystemMenu> getSystemMenuList(SystemUserVo systemUserVo) {
|
List<SystemMenu> list = this.list();
|
if(systemUserVo.getSystemRoleId()!=1){
|
list = list.stream().filter(s->s.getId() != 1 || s.getId()!=2 || s.getId()!=3 || s.getId()!=35 || s.getId()!=61 || s.getId()!=62).collect(Collectors.toList());
|
}
|
List<SystemMenu> collect = list.stream().filter(s->s.getParentId() == 0 && s.getId() != 3 ).collect(Collectors.toList());
|
for (SystemMenu systemMenu : collect) {
|
build(systemMenu, list);
|
}
|
return collect;
|
}
|
|
public void build(SystemMenu systemMenu, List<SystemMenu> list) {
|
List<SystemMenu> collect = list.stream().filter(s->s.getParentId().intValue() == systemMenu.getId()).collect(Collectors.toList());
|
if(collect.size() == 0){
|
return;
|
}
|
systemMenu.setChildren(collect);
|
for (SystemMenu menu : collect) {
|
build(menu, list);
|
}
|
}
|
}
|