easyui权限

权限的目的
是为了让不同的用户可以操作系统中不同资源
直接点说就是不同的用户可以看到左侧不同的菜单

**思考:**我们想一个用户对应多个菜单
然后一个菜单可以对应多个用户
其实这就是user与menu的多对多的关系

思路:
1、菜单不同的原因在于,利用不同menuid进行查询,原本默认查询的是所有菜单,是通过-1去查的;
2、menuid由来:是登录用户id查询中间表数据所得来的

MenuDao 
package com.yq.dao;

import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.yq.entity.TreeNode;
import com.yq.util.JsonBaseDao;
import com.yq.util.JsonUtils;
import com.yq.util.PageBean;
import com.yq.util.StringUtils;

/**
 * 1.查询数据库所以数据用于easyui的tree树形展示(但是直接得来的数据格式easyui不识别)
 * 2.递归查询节点集合,形成父节点关系,具备层次结构
 * 3.转格式
 * @author 陌陌
 *
 */
public class MenuDao extends JsonBaseDao{
	/**
	 *  List<TreeNode>加上ObjectMapper可以转换成easyui控件识别的json串
	 * @param map
	 * @param pageBean
	 * @return
	 * @throws SQLException 
	 * @throws IllegalAccessException 
	 * @throws InstantiationException 
	 */
public List<TreeNode> listTreeNode(Map<String, String[]> map,PageBean pageBean) throws InstantiationException, IllegalAccessException, SQLException{
	List<Map<String, Object>> listMenu=this.listMenuAuth(map, pageBean);
	List<TreeNode> listTreeNode=new ArrayList<TreeNode>();
	this.listMapToTreeNode(listMenu, listTreeNode);
	return listTreeNode;
	
}

/**
 * 按照不同用户登陆能够访问不同菜单
 * @param map
 * @param pageBean
 * @return
 * @throws InstantiationException
 * @throws IllegalAccessException
 * @throws SQLException
 */
public List<Map<String, Object>> listMenuAuth(Map<String, String[]> map,PageBean pageBean) throws InstantiationException, IllegalAccessException, SQLException{
	String sql="select * from t_easyui_menu where true";
	String id=JsonUtils.getParamVal(map, "Menuid");
	if(StringUtils.isNotBlank(id)) {
//	原生节点的id当作子节点父id进行查询	
		sql +=" and menuid in ("+id+")";
	}else {
		sql +=" and menuid=000";
	}
	return super.executeQuery(sql, pageBean);
	
}
/**
 * List<Map<String, Object>> 
 * ->[{Menuid:001,Menuname:学生管理,children:[]},{Menuid:001,Menuname:学生管理}]
 * 接下来需要递归查询子节点的集合存入当前节点
 * 
 * @param map
 * @param pageBean
 * @retu
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值