use of com.hxkj.system.model.SysMenu in project my_curd by qinyou.
the class AuthorityInterceptor method intercept.
public void intercept(Invocation inv) {
String actionKey = inv.getActionKey();
List<SysMenu> ownSysMenus = inv.getController().getSessionAttr(Constant.OWN_MENU);
LOG.debug("permission menu: " + JsonKit.toJson(ownSysMenus));
for (SysMenu sysMenu : ownSysMenus) {
// 拥有权限
if (StrKit.notBlank(sysMenu.getUrl()) && !sysMenu.getUrl().equals("/") && actionKey.startsWith(sysMenu.getUrl())) {
LOG.debug(actionKey + " 等于 " + sysMenu.getUrl() + ", 拥有权限. ");
inv.invoke();
return;
}
}
// 没有权限
BaseController baseController = (BaseController) inv.getController();
baseController.addOpLog("访问无权限路径[" + actionKey + "]");
inv.getController().render("/WEB-INF/views/common/no_permission.html");
}
use of com.hxkj.system.model.SysMenu in project my_curd by qinyou.
the class LoginController method index.
/**
* 登录页面
*/
public void index() {
String username = getCookie(usernameKey);
String password = getCookie(passwordKey);
LOG.debug("username from cookie: " + username);
LOG.debug("password from cookie:+" + password);
if (username != null && password != null) {
SysUser sysUser = SysUser.dao.findByUsernameAndPassword(username, password);
// 用户名密码正确且未被禁用
if (sysUser != null && !sysUser.getDisabled().equals("1")) {
setSessionAttr(Constant.SYSTEM_USER, sysUser);
setSessionAttr(Constant.SYSTEM_USER_NAME, sysUser.getName());
SysUserRole sysUserRole = SysUserRole.dao.findRolesByUserId(sysUser.getId());
if (sysUserRole != null) {
setSessionAttr(Constant.SYSTEM_USER_ROLES, sysUserRole.get("roleNames"));
setSessionAttr(Constant.SYSTEM_USER_ROLES, sysUserRole.get("roleNames"));
LoginService loginService = Duang.duang(LoginService.class);
List<SysMenu> userMenus = loginService.getUserMenu(sysUserRole.get("roleIds"));
setSessionAttr(Constant.OWN_MENU, userMenus);
}
addOpLog("通过 cookie 登录");
redirect("/main");
return;
}
}
render("login.html");
}
use of com.hxkj.system.model.SysMenu in project my_curd by qinyou.
the class MainController method permissionTree.
/**
* 用户权限数据
*/
public void permissionTree() {
List<SysMenu> ownSysMenus = getSessionAttr(Constant.OWN_MENU);
List<Map<String, Object>> maps = new ArrayList<Map<String, Object>>();
// 简单的json格式数据,树形结构由前端 js算法处理
if (ownSysMenus != null) {
for (SysMenu sysMenu : ownSysMenus) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("id", sysMenu.getId());
map.put("pid", sysMenu.getPid());
map.put("iconCls", sysMenu.getIcon());
map.put("url", sysMenu.getUrl());
map.put("text", sysMenu.getName());
maps.add(map);
}
}
renderJson(maps);
}
use of com.hxkj.system.model.SysMenu in project my_curd by qinyou.
the class SysMenuController method newModel.
/**
* 新增 或者 编辑 form
*/
public void newModel() {
Integer id = getParaToInt("id");
if (id != null) {
SysMenu sysMenu = SysMenu.dao.findById(id);
setAttr("sysMenu", sysMenu);
}
render("system/sysMenu_form.html");
}
use of com.hxkj.system.model.SysMenu in project my_curd by qinyou.
the class SysMenuController method allMenu.
/**
* 全部菜单
*/
public void allMenu() {
List<SysMenu> sysMenus = SysMenu.dao.findAll();
List<Map<String, Object>> maps = new ArrayList<Map<String, Object>>();
for (SysMenu sysMenu : sysMenus) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("id", sysMenu.getId());
map.put("pid", sysMenu.getPid());
map.put("text", sysMenu.getName());
map.put("iconCls", sysMenu.getIcon());
map.put("open", true);
maps.add(map);
}
renderJson(maps);
}
Aggregations