index.html 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. {extend name="common/base" /}
  2. <!-- 主体 -->
  3. {block name="body"}
  4. <div class="p-3">
  5. <table class="layui-hide" id="level" lay-filter="level"></table>
  6. </div>
  7. <script type="text/html" id="toolbarDemo">
  8. <div class="layui-btn-container">
  9. <button class="layui-btn layui-btn-sm addNew" type="button">+ 添加用户等级</button>
  10. </div>
  11. </script>
  12. {/block}
  13. <!-- /主体 -->
  14. <!-- 脚本 -->
  15. {block name="script"}
  16. <script>
  17. const moduleInit = ['tool'];
  18. function gouguInit() {
  19. var table = layui.table, tool = layui.tool;
  20. layui.pageTable = table.render({
  21. elem: '#level'
  22. , toolbar: '#toolbarDemo'
  23. , title: '用户等级列表'
  24. , url: "/admin/level/index"
  25. , page: false //开启分页
  26. , cellMinWidth: 120
  27. , cols: [[
  28. { field: 'id', width: 80, title: 'ID号', align: 'center' }
  29. , { field: 'title', title: '等级名称', width: 120, align: 'center' }
  30. , { field: 'desc', title: '等级描述' }
  31. , {
  32. field: 'status', title: '状态', width: 80, align: 'center', templet: function (d) {
  33. var html1 = '<span>正常</span>';
  34. var html2 = '<span style="color:#FF5722">禁用</span>';
  35. if (d.status == 1) {
  36. return html1;
  37. }
  38. else {
  39. return html2;
  40. }
  41. }
  42. }
  43. , {
  44. width: 100, title: '操作', align: 'center', templet: function (d) {
  45. var html = '';
  46. var btn = '<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>';
  47. var btn1 = '<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="disable">禁用</a>';
  48. var btn2 = '<a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="open">启用</a>';
  49. if (d.status == 1) {
  50. html = '<div class="layui-btn-group">' + btn + btn1 + '</div>';
  51. }
  52. else {
  53. html = '<div class="layui-btn-group">' + btn + btn2 + '</div>';
  54. }
  55. return html;
  56. }
  57. }
  58. ]]
  59. });
  60. table.on('tool(level)', function (obj) {
  61. if (obj.event === 'edit') {
  62. addExpense(obj.data.id, obj.data.title, obj.data.desc);
  63. }
  64. if (obj.event === 'disable') {
  65. layer.confirm('确定要禁用该等级吗?', { icon: 3, title: '提示' }, function (index) {
  66. let callback = function (e) {
  67. layer.msg(e.msg);
  68. if (e.code == 0) {
  69. layer.close(index);
  70. layui.pageTable.reload()
  71. }
  72. }
  73. tool.post("/admin/level/disable", { id: obj.data.id, status: 0 }, callback);
  74. layer.close(index);
  75. });
  76. }
  77. if (obj.event === 'open') {
  78. layer.confirm('确定要启用该等级吗?', { icon: 3, title: '提示' }, function (index) {
  79. let callback = function (e) {
  80. layer.msg(e.msg);
  81. if (e.code == 0) {
  82. layer.close(index);
  83. layui.pageTable.reload()
  84. }
  85. }
  86. tool.post("/admin/level/disable", { id: obj.data.id, status: 1 }, callback);
  87. layer.close(index);
  88. });
  89. }
  90. });
  91. $('body').on('click', '.addNew', function () {
  92. addExpense(0, '', '');
  93. });
  94. function addExpense(id, title, desc) {
  95. var biaoti = '新增等级';
  96. if (id > 0) {
  97. biaoti = '编辑等级';
  98. }
  99. layer.open({
  100. type: 1
  101. , title: biaoti
  102. , area: '512px;'
  103. , id: 'LAY_module' //设定一个id,防止重复弹出
  104. , btn: ['确定', '取消']
  105. , btnAlign: 'c'
  106. , content: '<div style="padding-top:15px;">\
  107. <div class="layui-form-item">\
  108. <label class="layui-form-label">等级名称</label>\
  109. <div class="layui-input-inline" style="width:360px;">\
  110. <input type="hidden" name="id" value="'+ id + '">\
  111. <input type="text" name="title" autocomplete="off" value="'+ title + '" placeholder="请输入模块名称" class="layui-input">\
  112. </div>\
  113. </div>\
  114. <div class="layui-form-item">\
  115. <label class="layui-form-label">等级描述</label>\
  116. <div class="layui-input-inline" style="width:360px;">\
  117. <textarea name="desc" placeholder="请输入等级描述,100字以内" class="layui-textarea">'+ desc + '</textarea>\
  118. </div>\
  119. </div>\
  120. </div>'
  121. , yes: function (index) {
  122. let id = $('#LAY_module').find('[name="id"]').val();
  123. let title = $('#LAY_module').find('[name="title"]').val();
  124. let desc = $('#LAY_module').find('[name="desc"]').val();
  125. let callback = function (e) {
  126. layer.msg(e.msg);
  127. if (e.code == 0) {
  128. if (e.code == 0) {
  129. layer.close(index);
  130. layui.pageTable.reload();
  131. }
  132. }
  133. }
  134. tool.post("/admin/level/add", {
  135. id: id,
  136. title: title,
  137. desc: desc
  138. }, callback);
  139. return false;
  140. }
  141. , btn2: function () {
  142. layer.closeAll();
  143. }
  144. });
  145. }
  146. }
  147. </script>
  148. {/block}
  149. <!-- /脚本 -->