发表于: 2017-04-23 20:20:19

2 1164


今天完成的事情: 完成extjs导出excel表格
明天计划的事情:修改项目bug
遇到的问题:刚拿到问题没有思路,后来发现也就是和文件下载一个套路,中间需要用uuid衔接一下

Ext.define('ExportExcel', {

    /**

     * 导出

     * grid实例

     * charts实例数组

     */

    //TODO 放到别的包下

    exprotData:function(grid,charts){

        var statisticsExport = getRootPath()+'/platform/exportExportExcelAction.action';

        var statisticsGetFile = getRootPath()+'/platform/getExcelFileExportExcelAction.action';

//      var doStatistics = _ctxPath+'/exceptionCheck/doStatisticsStatisticsAction.action';

        var exportData = {};

        exportData['excelData'] =  grid.getExportData();

        var chartsData = [];

        for(var i = 0;i < charts.length ; i ++){

            chartsData.push(charts[i].items.items[0].getExportData());

        }

        exportData.chartsData = chartsData;

        var postObject = {};

        var name = exportData.excelData.name;

        name = encodeURI(encodeURI(name));

        postObject.exportData = Ext.encode(exportData);

        Ext.Ajax.request({

               url: statisticsExport,

               method : 'post',

               scope : this,

               timeout : 60000,

               params: postObject,

               success: function(response){

                   var res = Ext.decode(response.responseText);

                   if(res.success == true){

                        var url = statisticsGetFile + "?uuid="+res.uuid+"&name="+name;

                        window.open(url);

                   }

               }

            });

    }

});

收获:运用自己以前写过的东西,可以当作模版,直接快速完成


返回列表 返回列表
评论

    分享到