index.blade.php 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  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('config.advert.destroy')
  7. <button class="layui-btn layui-btn-sm layui-btn-danger" id="listDelete">删除</button>
  8. @endcan
  9. @can('config.advert.create')
  10. <a class="layui-btn layui-btn-sm" href="{{ route('admin.advert.create') }}">添加</a>
  11. @endcan
  12. <button class="layui-btn layui-btn-sm" id="searchBtn">搜索</button>
  13. </div>
  14. <div class="layui-form" >
  15. <div class="layui-input-inline">
  16. <select name="position_id" lay-verify="required" id="position_id">
  17. <option value="">请选择广告位置</option>
  18. @foreach($positions as $position)
  19. <option value="{{ $position->id }}" >{{ $position->name }}</option>
  20. @endforeach
  21. </select>
  22. </div>
  23. <div class="layui-input-inline">
  24. <input type="text" name="title" id="title" placeholder="请输入标题" class="layui-input">
  25. </div>
  26. </div>
  27. </div>
  28. <div class="layui-card-body">
  29. <table id="dataTable" lay-filter="dataTable"></table>
  30. <script type="text/html" id="options">
  31. <div class="layui-btn-group">
  32. @can('config.advert.edit')
  33. <a class="layui-btn layui-btn-sm" lay-event="edit">编辑</a>
  34. @endcan
  35. @can('config.advert.destroy')
  36. <a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del">删除</a>
  37. @endcan
  38. </div>
  39. </script>
  40. <script type="text/html" id="position">
  41. @{{ d.position.name }}
  42. </script>
  43. <script type="text/html" id="thumb">
  44. <a href="@{{d.thumb}}" target="_blank" title="点击查看"><img src="@{{d.thumb}}" alt="" width="28" height="28"></a>
  45. </script>
  46. </div>
  47. </div>
  48. @endsection
  49. @section('script')
  50. @can('config.advert')
  51. <script>
  52. layui.use(['layer','table','form'],function () {
  53. var layer = layui.layer;
  54. var form = layui.form;
  55. var table = layui.table;
  56. //用户表格初始化
  57. var dataTable = table.render({
  58. elem: '#dataTable'
  59. ,height: 500
  60. ,url: "{{ route('admin.advert.data') }}" //数据接口
  61. ,page: true //开启分页
  62. ,cols: [[ //表头
  63. {checkbox: true,fixed: true}
  64. ,{field: 'id', title: 'ID', sort: true,width:80}
  65. ,{field: 'position', title: '广告位置',toolbar:'#position'}
  66. ,{field: 'title', title: '广告位标题'}
  67. ,{field: 'thumb', title: '图片',toolbar:'#thumb'}
  68. ,{field: 'link', title: '链接',width:200}
  69. ,{field: 'sort', title: '排序'}
  70. ,{field: 'created_at', title: '创建时间'}
  71. ,{field: 'updated_at', title: '更新时间'}
  72. ,{fixed: 'right', width: 220, align:'center', toolbar: '#options'}
  73. ]]
  74. });
  75. //监听工具条
  76. table.on('tool(dataTable)', function(obj){ //注:tool是工具条事件名,dataTable是table原始容器的属性 lay-filter="对应的值"
  77. var data = obj.data //获得当前行数据
  78. ,layEvent = obj.event; //获得 lay-event 对应的值
  79. if(layEvent === 'del'){
  80. layer.confirm('确认删除吗?', function(index){
  81. $.post("{{ route('admin.advert.destroy') }}",{_method:'delete',ids:[data.id]},function (result) {
  82. if (result.code==0){
  83. obj.del(); //删除对应行(tr)的DOM结构
  84. }
  85. layer.close(index);
  86. layer.msg(result.msg,{icon:6})
  87. });
  88. });
  89. } else if(layEvent === 'edit'){
  90. location.href = '/admin/advert/'+data.id+'/edit';
  91. }
  92. });
  93. //按钮批量删除
  94. $("#listDelete").click(function () {
  95. var ids = []
  96. var hasCheck = table.checkStatus('dataTable')
  97. var hasCheckData = hasCheck.data
  98. if (hasCheckData.length>0){
  99. $.each(hasCheckData,function (index,element) {
  100. ids.push(element.id)
  101. })
  102. }
  103. if (ids.length>0){
  104. layer.confirm('确认删除吗?', function(index){
  105. $.post("{{ route('admin.category.destroy') }}",{_method:'delete',ids:ids},function (result) {
  106. if (result.code==0){
  107. dataTable.reload()
  108. }
  109. layer.close(index);
  110. layer.msg(result.msg,{icon:6})
  111. });
  112. })
  113. }else {
  114. layer.msg('请选择删除项',{icon:5})
  115. }
  116. })
  117. //搜索
  118. $("#searchBtn").click(function () {
  119. var positionId = $("#position_id").val()
  120. var title = $("#title").val();
  121. dataTable.reload({
  122. where:{position_id:positionId,title:title}
  123. })
  124. })
  125. })
  126. </script>
  127. @endcan
  128. @endsection