Commit 2f44da71 sunke

菜单功能重构

1 个父辈 d89f1ab3
......@@ -169,6 +169,10 @@ public class PermissionInitUtil {
if (targetStr.contains("@el.check")) {
int endIndex = targetStr.length() - 2;
if(endIndex <= 11){
log.error("path="+path+"的权限定义"+targetStr+"异常,忽略");
continue;
}
targetStr = targetStr.substring(11, endIndex);
String[] targetArray = targetStr.split("','");
tList = Lists.newArrayList(targetArray);
......@@ -188,7 +192,7 @@ public class PermissionInitUtil {
resMap.put(path, tbPer);
} catch (Exception ex) {
log.error("解析 path=" + path + " 出错: " + ex.toString());
log.error("解析 path=" + path + " 出错: ",ex);
}
}
......
......@@ -117,8 +117,7 @@ public class LanguageMsgService {
List<String> list = getAllLanList();
list.add("");
for (String lan :
list) {
for (String lan : list) {
String[] array = lan.split("-");
Locale locale = null;
if (array.length == 2) {
......
......@@ -84,4 +84,6 @@ public interface IMenuManager extends IBaseManager<Menu> {
void delete(Set<Menu> menuSet) throws ValidateException;
Menu saveMenu(Menu menu) throws ValidateException;
Menu findByPath(String path);
}
......@@ -7,7 +7,6 @@ import com.neotel.smfcore.common.exception.ValidateException;
import com.neotel.smfcore.common.utils.FileUtil;
import com.neotel.smfcore.common.utils.StringUtils;
import com.neotel.smfcore.core.language.util.MessageUtils;
import com.neotel.smfcore.security.rest.bean.dto.MenuDto;
import com.neotel.smfcore.security.rest.bean.vo.MenuMetaVo;
import com.neotel.smfcore.security.rest.bean.vo.MenuVo;
import com.neotel.smfcore.security.service.dao.IMenuDao;
......@@ -18,7 +17,6 @@ import com.neotel.smfcore.security.service.po.Menu;
import com.neotel.smfcore.security.service.po.Role;
import com.neotel.smfcore.security.service.po.User;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.util.StringUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
......@@ -326,6 +324,11 @@ public class MenuManagerImpl implements IMenuManager {
return menuDao.save(menu);
}
@Override
public Menu findByPath(String path){
return menuDao.findOneByCondition(new String[]{"path"}, new String[]{path});
}
// /**
// * 清理缓存
// * @param id 菜单ID
......
......@@ -19,6 +19,7 @@ import cn.hutool.core.util.ObjectUtil;
import com.neotel.smfcore.common.base.BasePo;
import com.neotel.smfcore.core.language.util.MessageUtils;
import lombok.*;
import org.springframework.data.annotation.Transient;
import org.springframework.data.mongodb.core.mapping.Document;
import java.io.Serializable;
......@@ -98,6 +99,12 @@ public class Menu extends BasePo implements Serializable {
*/
private String titleKey;
/**
* 父级菜单,主要用于初始化菜单,不存数据库
*/
@Transient
private Menu parentMenu;
public Boolean getHasChildren() {
if(subCount==0){
return false;
......@@ -159,16 +166,16 @@ public class Menu extends BasePo implements Serializable {
* 此方法用于构建权限菜单,type=2
*/
public static Menu CreatePerMenu( final String permission, final String title, final String pid ) {
Menu menu=new Menu(new ArrayList<Menu>(),2,permission,title,999,"","",pid,0,false,false,false,"","","");
Menu menu=new Menu(new ArrayList<Menu>(),2,permission,title,999,"","",pid,0,false,false,false,"","","",null);
return menu;
}
/**
* 此方法用户创建只用于显示的一级菜单,type=0
*/
public static Menu CreatePMenu( final String title, final Integer menuSort, final String path, final Integer subCount, final String icon ) {
public static Menu CreatePMenu( final String title, final Integer menuSort, final String path, final Integer subCount, final String icon, Menu parentMenu ) {
String titleKey=path;
Menu menu = new Menu(new ArrayList<Menu>(), 0, "", title, menuSort, path, "", "", subCount, false, false, false, title, icon,titleKey);
Menu menu = new Menu(new ArrayList<Menu>(), 0, "", title, menuSort, path, "", "", subCount, false, false, false, title, icon,titleKey,parentMenu);
return menu;
}
......
......@@ -34,7 +34,7 @@ spring:
mongodb:
host: localhost # 主机地址
port: 27017 # 端口
database: smf # 数据库
database: smf-test # 数据库
messages:
encoding: utf-8
main:
......@@ -48,3 +48,7 @@ rsa:
app:
version: '1.25.0517'
type: ""
menu:
show:
hide:
\ No newline at end of file
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!