index.blade.php 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. @extends('admin.base')
  2. @section('content')
  3. <div class="layui-card">
  4. <div class="layui-card-header layuiadmin-card-header-auto">
  5. <div class="layui-btn-group ">
  6. @can('system.permission.destroy')
  7. <button class="layui-btn layui-btn-sm layui-btn-danger" id="listDelete">删 除</button>
  8. @endcan
  9. @can('system.permission.create')
  10. <a class="layui-btn layui-btn-sm" href="{{ route('admin.permission.create') }}">添 加</a>
  11. @endcan
  12. <button class="layui-btn layui-btn-sm" id="returnParent" pid="0">返回上级</button>
  13. </div>
  14. </div>
  15. <div class="layui-card-body">
  16. <table id="dataTable" lay-filter="dataTable"></table>
  17. <script type="text/html" id="icon">
  18. <i class="layui-icon @{{ d.icon.class }}"></i>
  19. </script>
  20. <script type="text/html" id="options">
  21. <div class="layui-btn-group">
  22. @can('system.permission')
  23. <a class="layui-btn layui-btn-sm" lay-event="children">子权限</a>
  24. @endcan
  25. @can('system.permission.edit')
  26. <a class="layui-btn layui-btn-sm" lay-event="edit">编辑</a>
  27. @endcan
  28. @can('system.permission.destroy')
  29. <a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del">删除</a>
  30. @endcan
  31. </div>
  32. </script>
  33. </div>
  34. </div>
  35. @endsection
  36. @section('script')
  37. @can('system.permission')
  38. <script>
  39. layui.use(['layer','table','form'],function () {
  40. var layer = layui.layer;
  41. var form = layui.form;
  42. var table = layui.table;
  43. //用户表格初始化
  44. var dataTable = table.render({
  45. elem: '#dataTable'
  46. ,height: 500
  47. ,url: "{{ route('admin.data') }}" //数据接口
  48. ,where:{model:"permission"}
  49. ,page: true //开启分页
  50. ,cols: [[ //表头
  51. {checkbox: true,fixed: true}
  52. ,{field: 'id', title: 'ID', sort: true,width:80}
  53. ,{field: 'name', title: '权限名称'}
  54. ,{field: 'display_name', title: '显示名称'}
  55. ,{field: 'route', title: '路由'}
  56. ,{field: 'icon_id', title: '图标', toolbar:'#icon'}
  57. ,{field: 'created_at', title: '创建时间'}
  58. ,{field: 'updated_at', title: '更新时间'}
  59. ,{fixed: 'right', width: 260, align:'center', toolbar: '#options'}
  60. ]]
  61. });
  62. //监听工具条
  63. table.on('tool(dataTable)', function(obj){ //注:tool是工具条事件名,dataTable是table原始容器的属性 lay-filter="对应的值"
  64. var data = obj.data //获得当前行数据
  65. ,layEvent = obj.event; //获得 lay-event 对应的值
  66. if(layEvent === 'del'){
  67. layer.confirm('确认删除吗?', function(index){
  68. $.post("{{ route('admin.permission.destroy') }}",{_method:'delete',ids:[data.id]},function (result) {
  69. if (result.code==0){
  70. obj.del(); //删除对应行(tr)的DOM结构
  71. }
  72. layer.close(index);
  73. layer.msg(result.msg,{icon:6})
  74. });
  75. });
  76. } else if(layEvent === 'edit'){
  77. location.href = '/admin/permission/'+data.id+'/edit';
  78. } else if (layEvent === 'children'){
  79. var pid = $("#returnParent").attr("pid");
  80. if (data.parent_id!=0){
  81. $("#returnParent").attr("pid",pid+'_'+data.parent_id);
  82. }
  83. dataTable.reload({
  84. where:{model:"permission",parent_id:data.id},
  85. page:{curr:1}
  86. })
  87. }
  88. });
  89. //按钮批量删除
  90. $("#listDelete").click(function () {
  91. layer.msg("由于权限重要性,系统已禁止批量删除",{icon:5});
  92. /*var ids = []
  93. var hasCheck = table.checkStatus('dataTable')
  94. var hasCheckData = hasCheck.data
  95. if (hasCheckData.length>0){
  96. $.each(hasCheckData,function (index,element) {
  97. ids.push(element.id)
  98. })
  99. }
  100. if (ids.length>0){
  101. layer.confirm('确认删除吗?', function(index){
  102. $.post("{{ route('admin.permission.destroy') }}",{_method:'delete',ids:ids},function (result) {
  103. if (result.code==0){
  104. dataTable.reload()
  105. }
  106. layer.close(index);
  107. layer.msg(result.msg,{icon:6})
  108. });
  109. })
  110. }else {
  111. layer.msg('请选择删除项',{icon:5})
  112. }*/
  113. });
  114. //返回上一级
  115. $("#returnParent").click(function () {
  116. var pid = $(this).attr("pid");
  117. if (pid!='0'){
  118. ids = pid.split('_');
  119. parent_id = ids.pop();
  120. $(this).attr("pid",ids.join('_'));
  121. }else {
  122. parent_id=pid;
  123. }
  124. dataTable.reload({
  125. where:{model:"permission",parent_id:parent_id},
  126. page:{curr:1}
  127. })
  128. })
  129. })
  130. </script>
  131. @endcan
  132. @endsection