コード例 #1
0
 /**
  * 给角色授权
  *
  * @param roleId
  * @param TreeService rights
  * @return
  */
 public void impowerRole(String roleId, TreeService rights) {
   // TODO Auto-generated method stub
   SysRole sr = (SysRole) dao.loadEntity(SysRole.class, roleId);
   Set s = sr.getSysRightRoles();
   Iterator i = s.iterator();
   while (i.hasNext()) {
     SysRightRole srr = (SysRightRole) i.next();
     dao.removeEntity(srr);
   }
   dao.flush();
   // String rootName = rights.getRoot().getId();
   Map registry = rights.getRegistry();
   Iterator iterator = registry.keySet().iterator();
   while (iterator.hasNext()) {
     String key = (String) iterator.next();
     ViewTreeControlNode node = (ViewTreeControlNode) registry.get(key);
     String nodeType = node.getType();
     if (nodeType == null) nodeType = "";
     // 是角色图标 类型是leaf_right_%
     if (SysStaticParameter.RICON.equalsIgnoreCase(node.getTmpIcon())
         && nodeType.indexOf("leaf_right") != -1) {
       SysRightRole dbsrr = new SysRightRole();
       dbsrr.setId(ks.getNext("SYS_RIGHT_ROLE"));
       dbsrr.setSysRole(sr);
       SysLeafRight slr = (SysLeafRight) dao.loadEntity(SysLeafRight.class, node.getId());
       dbsrr.setSysLeafRight(slr);
       dao.saveEntity(dbsrr);
     }
   }
 }
コード例 #2
0
  public void grantRoleRights(String roleId, List<String> leafRightIds) {

    SysRole sr = (SysRole) dao.loadEntity(SysRole.class, roleId);
    for (int i = 0; i < leafRightIds.size(); i++) {
      SysRightRole srr = new SysRightRole();
      // System.out.println(leafRightIds.get(i));
      SysLeafRight slr = (SysLeafRight) dao.loadEntity(SysLeafRight.class, leafRightIds.get(i));
      srr.setId(ks.getNext("SYS_RIGHT_ROLE"));
      srr.setSysRole(sr);
      srr.setSysLeafRight(slr);
      dao.saveEntity(srr);
    }
  }