menu.html 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. <!DOCTYPE html>
  2. <html lang="zh" xmlns:th="http://www.thymeleaf.org" >
  3. <meta charset="utf-8">
  4. <head th:include="include :: header"></head>
  5. <body class="gray-bg">
  6. <div class="container-div">
  7. <div class="row">
  8. <div class="col-sm-12 search-collapse">
  9. <form id="menu-form">
  10. <div class="select-list">
  11. <ul>
  12. <li>
  13. 菜单名称:<input type="text" name="menuName"/>
  14. </li>
  15. <li>
  16. 菜单状态:<select name="visible" th:with="type=${@dict.getType('sys_show_hide')}">
  17. <option value="">所有</option>
  18. <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
  19. </select>
  20. </li>
  21. <li>
  22. <a class="btn btn-primary btn-rounded btn-sm" onclick="$.treeTable.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
  23. <a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
  24. </li>
  25. </ul>
  26. </div>
  27. </form>
  28. </div>
  29. <div class="btn-group-sm" id="toolbar" role="group">
  30. <a class="btn btn-success" onclick="$.operate.add(0)" shiro:hasPermission="system:menu:add">
  31. <i class="fa fa-plus"></i> 新增
  32. </a>
  33. <a class="btn btn-primary" onclick="$.operate.edit()" shiro:hasPermission="system:menu:edit">
  34. <i class="fa fa-edit"></i> 修改
  35. </a>
  36. <a class="btn btn-info" id="expandAllBtn">
  37. <i class="fa fa-exchange"></i> 展开/折叠
  38. </a>
  39. </div>
  40. <div class="col-sm-12 select-table table-striped">
  41. <table id="bootstrap-tree-table" data-mobile-responsive="true"></table>
  42. </div>
  43. </div>
  44. </div>
  45. <div th:include="include :: footer"></div>
  46. <script th:inline="javascript">
  47. var addFlag = [[${@permission.hasPermi('system:menu:add')}]];
  48. var editFlag = [[${@permission.hasPermi('system:menu:edit')}]];
  49. var removeFlag = [[${@permission.hasPermi('system:menu:remove')}]];
  50. var datas = [[${@dict.getType('sys_show_hide')}]];
  51. var prefix = ctx + "system/menu";
  52. $(function() {
  53. var options = {
  54. code: "menuId",
  55. parentCode: "parentId",
  56. uniqueId: "menuId",
  57. expandAll: false,
  58. expandFirst: false,
  59. url: prefix + "/list",
  60. createUrl: prefix + "/add/{id}",
  61. updateUrl: prefix + "/edit/{id}",
  62. removeUrl: prefix + "/remove/{id}",
  63. modalName: "菜单",
  64. columns: [{
  65. field: 'selectItem',
  66. radio: true
  67. },
  68. {
  69. title: '菜单名称',
  70. field: 'menuName',
  71. width: '20%',
  72. formatter: function(value, row, index) {
  73. if ($.common.isEmpty(row.icon)) {
  74. return row.menuName;
  75. } else {
  76. return '<i class="' + row.icon + '"></i> <span class="nav-label">' + row.menuName + '</span>';
  77. }
  78. }
  79. },
  80. {
  81. field: 'orderNum',
  82. title: '排序',
  83. width: '10%',
  84. align: "left"
  85. },
  86. {
  87. field: 'url',
  88. title: '请求地址',
  89. width: '15%',
  90. align: "left"
  91. },
  92. {
  93. title: '类型',
  94. field: 'menuType',
  95. width: '10%',
  96. align: "left",
  97. formatter: function(value, item, index) {
  98. if (item.menuType == 'M') {
  99. return '<span class="label label-success">目录</span>';
  100. }
  101. else if (item.menuType == 'C') {
  102. return '<span class="label label-primary">菜单</span>';
  103. }
  104. else if (item.menuType == 'F') {
  105. return '<span class="label label-warning">按钮</span>';
  106. }
  107. }
  108. },
  109. {
  110. field: 'visible',
  111. title: '可见',
  112. width: '10%',
  113. align: "left",
  114. formatter: function(value, row, index) {
  115. return $.table.selectDictLabel(datas, row.visible);
  116. }
  117. },
  118. {
  119. field: 'perms',
  120. title: '权限标识',
  121. width: '15%',
  122. align: "left",
  123. },
  124. {
  125. title: '操作',
  126. width: '20%',
  127. align: "left",
  128. formatter: function(value, row, index) {
  129. var actions = [];
  130. actions.push('<a class="' + editFlag + '" href="#" onclick="$.operate.edit(\'' + row.menuId + '\')"><i class="fa fa-edit"></i>编辑</a> ');
  131. actions.push('<a class="' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.menuId + '\')"><i class="fa fa-trash"></i>删除</a>');
  132. actions.push('<a class="' + addFlag + '" href="#" onclick="$.operate.add(\'' + row.menuId + '\')"><i class="fa fa-plus"></i>添加下级菜单</a> ');
  133. return $.table.dropdownToggle(actions.join(''));
  134. }
  135. }]
  136. };
  137. $.treeTable.init(options);
  138. });
  139. </script>
  140. </body>
  141. </html>