提交 d2ac09d6 authored 作者: fit2cloud-chenyw's avatar fit2cloud-chenyw

fix: 菜单排序

上级 f7514854
...@@ -29,6 +29,8 @@ public class DynamicMenuDto implements Serializable { ...@@ -29,6 +29,8 @@ public class DynamicMenuDto implements Serializable {
private Integer type; private Integer type;
private Integer menuSort;
private Boolean isPlugin; private Boolean isPlugin;
private Boolean noLayout; private Boolean noLayout;
......
...@@ -8,6 +8,7 @@ import io.dataease.base.mapper.ext.AuthMapper; ...@@ -8,6 +8,7 @@ import io.dataease.base.mapper.ext.AuthMapper;
import io.dataease.auth.service.AuthUserService; import io.dataease.auth.service.AuthUserService;
import io.dataease.base.mapper.ext.ExtPluginSysMenuMapper; import io.dataease.base.mapper.ext.ExtPluginSysMenuMapper;
import io.dataease.commons.constants.AuthConstants; import io.dataease.commons.constants.AuthConstants;
import io.dataease.commons.utils.LogUtil;
import io.dataease.plugins.common.dto.PluginSysMenu; import io.dataease.plugins.common.dto.PluginSysMenu;
import io.dataease.plugins.util.PluginUtils; import io.dataease.plugins.util.PluginUtils;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
...@@ -17,7 +18,6 @@ import org.springframework.cache.annotation.Cacheable; ...@@ -17,7 +18,6 @@ import org.springframework.cache.annotation.Cacheable;
import org.springframework.cache.annotation.Caching; import org.springframework.cache.annotation.Caching;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
...@@ -99,7 +99,7 @@ public class AuthUserServiceImpl implements AuthUserService { ...@@ -99,7 +99,7 @@ public class AuthUserServiceImpl implements AuthUserService {
}) })
@Override @Override
public void clearCache(Long userId) { public void clearCache(Long userId) {
LogUtil.info("正在清除用户缓存【{}】",userId);
} }
@Transactional @Transactional
......
...@@ -14,6 +14,7 @@ import org.springframework.stereotype.Service; ...@@ -14,6 +14,7 @@ import org.springframework.stereotype.Service;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import java.util.stream.Stream;
@Service @Service
public class DynamicMenuServiceImpl implements DynamicMenuService { public class DynamicMenuServiceImpl implements DynamicMenuService {
...@@ -35,6 +36,12 @@ public class DynamicMenuServiceImpl implements DynamicMenuService { ...@@ -35,6 +36,12 @@ public class DynamicMenuServiceImpl implements DynamicMenuService {
List<DynamicMenuDto> pluginDtos = pluginSysMenus.stream().map(this::convert).collect(Collectors.toList()); List<DynamicMenuDto> pluginDtos = pluginSysMenus.stream().map(this::convert).collect(Collectors.toList());
dynamicMenuDtos.addAll(pluginDtos); dynamicMenuDtos.addAll(pluginDtos);
} }
dynamicMenuDtos = dynamicMenuDtos.stream().sorted((s1, s2) -> {
int sortIndex1 = null == s1.getMenuSort() ? 999: s1.getMenuSort();
int sortIndex2 = null == s2.getMenuSort() ? 999: s2.getMenuSort();
return sortIndex1 - sortIndex2;
}).collect(Collectors.toList());
dynamicMenuDtos.sort((s1, s2) -> s1.getHidden().compareTo(s2.getHidden()));
List<DynamicMenuDto> result = buildTree(dynamicMenuDtos); List<DynamicMenuDto> result = buildTree(dynamicMenuDtos);
return result; return result;
} }
...@@ -53,6 +60,7 @@ public class DynamicMenuServiceImpl implements DynamicMenuService { ...@@ -53,6 +60,7 @@ public class DynamicMenuServiceImpl implements DynamicMenuService {
menuMeta.setIcon(sysMenu.getIcon()); menuMeta.setIcon(sysMenu.getIcon());
dynamicMenuDto.setMeta(menuMeta); dynamicMenuDto.setMeta(menuMeta);
dynamicMenuDto.setPermission(sysMenu.getPermission()); dynamicMenuDto.setPermission(sysMenu.getPermission());
dynamicMenuDto.setMenuSort(sysMenu.getMenuSort());
dynamicMenuDto.setHidden(sysMenu.getHidden()); dynamicMenuDto.setHidden(sysMenu.getHidden());
dynamicMenuDto.setIsPlugin(false); dynamicMenuDto.setIsPlugin(false);
return dynamicMenuDto; return dynamicMenuDto;
...@@ -71,6 +79,7 @@ public class DynamicMenuServiceImpl implements DynamicMenuService { ...@@ -71,6 +79,7 @@ public class DynamicMenuServiceImpl implements DynamicMenuService {
menuMeta.setIcon(sysMenu.getIcon()); menuMeta.setIcon(sysMenu.getIcon());
dynamicMenuDto.setMeta(menuMeta); dynamicMenuDto.setMeta(menuMeta);
dynamicMenuDto.setPermission(sysMenu.getPermission()); dynamicMenuDto.setPermission(sysMenu.getPermission());
dynamicMenuDto.setMenuSort(sysMenu.getMenuSort());
dynamicMenuDto.setHidden(sysMenu.getHidden()); dynamicMenuDto.setHidden(sysMenu.getHidden());
dynamicMenuDto.setIsPlugin(true); dynamicMenuDto.setIsPlugin(true);
dynamicMenuDto.setNoLayout(!!sysMenu.isNoLayout()); dynamicMenuDto.setNoLayout(!!sysMenu.isNoLayout());
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论