privilege.jsp 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
  2. <html>
  3. <head>
  4. <title>我的工作台</title>
  5. <%@ include file="../common/header.jsp" %>
  6. <link rel="stylesheet" href="${contextPath }/css/zTreeStyle/zTreeStyle.css" type="text/css">
  7. <script type="text/javascript" src="${contextPath }/js/jquery.ztree.core-3.5.js"></script>
  8. <script type="text/javascript" src="${contextPath }/js/jquery.ztree.excheck-3.5.js"></script>
  9. <script type="text/javascript" src="${contextPath }/js/jquery.ztree.exedit-3.5.js"></script>
  10. <script type="text/javascript">
  11. var zTree,rMenu,zNodes;
  12. $(document).ready(function(){
  13. loadTree(); //加载树
  14. zTree = $.fn.zTree.getZTreeObj("treeDemo");
  15. rMenu = $("#rMenu");
  16. zTree.expandAll(true);
  17. //页面加载时候默认选中的节点
  18. changeRole("${adminRoleId }");
  19. });
  20. //加载树
  21. function loadTree(){
  22. zNodes = getTreeLists();
  23. var setting = {
  24. data: {
  25. simpleData: {
  26. enable: true
  27. }
  28. },
  29. check: {
  30. enable: true,
  31. chkboxType: { "Y": "p", "N": "ps" }
  32. }
  33. };
  34. $.fn.zTree.init($("#treeDemo"), setting, zNodes);
  35. }
  36. //获取tree数据
  37. function getTreeLists(){
  38. $.ajax({
  39. async: false,
  40. type: 'POST',
  41. dataType:'json', //返回类型json
  42. url: "${contextPath }/admin/adminuser/treelist.html",
  43. error: function(){alert("系统错误");},
  44. success: function(json){
  45. //console.log(json);
  46. zNodes = json;
  47. }
  48. });
  49. return zNodes;
  50. }
  51. //显示选中
  52. function getAllCheckTreeNodes(){
  53. var pIdstr = '';
  54. var adminRoleId = $("#adminRoleId").val();
  55. var checkedNodes = zTree.getCheckedNodes(true);
  56. for ( var i = 0; i < checkedNodes.length; i++) {
  57. if(pIdstr == ''){
  58. pIdstr = checkedNodes[i].id;
  59. }else{
  60. pIdstr += "," + checkedNodes[i].id;
  61. }
  62. }
  63. if(pIdstr == ''){
  64. alert("请选择页面权限");
  65. }else{
  66. $.ajax({
  67. async: false,
  68. type: 'POST',
  69. dataType: 'json',
  70. data : 'pIdstr='+pIdstr+'&adminRoleId='+adminRoleId,
  71. url: "${contextPath }/admin/adminuser/saveprivilege.html",
  72. error: function(){alert("系统错误");},
  73. success: function(json){
  74. if (json.status == 'success') {
  75. //window.location.reload();
  76. alert(json.msg);
  77. }
  78. }
  79. });
  80. }
  81. //保存成功后跳转回权限列表
  82. document.location.href="${contextPath}/admin/adminuser/role.html";
  83. }
  84. //角色改变后选中该角色的权限
  85. function changeRole(obj){
  86. //权限全部不勾选
  87. zTree.checkAllNodes(false);
  88. $.ajax({
  89. async: false,
  90. type: 'POST',
  91. dataType: 'json',
  92. data : 'adminRoleId='+obj,
  93. url: "${contextPath }/admin/adminuser/changerole.html?type=page",
  94. error: function(){alert("系统错误");},
  95. success: function(json){
  96. if (json.status == 'success') {
  97. var pstr = json.value;
  98. if(pstr != ""){
  99. //角色有权限勾选所属权限
  100. var pid = pstr.split(",");
  101. for(var i = 0; i < pid.length; i++) {
  102. var nodes = zTree.getNodesByParam("id",""+pid[i]+"", null);
  103. zTree.checkNode(nodes[0], true, true);
  104. }
  105. }
  106. }
  107. }
  108. });
  109. }
  110. </script>
  111. </head>
  112. <body>
  113. <div class="navfrm">
  114. <span>当前位置:</span>
  115. <span><a href="${contextPath }/admin/welcome.html">首页</a></span>
  116. <span>&nbsp;>>&nbsp;</span>
  117. <span>页面权限</span>
  118. </div>
  119. <table cellpadding="3" cellspacing="0" width="100%" class="ptabsty">
  120. <tbody>
  121. <tr>
  122. <td width="10%" align="right"><b>角色名称:</b></td>
  123. <td>
  124. <select id="adminRoleId" name="adminRoleId" style="width:100px;" onchange="changeRole(this.value);">
  125. <c:forEach items="${rolelists }" var="role">
  126. <option value="${role.ADMIN_ROLE_ID }" <c:if test="${adminRoleId==role.ADMIN_ROLE_ID}">selected="selected"</c:if>>
  127. <c:out value="${role.ADMIN_ROLE_NAME }" />
  128. </option>
  129. </c:forEach>
  130. </select>
  131. <input type="button" class="sysub" value="保存" onclick="getAllCheckTreeNodes();" />
  132. </td>
  133. </tr>
  134. <tr>
  135. <td></td>
  136. <td><ul id="treeDemo" class="ztree"><li>加载中...</li><li><img src="${contextPath }/images/loading.gif" /></li></ul></td>
  137. </tr>
  138. </tbody>
  139. </table>
  140. </body>
  141. </html>