index.blade.php 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. @extends('layouts.app')
  2. @section('title')查询-城市@endsection
  3. @section('content')
  4. <div class="container-fluid">
  5. <div class="card">
  6. <div class="card-body">
  7. @if(Session::has('successTip'))
  8. <div class="alert alert-success h1">{{Session::get('successTip')}}</div>
  9. @endif
  10. <table class="table table-striped table-sm" id="list">
  11. <tr>
  12. <th>ID</th>
  13. <th>所属省份</th>
  14. <th>城市名称</th>
  15. <th>录入时间</th>
  16. <th>操作</th>
  17. </tr>
  18. <tr v-for="(city,i) in cities" @click="selectTr===i+1?selectTr=0:selectTr=i+1" :class="selectTr===i+1?'focusing' : ''">
  19. <td class="text-muted">@{{city.id}}</td>
  20. <td>
  21. @{{ city.province }}
  22. </td>
  23. <td>@{{city.name}}</td>
  24. <td class="text-muted">@{{city.created_at}}</td>
  25. <td>
  26. @can('省份-编辑')
  27. <button class="btn btn-sm btn-outline-primary" @click="edit(city.id)">改</button> @endcan
  28. @can('省份-删除')
  29. <button class="btn btn-sm btn-outline-dark" @click="destroy(city)">删</button> @endcan
  30. </td>
  31. </tr>
  32. </table>
  33. {{$cities->links()}}
  34. </div>
  35. </div>
  36. </div>
  37. @endsection
  38. @section('lastScript')
  39. <script>
  40. new Vue({
  41. el:"#list",
  42. data:{
  43. cities:[
  44. @foreach( $cities as $city )
  45. {id:'{{$city->id}}',province:'{{$city->province_name}}', name:'{{$city->name}}',created_at:'{{$city->created_at}}'},
  46. @endforeach
  47. ],
  48. selectTr:0
  49. },
  50. methods:{
  51. edit:function(id){
  52. location.href = "{{url('maintenance/city')}}/"+id+"/edit";
  53. },
  54. destroy:function(city){
  55. if(!confirm('确定要删除城市“' + city.name + '”吗?')){return};
  56. let data=this;
  57. let url = "{{url('maintenance/city')}}/"+city.id;
  58. axios.delete(url,{id:city.id})
  59. .then(function (response) {
  60. if(response.data.success){
  61. for (let i = 0; i < data.cities.length; i++) {
  62. if (data.cities[i].id===city.id){
  63. data.cities.splice(i,1);
  64. break;
  65. }
  66. }
  67. tempTip.setDuration(1000);
  68. tempTip.showSuccess('删除城市"'+city.name+'"成功!')
  69. }else{
  70. tempTip.setDuration(1000);
  71. tempTip.show('删除城市"'+city.name+'"失败!')
  72. }
  73. })
  74. .catch(function (err) {
  75. tempTip.setDuration(3000);
  76. tempTip.show('删除城市失败!'+'网络错误:' + err);
  77. });
  78. },
  79. }
  80. });
  81. </script>
  82. @endsection