authority.jsp 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690
  1. <%--
  2. Created by IntelliJ IDEA.
  3. User: Administrator
  4. Date: 2018/4/12 0012
  5. Time: 15:21
  6. To change this template use File | Settings | File Templates.
  7. --%>
  8. <%@ page contentType="text/html;charset=UTF-8" language="java" %>
  9. <!-- 用bootstrap先应付一下 -->
  10. <!-- Latest compiled and minified CSS -->
  11. <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
  12. <!-- Optional theme -->
  13. <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap-theme.min.css">
  14. <!-- Latest compiled and minified JavaScript -->
  15. <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
  16. <div class="row">
  17. <ul class="md-tab-group">
  18. <li>
  19. <div class="ripple-button" id="_user_role" onclick="showTab('user_role')">用户权限一览</div>
  20. </li>
  21. <li>
  22. <div class="ripple-button" id="_roles" onclick="showTab('roles')">角色一览</div>
  23. </li>
  24. <li>
  25. <div class="ripple-button" id="_permissions" onclick="showTab('permissions')">权限一览</div>
  26. </li>
  27. <div class="tab-button"></div>
  28. </ul>
  29. </div>
  30. <div>
  31. <!-- 用户列表 -->
  32. <div id="user_role">
  33. <h2>用户管理</h2>
  34. <p id="user_count"></p>
  35. <form action="#" id="user_query">
  36. 用户过滤<input name="query">
  37. 页数<input name="pageNumber" type="number" value="1" onchange="loadUsers();">
  38. 每页大小<input name="pageSize" type="number" value="10" onchange="loadUsers();">
  39. </form>
  40. <div class="panel panel-default">
  41. <div class="panel-heading">用户一览</div>
  42. <table class="table">
  43. <thead>
  44. <tr>
  45. <th>#</th>
  46. <th>名称</th>
  47. <th>别称</th>
  48. <th>角色</th>
  49. <th>特许权限</th>
  50. <th>操作</th>
  51. </tr>
  52. </thead>
  53. <tbody id="user_list"></tbody>
  54. </table>
  55. </div>
  56. </div>
  57. <!-- 角色列表 -->
  58. <div id="roles">
  59. <h2>角色管理</h2>
  60. <p id="role_count"></p>
  61. <form action="#" id="role_query">
  62. 角色过滤<input name="query">
  63. 页数<input name="pageNumber" type="number" value="1" onchange="loadRoles();">
  64. 每页大小<input name="pageSize" type="number" value="10" onchange="loadRoles();">
  65. </form>
  66. <div>
  67. </div>
  68. <button onclick="role_add();" class="btn btn-default">新增角色</button>
  69. <div class="panel panel-default">
  70. <div class="panel-heading">角色一览</div>
  71. <table class="table">
  72. <thead>
  73. <tr>
  74. <th>#</th>
  75. <th>角色</th>
  76. <th>别称</th>
  77. <th>描述</th>
  78. <th>权限</th>
  79. <th>操作</th>
  80. </tr>
  81. </thead>
  82. <tbody id="role_list"></tbody>
  83. </table>
  84. </div>
  85. </div>
  86. <!-- 权限列表 -->
  87. <div id="permissions">
  88. <h2>权限管理</h2>
  89. <p id="permission_count"></p>
  90. <form action="#" id="permission_query">
  91. 权限过滤<input name="query">
  92. 页数<input name="pageNumber" type="number" value="1" onchange="loadPermissions();">
  93. 每页大小<input name="pageSize" type="number" value="10" onchange="loadPermissions();">
  94. </form>
  95. <button onclick="permission_add();" class="btn btn-default">新增</button>
  96. <div class="panel panel-default">
  97. <div class="panel-heading">权限一览</div>
  98. <table class="table">
  99. <thead>
  100. <tr>
  101. <th>#</th>
  102. <th>权限</th>
  103. <th>别称</th>
  104. <th>描述</th>
  105. <th>操作</th>
  106. </tr>
  107. </thead>
  108. <tbody id="permission_list"></tbody>
  109. </table>
  110. </div>
  111. </div>
  112. </div>
  113. <!-- 各种默认隐藏的div -->
  114. <!-- 修改用户的特许权限 -->
  115. <div style="display: none;" id="user_permission_modify">
  116. <p>
  117. <input id="user_permission_modify_id" value="" hidden="true">
  118. <input id="user_permission_modify_name" value="" hidden="true">
  119. </p>
  120. <form action="#">
  121. <div id="user_permissions_div"></div>
  122. </form>
  123. <button onclick="user_permission_modify_submit();">提交</button>
  124. </div>
  125. <!-- 修改用户所属的角色 -->
  126. <div style="display: none;" id="user_role_modify">
  127. <p>
  128. <input id="user_role_modify_id" value="" hidden="true">
  129. <input id="user_role_modify_name" value="" hidden="true">
  130. </p>
  131. <form action="#">
  132. <div id="user_roles_div"></div>
  133. </form>
  134. <button onclick="user_role_modify_submit();">提交</button>
  135. </div>
  136. <!-- 修改角色所拥有的权限 -->
  137. <div style="display: none;" id="role_permission_modify">
  138. <p>
  139. <input id="role_permission_modify_id" value="" hidden="true">
  140. <input id="role_permission_modify_name" value="" hidden="true">
  141. </p>
  142. <form action="#">
  143. <div id="role_permissions_div"></div>
  144. </form>
  145. <button onclick="role_permission_modify_submit();">提交</button>
  146. </div>
  147. <!-- 修改角色的一般属性,如别称,描述 -->
  148. <div style="display: none;" id="role_modify">
  149. <div style="display: none;">
  150. <input name="role_modify_id" id="role_modify_id">
  151. </div>
  152. <div>
  153. <div class="md-text-field has-float-label">
  154. <label>${msg['authority.role.alias']}</label>
  155. <input type="text" id="role_modify_alias" name="alias" nm="${msg['authority.role.alias']}" value="">
  156. <hr class="underline">
  157. <hr class="underline-focus">
  158. <div class="err-tip">别名不能为空</div>
  159. </div>
  160. </div>
  161. <div>
  162. <div class="md-text-field has-float-label">
  163. <label>${msg['authority.role.description']}</label>
  164. <input type="text" id="role_modify_description" name="description" nm="${msg['authority.role.description']}" value="">
  165. <hr class="underline">
  166. <hr class="underline-focus">
  167. <div class="err-tip">描述不能为空</div>
  168. </div>
  169. </div>
  170. <div>
  171. <button class="md-button raised-button is-primary" type="submit" onclick="role_update_submit();">
  172. <span class="md-button-label">修改</span>
  173. </button>
  174. <button class="md-button raised-button is-primary" type="submit" onclick="$('#role_modify').hide();">
  175. <span class="md-button-label">取消</span>
  176. </button>
  177. </div>
  178. </div>
  179. <!-- 修改权限的一般属性 -->
  180. <div style="display: none;" id="permission_modify">
  181. <div style="display: none;">
  182. <input name="permission_modify_id" id="permission_modify_id">
  183. </div>
  184. <div>
  185. <div class="md-text-field has-float-label">
  186. <label>${msg['authority.permission.alias']}</label>
  187. <input type="text" id="permission_modify_alias" name="alias" nm="${msg['authority.permission.alias']}" value="">
  188. <hr class="underline">
  189. <hr class="underline-focus">
  190. <div class="err-tip">别名不能为空</div>
  191. </div>
  192. </div>
  193. <div>
  194. <div class="md-text-field has-float-label">
  195. <label>${msg['authority.permission.description']}</label>
  196. <input type="text" id="permission_modify_description" name="description" nm="${msg['authority.permission.description']}" value="">
  197. <hr class="underline">
  198. <hr class="underline-focus">
  199. <div class="err-tip">描述不能为空</div>
  200. </div>
  201. </div>
  202. <div>
  203. <button class="md-button raised-button is-primary" type="submit" onclick="permission_update_submit();">
  204. <span class="md-button-label">修改</span>
  205. </button>
  206. <button class="md-button raised-button is-primary" type="submit" onclick="$('#permission_modify').hide();">
  207. <span class="md-button-label">取消</span>
  208. </button>
  209. </div>
  210. </div>
  211. <script>
  212. _r = {};
  213. /*页面片段的初始化方法*/
  214. function myInit(args) {
  215. loadUsers();
  216. loadRoles();
  217. loadPermissions();
  218. $('#_user_role').click();
  219. }
  220. /**
  221. * Tab标签卡切换
  222. */
  223. function showTab(tab) {
  224. $('.ripple-button').each(function (_, z) {
  225. z = $(z);
  226. tabId = z.attr('id');
  227. if (tabId == undefined)
  228. return;
  229. tabId = tabId.substring(1);
  230. TAB = $('#' + tabId);
  231. if (tabId == tab) {
  232. TAB.show();
  233. } else {
  234. TAB.hide();
  235. }
  236. })
  237. }
  238. function loadUsers() {
  239. $.ajax({
  240. url: home_base + '/admin/authority/users',
  241. data: $('#user_query').serialize(),
  242. dataType: 'json',
  243. type: 'POST',
  244. success: function (re) {
  245. if (!re.ok) {
  246. alert(re.msg);
  247. return;
  248. }
  249. data = re.data;
  250. $('#user_count').html('共' + data.pager.recordCount + '个用户,总计' + data.pager.pagerCount + '页');
  251. var list_html = '';
  252. for (var i = 0; i < data.list.length; i++) {
  253. var user = data.list[i];
  254. var pstr = '';
  255. for (var j = 0; j < user.permissions.length; j++) {
  256. var p = user.permissions[j];
  257. if (p.alias)
  258. pstr += p.alias;
  259. else
  260. pstr += p.name;
  261. pstr += ' ';
  262. if (j > 4 && user.permissions.length > 4) {
  263. pstr += '等' + user.permissions.length + '种权限';
  264. break;
  265. }
  266. }
  267. var rstr = '';
  268. for (var j = 0; j < user.roles.length; j++) {
  269. var r = user.roles[j];
  270. if (r.alias)
  271. rstr += r.alias;
  272. else
  273. rstr += r.name;
  274. rstr += ' ';
  275. if (j > 4 && user.roles.length > 4) {
  276. rstr += '等' + user.roles.length + '种角色';
  277. break;
  278. }
  279. }
  280. var tmp = '\n<tr>'
  281. + '<td>' + user.id + '</td>'
  282. + '<td>' + user.name + '</td>'
  283. + '<td>' + (user.alias ? user.alias : '') + '</td>'
  284. + '<td>' + rstr + '</td>'
  285. + '<td>' + pstr + '</td>'
  286. + '<td>'
  287. + ' <button onclick="user_role_update("' + user.id + '");" class="btn btn-default">修改角色</button>'
  288. + ' <button onclick="user_permission_update("' + user.id + '");" class="btn btn-default">修改特许权限</button>'
  289. + '</td>'
  290. + '</tr>'
  291. list_html += tmp;
  292. }
  293. $('#user_list').html(list_html);
  294. _r._user_roles = data;
  295. }
  296. });
  297. }
  298. function loadRoles() {
  299. $.ajax({
  300. url: home_base + '/admin/authority/roles',
  301. data: $('#role_query').serialize(),
  302. dataType: 'json',
  303. type: 'POST',
  304. success: function (re) {
  305. if (!re.ok) {
  306. alert(re.msg);
  307. return;
  308. }
  309. data = re.data;
  310. $('#role_count').html('共' + data.pager.recordCount + '个角色,总计' + data.pager.pagerCount + '页');
  311. var list_html = '';
  312. for (var i = 0; i < data.list.length; i++) {
  313. var role = data.list[i];
  314. var pstr = '';
  315. for (var j = 0; j < role.permissions.length; j++) {
  316. var p = role.permissions[j];
  317. if (p.alias)
  318. pstr += p.alias;
  319. else
  320. pstr += p.name;
  321. pstr += ' ';
  322. if (j > 4 && role.permissions.length > 4) {
  323. pstr += '等' + role.permissions.length + '种权限';
  324. break;
  325. }
  326. }
  327. var tmp = '\n<tr>'
  328. + '<td>' + role.id + '</td>'
  329. + '<td>' + role.name + '</td>'
  330. + '<td>' + (role.alias ? role.alias : '') + '</td>'
  331. + '<td></td>'
  332. + '<td>' + pstr + '</td>'
  333. + '<td>'
  334. + ' <button onclick="role_update(' + role.id + ');" class="btn btn-default">修改描述</button>'
  335. + ' <button onclick="role_permission_update(' + role.id + ');" class="btn btn-default">修改权限</button>'
  336. + ' <button onclick="role_delete(' + role.id + ');" class="btn btn-default">删除</button>'
  337. + '</td>'
  338. + '</tr>'
  339. list_html += tmp;
  340. }
  341. $('#role_list').html(list_html);
  342. _r._roles = data;
  343. }
  344. });
  345. }
  346. function loadPermissions() {
  347. $.ajax({
  348. url: home_base + '/admin/authority/permissions',
  349. data: $('#permission_query').serialize(),
  350. dataType: 'json',
  351. type: 'POST',
  352. success: function (re) {
  353. if (!re.ok) {
  354. alert(re.msg);
  355. return;
  356. }
  357. data = re.data;
  358. $('#permission_count').html('共' + data.pager.recordCount + '个权限,总计' + data.pager.pagerCount + '页');
  359. var list_html = '';
  360. for (var i = 0; i < data.list.length; i++) {
  361. var permission = data.list[i];
  362. var tmp = '\n<tr>'
  363. + '<td>' + permission.id + '</td>'
  364. + '<td>' + permission.name + '</td>'
  365. + '<td>' + (permission.alias ? permission.alias : '') + '</td>'
  366. + '<td>' + (permission.description ? permission.description : '') + '</td>'
  367. + '<td>'
  368. + ' <button onclick="permission_update(' + permission.id + ');" class="btn btn-default">修改</button>'
  369. + ' <button onclick="permission_delete(' + permission.id + ');" class="btn btn-default">删除</button>'
  370. + '</td>'
  371. + '</tr>'
  372. list_html += tmp;
  373. }
  374. $('#permission_list').html(list_html);
  375. _r._roles = data;
  376. }
  377. });
  378. }
  379. // 各种操作哦哦哦哦哦哦哦哦哦
  380. /*更新用户特许权限*/
  381. function user_permission_update(user_id) {
  382. $.ajax({
  383. url: home_base + '/admin/authority/user/fetch/permission',
  384. dataType: 'json',
  385. data: {id: user_id},
  386. success: function (re) {
  387. if (re && re.ok) {
  388. var html = '';
  389. var ps = re.data.permissions;
  390. for (var i = 0; i < ps.length; i++) {
  391. var p = ps[i];
  392. var flag = false;
  393. for (var j = 0; j < re.data.user.permissions.length; j++) {
  394. if (re.data.user.permissions[j].id == p.id) {
  395. flag = true;
  396. break;
  397. }
  398. }
  399. if (p.alias) {
  400. html += p.alias;
  401. } else {
  402. html += p.name;
  403. }
  404. if (flag) {
  405. html += '<input type="checkbox" t="checkbox_user_permission" pid="' + p.id + '" checked="true" />\n'
  406. } else {
  407. html += '<input type="checkbox" t="checkbox_user_permission" pid="' + p.id + '" />\n'
  408. }
  409. }
  410. $('#user_permission_modify_id').val('' + user_id);
  411. $('#user_permission_modify_name').val('' + re.data.user.name);
  412. $('#user_permissions_div').html(html);
  413. $('#user_permission_modify').show();
  414. }
  415. }
  416. });
  417. }
  418. /*将用户的特许权限提交到服务器*/
  419. function user_permission_modify_submit() {
  420. var user_id = $('#user_permission_modify_id').val();
  421. var ps = $('input[t="checkbox_user_permission"]:checked');
  422. var pids = [];
  423. ps.each(function (i, p_input) {
  424. pids.push($(p_input).attr('pid'));
  425. });
  426. $.ajax({
  427. url: home_base + '/admin/authority/user/update',
  428. type: 'POST',
  429. data: JSON.stringify({'user': {id: user_id}, 'permissions': pids}),
  430. success: function () {
  431. loadUsers();
  432. $('#user_permission_modify').hide();
  433. }
  434. })
  435. }
  436. function user_role_update(user_id) {
  437. $.ajax({
  438. url: home_base + '/admin/authority/user/fetch/role',
  439. dataType: 'json',
  440. data: {id: user_id},
  441. success: function (re) {
  442. if (re && re.ok) {
  443. var html = '';
  444. var rs = re.data.permissions;
  445. for (var i = 0; i < rs.length; i++) {
  446. var r = rs[i];
  447. var flag = false;
  448. for (var j = 0; j < re.data.user.roles.length; j++) {
  449. if (re.data.user.roles[j].id == r.id) {
  450. flag = true;
  451. break;
  452. }
  453. }
  454. if (r.alias) {
  455. html += r.alias;
  456. } else {
  457. html += r.name;
  458. }
  459. if (flag) {
  460. html += '<input type="checkbox" t="checkbox_user_role" rid="' + r.id + '" checked="true" />\n'
  461. } else {
  462. html += '<input type="checkbox" t="checkbox_user_role" rid="' + r.id + '" />\n'
  463. }
  464. }
  465. $('#user_role_modify_id').val('' + user_id);
  466. $('#user_role_modify_name').val('' + re.data.user.name);
  467. $('#user_roles_div').html(html);
  468. $('#user_role_modify').show();
  469. }
  470. }
  471. });
  472. }
  473. function user_role_modify_submit() {
  474. var user_id = $('#user_role_modify_id').val();
  475. var rs = $('input[t="checkbox_user_role"]:checked');
  476. var rids = [];
  477. rs.each(function (i, r_input) {
  478. rids.push($(r_input).attr('rid'));
  479. });
  480. $.ajax({
  481. url: home_base + '/admin/authority/user/update',
  482. type: 'POST',
  483. data: JSON.stringify({'user': {id: user_id}, 'roles': rids}),
  484. success: function () {
  485. loadUsers();
  486. $('#user_role_modify').hide();
  487. }
  488. })
  489. }
  490. // 角色相关操作
  491. function role_update(role_id) {
  492. for (var i = 0; i < _r._roles.list.length; i++) {
  493. var role = _r._roles.list[i];
  494. if (role.id == role_id) {
  495. $('#role_modify_id').attr('value', role_id);
  496. $('#role_modify_alias').attr('value', role.alias);
  497. $('#role_modify_description').attr('value', role.description);
  498. $('#role_modify').show();
  499. return;
  500. }
  501. }
  502. }
  503. /*将角色的一般属性的修改发送到服务器进行修改*/
  504. function role_update_submit() {
  505. var role_id = $("#role_modify_id").val();
  506. var p = {id:role_id};
  507. p["alias"] = $("#role_modify_alias").val();
  508. p["description"] = $("#role_modify_description").val();
  509. console.log(p);
  510. $.ajax({
  511. url : home_base + "/admin/authority/role/update",
  512. type : "POST",
  513. data : JSON.stringify({"role":p}),
  514. success : function() {
  515. loadRoles();
  516. $("#role_modify").hide();
  517. }
  518. // TODO 处理异常
  519. });
  520. }
  521. /*删除一个角色*/
  522. function role_delete(role_id) {
  523. // TODO 提示用户确认
  524. $.ajax({
  525. url : home_base + "/admin/authority/role/delete",
  526. type : "POST",
  527. data : JSON.stringify({id:role_id})
  528. });
  529. loadRoles();
  530. }
  531. /*新增角色*/
  532. function role_add() {
  533. var role_name = prompt("请输入新角色的名称,仅限英文字母,长度3到10个字符");
  534. var re = /[a-zA-Z]{3,10}/;
  535. if (role_name && re.exec(role_name)) {
  536. $.ajax({
  537. url : home_base + "/admin/authority/role/add",
  538. type : "POST",
  539. data : JSON.stringify({name:role_name}),
  540. success : function () {
  541. loadRoles();
  542. }
  543. });
  544. }
  545. }
  546. /*更新角色所拥有的权限列表,这个方法用于显示多选框*/
  547. function role_permission_update(role_id) {
  548. $.ajax({
  549. url : home_base + "/admin/authority/role/fetch",
  550. dataType : "json",
  551. data : {id:role_id},
  552. success : function (re) {
  553. if (re && re.ok) {
  554. console.log(re.data);
  555. var html = "";
  556. var ps = re.data.permissions;
  557. for (var i = 0; i < ps.length; i++) {
  558. var p = ps[i];
  559. var flag = false;
  560. for (var j = 0; j < re.data.role.permissions.length; j++) {
  561. if (re.data.role.permissions[j].id == p.id) {
  562. flag = true;
  563. break;
  564. }
  565. }
  566. if (p.alias) {
  567. html += p.alias;
  568. } else {
  569. html += p.name;
  570. }
  571. if (flag) {
  572. html += "<input type='checkbox' t='checkbox_role_permission' pid='" + p.id + "' checked='true'>\n"
  573. } else {
  574. html += "<input type='checkbox' t='checkbox_role_permission' pid='" + p.id + "'>\n"
  575. }
  576. }
  577. $("#role_permission_modify_id").val(""+role_id);
  578. $("#role_permission_modify_name").val(""+re.data.role.name);
  579. $("#role_permissions_div").html(html);
  580. $("#role_permission_modify").show();
  581. }
  582. }
  583. });
  584. }
  585. /*将角色的权限列表提交到服务器去*/
  586. function role_permission_modify_submit() {
  587. var role_id = $("#role_permission_modify_id").val();
  588. var ps = $("input[t='checkbox_role_permission']:checked");
  589. console.log(ps);
  590. console.log(role_id);
  591. var pids = [];
  592. ps.each(function(i, p_input) {
  593. pids.push($(p_input).attr("pid"));
  594. });
  595. $.ajax({
  596. url : home_base + "/admin/authority/role/update",
  597. type : "POST",
  598. data : JSON.stringify({"role":{id:role_id}, "permissions":pids}),
  599. success : function() {
  600. loadRoles();
  601. $("#role_permission_modify").hide();
  602. }
  603. });
  604. }
  605. /*更新权限的一般信息,显示输入框*/
  606. function permission_update(permission_id) {
  607. for (var i=0;i<_r._permissions.list.length;i++) {
  608. var permission = _r._permissions.list[i];
  609. if (permission.id == permission_id) {
  610. $("#permission_modify_id").attr("value", permission_id);
  611. $("#permission_modify_alias").attr("value", permission.alias);
  612. $("#permission_modify_description").attr("value", permission.description);
  613. $("#permission_modify").show();
  614. return;
  615. }
  616. }
  617. }
  618. /*把权限的一般信息的修改提交到服务器*/
  619. function permission_update_submit() {
  620. var permission_id = $("#permission_modify_id").val();
  621. var p = {id:permission_id};
  622. p["alias"] = $("#permission_modify_alias").val();
  623. p["description"] = $("#permission_modify_description").val();
  624. console.log(p);
  625. $.ajax({
  626. url : home_base + "/admin/authority/permission/update",
  627. type : "POST",
  628. data : JSON.stringify(p),
  629. success : function() {
  630. loadPermissions();
  631. $("#permission_modify").hide();
  632. }
  633. });
  634. }
  635. /*删除一个权限*/
  636. function permission_delete(permission_id) {
  637. $.ajax({
  638. url : home_base + "/admin/authority/permission/delete",
  639. type : "POST",
  640. data : JSON.stringify({id:permission_id}),
  641. success : function() {
  642. loadPermissions();
  643. $("#permission_modify").hide();
  644. }
  645. });
  646. loadPermissions();
  647. }
  648. /*新增一个权限*/
  649. function permission_add() {
  650. var permission_name = prompt("请输入新角色的名词,仅限英文字母/冒号/米号,长度3到30个字符");
  651. var re = /[a-zA-Z\:\*]{3,10}/;
  652. if (permission_name && re.exec(permission_name)) {
  653. $.ajax({
  654. url : home_base + "/admin/authority/permission/add",
  655. type : "POST",
  656. data : JSON.stringify({name:permission_name}),
  657. success : function () {
  658. loadPermissions();
  659. }
  660. });
  661. }
  662. }
  663. </script>