|
@@ -1,14 +1,18 @@
|
|
|
package com.ydtech.modules.admin.service.impl;
|
|
package com.ydtech.modules.admin.service.impl;
|
|
|
|
|
|
|
|
|
|
+import cn.hutool.core.bean.BeanUtil;
|
|
|
|
|
+import cn.hutool.core.collection.CollectionUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.ydtech.constants.SysConstants;
|
|
import com.ydtech.constants.SysConstants;
|
|
|
import com.ydtech.modules.admin.dao.SysMenuMapper;
|
|
import com.ydtech.modules.admin.dao.SysMenuMapper;
|
|
|
import com.ydtech.modules.admin.model.SysMenu;
|
|
import com.ydtech.modules.admin.model.SysMenu;
|
|
|
|
|
+import com.ydtech.modules.admin.model.SysMenuVo;
|
|
|
import com.ydtech.modules.admin.model.SysRoleMenu;
|
|
import com.ydtech.modules.admin.model.SysRoleMenu;
|
|
|
import com.ydtech.modules.admin.service.SysMenuService;
|
|
import com.ydtech.modules.admin.service.SysMenuService;
|
|
|
import com.ydtech.modules.admin.service.SysRoleMenuKztService;
|
|
import com.ydtech.modules.admin.service.SysRoleMenuKztService;
|
|
|
import com.ydtech.modules.admin.service.SysRoleMenuService;
|
|
import com.ydtech.modules.admin.service.SysRoleMenuService;
|
|
|
|
|
+import org.apache.commons.compress.utils.Lists;
|
|
|
import org.apache.commons.lang3.ObjectUtils;
|
|
import org.apache.commons.lang3.ObjectUtils;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -99,6 +103,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu>
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
private void findChildren(List<SysMenu> SysMenus, List<SysMenu> menus, int menuType) {
|
|
private void findChildren(List<SysMenu> SysMenus, List<SysMenu> menus, int menuType) {
|
|
|
|
|
+
|
|
|
for (SysMenu SysMenu : SysMenus) {
|
|
for (SysMenu SysMenu : SysMenus) {
|
|
|
List<SysMenu> children = new ArrayList<>();
|
|
List<SysMenu> children = new ArrayList<>();
|
|
|
for (SysMenu menu : menus) {
|
|
for (SysMenu menu : menus) {
|
|
@@ -119,7 +124,43 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu>
|
|
|
findChildren(children, menus, menuType);
|
|
findChildren(children, menus, menuType);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public ArrayList<SysMenuVo> v1findMenuTree() {
|
|
|
|
|
+ List<SysMenu> tree = this.findTree(null, 0);
|
|
|
|
|
+ ArrayList<SysMenuVo> menus = Lists.newArrayList();
|
|
|
|
|
+ tree.forEach(menu->{
|
|
|
|
|
+ SysMenuVo sysMenuVo = new SysMenuVo();
|
|
|
|
|
+ BeanUtil.copyProperties(menu, sysMenuVo);
|
|
|
|
|
+ sysMenuVo.setNodeName(menu.getName());
|
|
|
|
|
+ sysMenuVo.setIsChecked(false);
|
|
|
|
|
+ sysMenuVo.setEditable(false);
|
|
|
|
|
+ if(CollectionUtil.isNotEmpty(menu.getChildren())){
|
|
|
|
|
+ this.v1findMenuTreeChildren(menu.getChildren(),sysMenuVo);
|
|
|
|
|
+ }else{
|
|
|
|
|
+ sysMenuVo.setChidrenList(CollectionUtil.newArrayList());
|
|
|
|
|
+ }
|
|
|
|
|
+ menus.add(sysMenuVo);
|
|
|
|
|
+ });
|
|
|
|
|
+ return menus;
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
+ private void v1findMenuTreeChildren(List<SysMenu> tree,SysMenuVo sysMenuVos){
|
|
|
|
|
+ ArrayList<SysMenuVo> menus = Lists.newArrayList();
|
|
|
|
|
+ tree.forEach(menu->{
|
|
|
|
|
+ SysMenuVo sysMenuVo = new SysMenuVo();
|
|
|
|
|
+ BeanUtil.copyProperties(menu, sysMenuVo);
|
|
|
|
|
+ sysMenuVo.setNodeName(menu.getName());
|
|
|
|
|
+ sysMenuVo.setIsChecked(false);
|
|
|
|
|
+ sysMenuVo.setEditable(false);
|
|
|
|
|
+ if(CollectionUtil.isNotEmpty(menu.getChildren())){
|
|
|
|
|
+ this.v1findMenuTreeChildren(menu.getChildren(),sysMenuVo);
|
|
|
|
|
+ }else{
|
|
|
|
|
+ sysMenuVo.setChidrenList(CollectionUtil.newArrayList());
|
|
|
|
|
+ }
|
|
|
|
|
+ menus.add(sysMenuVo);
|
|
|
|
|
+ });
|
|
|
|
|
+ sysMenuVos.setChidrenList(menus);
|
|
|
|
|
+ }
|
|
|
private boolean exists(List<SysMenu> sysMenus, SysMenu sysMenu) {
|
|
private boolean exists(List<SysMenu> sysMenus, SysMenu sysMenu) {
|
|
|
boolean exist = false;
|
|
boolean exist = false;
|
|
|
for (SysMenu menu : sysMenus) {
|
|
for (SysMenu menu : sysMenus) {
|
|
@@ -264,6 +305,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu>
|
|
|
public int findByUseId(String userId, String sysType) {
|
|
public int findByUseId(String userId, String sysType) {
|
|
|
return sysRoleMenuKztService.findByUseId(userId,sysType);
|
|
return sysRoleMenuKztService.findByUseId(userId,sysType);
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|