登录权限、增加界面下拉框
-
- 一、登录权限
- 前言
- 1、 根据不同的用户看到不同的菜单
- 1.1需要一个权限中间表RolePermission实体类
- 1.2 RolePermissionDao方法
- 1.3 修改PermissionDao,在原来方法的基础上重载一个方法,方法中的参数不同
- 1.4 修改PermissionAction实现管理树形菜单
- 二、增加界面以及下拉菜单
- 1.修改后台增加界面
- 效果图
- 2.实现分类中的下拉框
- 2.1 Category(类别表)实体类
- 2.2 CategoryDao方法(查询所有类别)
- 2.3 CategoryAction业务逻辑层
- 2.4 配置xml
- 2.5 book.js事件
- book.js
- 最终效果
一、登录权限
前言
上篇文章我们分析了权限划分,现在来用代码实现。
权限划分分析的路径:
https://blog.csdn.net/qq_47906421/article/details/107142609
1、 根据不同的用户看到不同的菜单
1.1需要一个权限中间表RolePermission实体类
package com.meng.entity;
public class RolePermission {
private long rid;
private long pid;
public long getRid() {
return rid;
}
public void setRid(long rid) {
this.rid = rid;
}
public long getPid() {
return pid;
}
public void setPid(long pid) {
this.pid = pid;
}
public RolePermission() {
super();
}
public RolePermission(long rid, long pid) {
super();
this.rid = rid;
this.pid = pid;
}
@Override
public String toString() {
return "RolePermission [rid=" + rid + ", pid=" + pid + "]";
}
}
1.2 RolePermissionDao方法
根据角色编号(rid)进行查询
package com.meng.dao;
import java.util.List;
import com.meng.entity.RolePermission;
import com.meng.util.BaseDao;
import com.meng.util.PageBean;
public class RolePermissionDao extends BaseDao<RolePermission> {
public List<RolePermission> list(RolePermission rolePermission,PageBean pageBean) throws Throwable{
String sql="select * from t_easyui_Role_Permission where true";
long rid=rolePermission.getRid();
if(rid!=0) {
sql+=" and rid="+rid;
}
return super.executeQuery(sql, pageBean, RolePermission.class);
}
}
1.3 修改PermissionDao,在原来方法的基础上重载一个方法,方法中的参数不同
package com.meng.dao;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.meng.entity.Permission;
import com.meng.util.BaseDao;
import com.meng.util.BuildTree;
import com.meng.util.PageBean;
import com.meng.vo.TreeVo;
public class PermissionDao extends BaseDao<Permission> {
/**
* 是直接从数据库中获取到数据
* @param permission
* @param pageBean
* @return
* @throws Exception
*/
public List<Permission> list(Permission permission,PageBean pageBean) throws Exception {
String sql = "select * from t_easyui_Permission";
return super.executeQuery(sql, pageBean, Permission.class);
}
// 重载list方法
public List<Permission> listPermission(String pids,PageBean pageBean) throws Throwable {
String sql = "select * from t_easyui_Permission where id in ("+pids+")";
return super.executeQuery(sql, pageBean, Permission.class);
}
/**
* 能够将数据库中的数据,体现父子结构
* @param permission
* @param pageBean
* @return
* @throws Exception
*/
public List<TreeVo<Permission>> topNode(Permission permission,PageBean pageBean) throws Throwable {
List<Permission> list = this.list(permission, pageBean);
List<TreeVo<Permission>> nodes = new ArrayList<TreeVo<Permission>>();
TreeVo treeVo = null;
for (Permission p : list) {
treeVo = new TreeVo()