menu.blade.php 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. @extends('base.base')
  2. @section('base')
  3. <!-- 内容区域 -->
  4. <div class="main-panel">
  5. <div class="content-wrapper">
  6. <div class="page-header">
  7. <h3 class="page-title">
  8. <span class="page-title-icon bg-gradient-primary text-white mr-2">
  9. <i class="mdi mdi-wrench"></i>
  10. </span>
  11. {{ __('auto.菜单') }}
  12. </h3>
  13. <nav aria-label="breadcrumb">
  14. <ol class="breadcrumb">
  15. <li class="breadcrumb-item"><a href="#">{{ __('auto.系统设置') }}</a></li>
  16. <li class="breadcrumb-item active" aria-current="page">{{ __('auto.菜单管理') }}</li>
  17. </ol>
  18. </nav>
  19. </div>
  20. <div class="row">
  21. <div class="col-lg-12 grid-margin stretch-card">
  22. <div class="card">
  23. <div class="card-body">
  24. <h4 class="card-title">{{ __('auto.菜单列表') }}</h4>
  25. <p class="card-description">
  26. <button type="button" class="btn btn-sm btn-gradient-success btn-icon-text" onclick="add()">
  27. <i class="mdi mdi-plus btn-icon-prepend"></i>
  28. {{ __('auto.添加菜单') }}
  29. </button>
  30. </p>
  31. <table class="table table-bordered">
  32. <thead>
  33. <tr>
  34. <th>{{ __('auto.菜单名称') }}</th>
  35. <th>{{ __('auto.菜单链接') }}</th>
  36. <th>{{ __('auto.所属角色') }}</th>
  37. <th>{{ __('auto.创建时间') }}</th>
  38. <th>{{ __('auto.更新时间') }}</th>
  39. <th>{{ __('auto.操作') }}</th>
  40. </tr>
  41. </thead>
  42. <tbody>
  43. @foreach($list as $menu)
  44. <tr>
  45. <td>
  46. @if(count($menu->children))
  47. <i class="mdi mdi-menu-down menu-switch" id="{{$menu->id}}" state="on"></i>
  48. @endif
  49. <i class="{{ $menu->icon }}"> </i>{{ $menu->name }}
  50. </td>
  51. <td>{{ $menu->url }}</td>
  52. <td>
  53. @foreach($menu->roles as $role)
  54. <label class="badge badge-success">{{ $role->name }}</label>
  55. @endforeach
  56. </td>
  57. <td>{{ $menu->created_at }}</td>
  58. <td>{{ $menu->updated_at }}</td>
  59. <td>
  60. <button type="button" class="btn btn-sm btn-gradient-dark btn-icon-text" onclick="update({{ $menu->id }})">
  61. {{ __('auto.修改') }}
  62. <i class="mdi mdi-file-check btn-icon-append"></i>
  63. </button>
  64. <button type="button" class="btn btn-sm btn-gradient-danger btn-icon-text" onclick="del({{ $menu->id }})">
  65. <i class="mdi mdi-delete btn-icon-prepend"></i>
  66. {{ __('auto.删除') }}
  67. </button>
  68. </td>
  69. </tr>
  70. @if(count($menu->children))
  71. @foreach($menu->children as $childmenu)
  72. <tr class="pid-{{ $menu->id }}">
  73. <td>     {{ $childmenu->name }}</td>
  74. <td>{{ $childmenu->url }}</td>
  75. <td>
  76. @foreach($childmenu->roles as $role)
  77. <label class="badge badge-success">{{ $role->name }}</label>
  78. @endforeach
  79. </td>
  80. <td>{{ $childmenu->created_at }}</td>
  81. <td>{{ $menu->updated_at }}</td>
  82. <td>
  83. <button type="button" class="btn btn-sm btn-gradient-dark btn-icon-text" onclick="update({{ $childmenu->id }})">
  84. {{ __('auto.修改') }}
  85. <i class="mdi mdi-file-check btn-icon-append"></i>
  86. </button>
  87. <button type="button" class="btn btn-sm btn-gradient-danger btn-icon-text" onclick="del({{ $childmenu->id }})">
  88. <i class="mdi mdi-delete btn-icon-prepend"></i>
  89. {{ __('auto.删除') }}
  90. </button>
  91. </td>
  92. </tr>
  93. @endforeach
  94. @endif
  95. @endforeach
  96. </tbody>
  97. </table>
  98. </div>
  99. </div>
  100. </div>
  101. </div>
  102. </div>
  103. </div>
  104. <script>
  105. function add(){
  106. var page = layer.open({
  107. type: 2,
  108. title: '{{ __('auto.添加菜单') }}',
  109. shadeClose: true,
  110. shade: 0.8,
  111. area: ['70%', '90%'],
  112. scrollbar:false,
  113. content: '/admin/menu/add'
  114. });
  115. }
  116. function update(id){
  117. var page = layer.open({
  118. type: 2,
  119. title: '{{ __('auto.修改菜单') }}',
  120. fixed:false,
  121. shadeClose: true,
  122. shade: 0.8,
  123. area: ['70%', '90%'],
  124. content: '/admin/menu/update/'+id
  125. });
  126. }
  127. function del(id){
  128. myConfirm("{{ __('auto.删除操作不可逆,是否继续') }}?",function(){
  129. myRequest("/admin/menu/del/"+id,"post",{},function(res){
  130. layer.msg(res.msg)
  131. setTimeout(function(){
  132. window.location.reload();
  133. },1500)
  134. });
  135. });
  136. }
  137. $('.menu-switch').click(function(){
  138. id = $(this).attr('id');
  139. state = $(this).attr('state');
  140. console.log(id)
  141. console.log(state)
  142. if(state == "on"){
  143. $('.pid-'+id).hide();
  144. $(this).attr("state","off")
  145. $(this).removeClass('mdi-menu-down').addClass('mdi-menu-right');
  146. }else{
  147. $('.pid-'+id).show();
  148. $(this).attr("state","on")
  149. $(this).removeClass('mdi-menu-right').addClass('mdi-menu-down');
  150. }
  151. })
  152. </script>
  153. @endsection