goods-index2.blade.php 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. @extends('layouts.base')
  2. @section('title','中台商品管理')
  3. @section('content')
  4. <div id="app">
  5. <div class="panel panel-info">
  6. <div class="panel-heading">
  7. <span>当前位置:</span>
  8. <a href="#">
  9. <span>商城商品导入</span>
  10. </a>
  11. </div>
  12. </div>
  13. <div class="alert alert-info alert-important">
  14. <span>使用方法:</span>
  15. <span style="padding-left: 60px;">1. 下载 <a style="text-decoration: none;
  16. color: #333;" href="{{ yzWebUrl('plugin.goods-handle.backend.zt.excelExample3') }}" >
  17. 【商城商品模板】
  18. </a>填入商城商品id</span>
  19. <span style="padding-left: 60px;">2. 上传并确认导入</span>
  20. </div>
  21. <form id="importform" class="form-horizontal form" action="{{ yzWebUrl('plugin.goods-handle.backend.zt.goodsIndex2') }}"
  22. method="post" enctype="multipart/form-data">
  23. <div class='form-group'>
  24. <div class="form-group">
  25. <label class="col-sm-2 control-label must">EXCEL文件</label>
  26. <div class="col-sm-5 goodsname" style="padding-right:0;">
  27. <input type="file" name="import_shop_goods_id" class="form-control"/>
  28. </div>
  29. </div>
  30. <div class='form-group'>
  31. <div class="col-sm-12">
  32. <div class="modal-footer">
  33. <button type="submit" class="btn btn-primary" name="cancelsend" value="yes">
  34. 导入商城商品ID
  35. </button>
  36. <a style="margin-left: 10px;" class="btn btn-primary" @click="pushShopGoods">导出商城商品</a>
  37. </div>
  38. </div>
  39. </div>
  40. </div>
  41. </form>
  42. </div>
  43. <script type="text/javascript">
  44. var app = new Vue({
  45. el: "#app",
  46. delimiters: ['[[', ']]'],
  47. data(){
  48. let goods_ids = {!! $goods_ids !!};
  49. return{
  50. goods_list: [],
  51. sort_price:"",
  52. sort_stock:"",
  53. sort_sales:"",
  54. needMergeArr: ['p_id','image_url', 'products_title'], // 有合并项的列(首列ID 和 第二列姓名)
  55. rowMergeArrs: {}, // 包含需要一个或多个合并项信息的对象
  56. multipleSelection:[],
  57. goods_ids:goods_ids,
  58. total:0,
  59. per_size:15,
  60. current_page:0,
  61. loading:false,
  62. }
  63. },
  64. created() {
  65. },
  66. methods: {
  67. pushShopGoods(){
  68. var url = '{!! yzWebFullUrl('plugin.goods-handle.backend.zt.exportShopGoods') !!}';
  69. const loading = this.$loading({ target: '.loading-area' });
  70. var data={goods_ids:this.goods_ids};
  71. /* this.$http.post('{!! yzWebFullUrl('plugin.goods-handle.backend.zt.exportShopGoods') !!}', data).then(response => {
  72. if (response.data.result) {
  73. this.$message({type: 'success',message: '同步成功!'});
  74. } else {
  75. this.$message({message: response.data.msg, type: 'error'});
  76. }
  77. loading.close();
  78. }, response => {
  79. loading.close();
  80. this.$message({message: response.data.msg, type: 'error'});
  81. })*/
  82. axios({
  83. method:'post',
  84. url: url, // 请求地址
  85. data: data, // 参数
  86. responseType: 'blob', // 表明返回服务器返回的数据类型
  87. headers: {
  88. 'Content-Type': 'application/json'
  89. }
  90. }).then(res => {
  91. loading.close()
  92. const blob = new Blob([res.data], {
  93. type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;"
  94. });
  95. const downloadElement = document.createElement("a");
  96. const href = window.URL.createObjectURL(blob);
  97. const filename = "商城商品信息表"
  98. downloadElement.href = href;
  99. downloadElement.download = filename + '.xlsx'; //命名下载名称
  100. downloadElement.click();
  101. window.URL.revokeObjectURL(href); //下载完成进行释放
  102. })
  103. }
  104. }
  105. })
  106. </script>
  107. @endsection('content')