zoukankan      html  css  js  c++  java
  • 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添加记录

    }

    }

    }

  • 相关阅读:
    spring整合curator实现分布式锁
    curator操作zookeeper
    zk创建集群
    zookeeper下的基本操作
    java语音转文字
    netty的数据通信之心跳检测
    arm B和BL指令浅析
    NAND FLASH驱动程序
    外设位宽为8、16、32时,CPU与外设之间地址线的连接方法
    内存接口原理图笔记
  • 原文地址:https://www.cnblogs.com/shan1393/p/9265594.html
Copyright © 2011-2022 走看看