goods-index3.blade.php 4.4 KB

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