index.blade.php 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. @extends('layouts.base')
  2. @section('content')
  3. @section('title', trans('电子面单管理'))
  4. <link rel="stylesheet" type="text/css"
  5. href="{{resource_get('plugins/electronics-bill/src/common/static/css/electronics-bill.css', 1)}}"/>
  6. <div id="app">
  7. <div class="electronics-div">
  8. <span style="float: left">电子面单列表</span>
  9. <div class="vue-main-title-button" style="float: right;">
  10. <el-button type="primary" plain icon="el-icon-plus" size="small" @click="edit()">添加电子面单</el-button>
  11. </div>
  12. <div style="margin-top: 50px;padding: 0px 20px">
  13. <el-table :data="data_list" style="width: 100%">
  14. <el-table-column prop="id" label="ID" align="center" width="100px">
  15. </el-table-column>
  16. <el-table-column prop="panel_name" label="电子面单模板名称" align="center">
  17. </el-table-column>
  18. <el-table-column prop="exhelper_style" label="快递类型" align="center">
  19. </el-table-column>
  20. <el-table-column prop="is_default" label="是否默认(只能设置一个)" align="center">
  21. <template slot-scope="scope">
  22. <el-switch
  23. v-model="scope.row.is_default"
  24. active-color="#29ba9c"
  25. inactive-color="#dcdfe6"
  26. :active-value="1"
  27. :inactive-value="0"
  28. @change="setDefault(scope.row.id,scope.$index)"
  29. >
  30. </el-switch>
  31. </template>
  32. </el-table-column>
  33. <el-table-column label="操作" align="center">
  34. <template slot-scope="scope">
  35. <div>
  36. <el-link title="编辑" :underline="false" @click="edit(scope.row.id)" style="text-align: center;width:50px">
  37. <i class="iconfont icon-ht_operation_edit"></i>
  38. </el-link>
  39. <el-link title="删除" :underline="false" @click="del(scope.row.id)" style="text-align: center;width:50px">
  40. <i class="iconfont icon-ht_operation_delete"></i>
  41. </el-link>
  42. </div>
  43. </template>
  44. </el-table-column>
  45. </el-table>
  46. </div>
  47. </div>
  48. </div>
  49. <script>
  50. var bill_list_url = '{!! yzWebFullUrl('plugin.electronics-bill.admin.bill-manage.bill-list') !!}';
  51. var default_url = '{!! yzWebFullUrl('plugin.electronics-bill.admin.bill-manage.set-default') !!}';
  52. var del_url = '{!! yzWebFullUrl('plugin.electronics-bill.admin.bill-manage.del') !!}';
  53. var app = new Vue({
  54. el: '#app',
  55. data() {
  56. return {
  57. data_list: []
  58. }
  59. },
  60. created() {
  61. },
  62. mounted() {
  63. this.getList();
  64. },
  65. methods: {
  66. getList(){
  67. let that = this;
  68. let loading = this.$loading({
  69. target: document.querySelector(".content"),
  70. background: 'rgba(0, 0, 0, 0)'
  71. });
  72. that.$http.get(bill_list_url).then(function(res){
  73. if(res.data.result == 1){
  74. that.data_list = res.data.data;
  75. }else{
  76. this.$message({message: res.data.msg, type: 'error'});
  77. }
  78. loading.close();
  79. },function(err){
  80. this.$message({message: err.data.msg, type: 'error'});
  81. loading.close();
  82. })
  83. },
  84. setDefault(id,index){
  85. let that = this;
  86. let loading = this.$loading({
  87. target: document.querySelector(".content"),
  88. background: 'rgba(0, 0, 0, 0)'
  89. });
  90. that.$http.post(default_url,{
  91. 'id':id,
  92. 'type':that.data_list[index].is_default
  93. }).then(function(res){
  94. if(res.data.result == 1){
  95. this.$message({message: res.data.msg, type: 'success'});
  96. }else{
  97. this.$message({message: res.data.msg, type: 'error'});
  98. }
  99. loading.close();
  100. location.reload();
  101. },function(err){
  102. this.$message({message: err.data.msg, type: 'error'});
  103. loading.close();
  104. });
  105. },
  106. edit(id = 0){
  107. let link = `{!! yzWebFullUrl('plugin.electronics-bill.admin.bill-manage.save-view') !!}`+`&id=`+id;
  108. window.location.href = link;
  109. },
  110. del(id = 0){
  111. let that = this;
  112. that.$confirm('确定删除吗', '提示', {confirmButtonText: '确定',cancelButtonText: '取消',type: 'warning'}).then(() => {
  113. let loading = that.$loading({target:document.querySelector(".content"),background: 'rgba(0, 0, 0, 0)'});
  114. that.$http.post(del_url,{
  115. 'id':id,
  116. }).then(function(res){
  117. if(res.data.result == 1){
  118. this.$message({message: res.data.msg, type: 'success'});
  119. }else{
  120. this.$message({message: res.data.msg, type: 'error'});
  121. }
  122. loading.close();
  123. location.reload();
  124. },function(err){
  125. this.$message({message: err.data.msg, type: 'error'});
  126. loading.close();
  127. });
  128. }).catch(() => {
  129. this.$message({type: 'info',message: '已取消删除'});
  130. });
  131. }
  132. },
  133. });
  134. </script>
  135. @endsection