layui 导出数据函数封装;

一、基础使用方法封装;
<script type="text/javascript" src="/layui/lay/excel.js"></script>// 注释 ds 为数组数据;
function exopt(ds) {
    console.log(ds);
    ds.unshift({
        id:'ID',
        order_sn:'订单编号',
        wholesaler_truename:'客户姓名',
        wholesaler_mobile:'客户手机号',
        wholesaler_name:'客户单位名',
        pay_status_name:'支付方式',
        total_fee:'订单金额',
        status_name: '订单状态',
        created_time:'提交时间'
    });
    excel.exportExcel({
        sheet1:  ds
    }, '订单列表.xlsx', 'xlsx');
}

二、常用请求直接封装导出使用;

/**
 * url :请求地址;
 * param1,param2,...:请求参数;
**/
function layExport(url,param1,param2,...){
    var params={};
    params.param1=param1;
    params.param2=param2;//...
   $.get(url, params, function (res) {
       var datas = eval('(' + res + ')');
       var data = datas.data;
       var t=['商品','规格','单位','仓库',"可售库存","实际库存",'成本均价(¥)',"安全库存","库存上限","库存下限"];
       var v=[];
       for(var i=0;i<data.length;i++){
            var s=[
            data[i].title,
            data[i].skus_name,
            data[i].sunit_name,
            data[i].warehouse_name,
            data[i].stock_sale,
            data[i].stock,data[i].price,
            data[i].stock_safe,
            data[i].stock_max,
            data[i].stock_min
            ];
            v.push(s);
         }
       // table.exportFile(t,data,'库存现状表.xlsx', 'xlsx'); 
        table.exportFile(t,v,'库存现状表.xls','xls'); 
     });
}           

三、结合表格管理导出使用;

 <!-- html部分  -->
 <table id="userList" lay-filter="userList"></table>
 <script type="text/html" id="exportBar"> 
      <button class="layui-btn layui-btn-sm"
        style="float: right; margin-left: 0px; margin-right: 0px; margin-bottom: 0px; margin-top: 5px;"
        lay-event="exportNow">
        数据导出
      </button> 
  </script>
<script>
layui.use(["form", "layer", "table", "laytpl", "laydate"], function () {
    var form = layui.form,
      layer = layui.layer,
      // layer = parent.layer === undefined ? layui.layer : top.layer,
      $ = layui.jquery,
      laytpl = layui.laytpl,
      laydate = layui.laydate,
      table = layui.table;
     //内容表格
     table.render({
        elem: "#userList",
        id:"userList",
        url: "/api/purchase/idetail",
        where: wheres,
        toolbar: "#exportBar",
        defaultToolbar: [],
        // totalRow: true,
        cols: [[ 
            {type: "numbers", title: 'ID',align: "center"}, 
            {title: "商品",width: 232,unresize: true,height: "80px",align: "center",
              templet: function (d) {
                return (
                  '<div class="clearfix"><img width="60" class="left" height="60" src="' +
                  d.item_cover +
                  '" /> <div class="left tbitem-title">' +
                  d.item_title +
                  "</div></div>"
                );
              }
            },
            {field: "skus_name",title: "规格",align: "center",totalRow: true},
            {field: "sunit_name",title: "单位",width: 60,align: "center",totalRow: true},
            {field: "total",title: "采购数量",minWidth: 100,align: "center"},
            {field: "price",title: "进货价(元)",minWidth: 100,align: "center"},
            {field: "ruku_total",title: "入库数量",minWidth: 100,align: "center"},
            {field: "total_fee",title: "金额(元)",minWidth: 100, align: "center"},
            {field: "supplier_name", title: "供应商", minWidth: 80, align: "center" },
            {field: "status",title: "订单状态", minWidth: 80,align: "center",
                  templet:function (d) {
                      var name='';
                      if(d.status==0){
                          name='未审核';
                      }else if(d.status==1){
                          name='待入库';
                      }else if(d.status==2){
                          name='已入库'; 
                      }
                      return name;
                  }
            },
            {field: "purchase_sn", title: "采购单号",minWidth: 200,align: "center"}
          ]],
        page: true,
        done: function (res, curr, count) { 
          // 供应商数
          $("#supplier_amount").text(res.supplier);
          // 采购金额
          // $("#total_money").text((res.money).toFixed(2));
          $("#total_money").text(res.money);
          // 商品数
          $("#total_goods").text(res.total);
          //   采购订单数
          $("#total_purchase").text(res.sn);
        }
      });


     // 数据导出
      table.on('toolbar(userList)', function (obj) {
        var checkStatus = table.checkStatus(obj.config.id);
        switch (obj.event) {
          case 'exportNow':
            var getURL = "/api/purchase/excel";
            var params = {}; //请求参数;
            params['start'] = $("input[name='start']").val();
            params['end'] = $("input[name='end']").val();
            params['status'] = $("select[name='status']").val();
            params['warehouse_id'] = $("select[name='warehouse_id']").val();
            params['supplier_id'] = $("input[name='supplier_id']").val();
            params['buyer_id'] = $("input[name='buyer_id']").val();
            params['title'] = $("input[name='title']").val();
            $.get(getURL, params, function (res) {
              console.log(params);
              var datas = eval('(' + res + ')');
              var datalist = datas.data; 
             // table.exportFile('userList', datalist, 'xls');
             table.exportFile('userList', datalist,'导出明细表.xls', 'xls');
            });
            break;
        }
      });
  });
</script>

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值