2菜单数据添加 4.1角色添加

2菜单数据添加  

前台页面:  先通过MenuAction_findALl.action 去展示菜单, Combotree中菜单名称是text属性需要在实体类中添加getText方法 return name; 

通过点击保存按钮 保存菜单 执行menuAction_save.aciton

1.1 角色添加

页面:pages/system/role_add.jsp

 

实现步骤:

1、 页面端

a) 第一步:使用复选框checkbox展示权限数据

b) 第二步:使用ztree以简单数据格式展示菜单数据

c) 第三步:提交表单

2、 服务端

a) 第一步:保存角色数据

b) 第二步:角色关联权限

第三步:角色关联菜单

1.权限前台页面:(1)权限的展示: 权限用checkbox展示. 发送post请求. 返回的参数.id  .name获取id和name,

往input标签里面拼接vlaue=id  和name 获取checkbox对象.append(input标签)

菜单前台页面:(1)菜单的展示  确定setting中的simpleData:{enable:true 使用简单数据格式(pid上级菜单格式)} check:{enable:true ztree数据勾选效果}

发送post请求查询菜单数据  然后进行ztree初始化  因为没有pid属性 所以在实体类中添加getpId方法 return parentMenu.getId();

角色保存

public void save(Role model, String menuIds, Integer[] permissionIds) {

//保存完角色对象:持久态

roleDao.save(model);

//角色关联菜单  

if(StringUtils.isNotBlank(menuIds)){

String[] strings = menuIds.split(",");

for (String menuId : strings) {

Menu menu = menuDao.findOne(Integer.parseInt(menuId));

//持久态关联持久态

model.getMenus().add(menu);  //向中间表T_role_menu添加记录

}

}

 

//角色关联权限

if(permissionIds!=null && permissionIds.length>0){

for (Integer permissionId : permissionIds) {

Permission permission = new Permission();

permission.setId(permissionId);//托管态 TODO 也可以根据ID调用dao查询到持久态权限对象

//持久态关联托管态

model.getPermissions().add(permission);//向中间表T_role_permission添加记录

}

}

}

猜你喜欢

转载自www.cnblogs.com/shan1393/p/9265594.html