导出功能实现及接口对接

This commit is contained in:
zhouyuejun
2019-03-01 14:12:10 +08:00
parent e1c7a28376
commit e6a9b2ea62
2 changed files with 50 additions and 9 deletions
+35 -5
View File
@@ -51,7 +51,7 @@ export class MainComponent implements OnInit {
).subscribe(
(event: NavigationEnd) => {
if (event.urlAfterRedirects != '/app/main') {
if(this.websocketService.websocket.readyState === 1){
if (this.websocketService.websocket.readyState === 1) {
this.websocketService.websocket.close();
}
}
@@ -431,8 +431,8 @@ export class MainComponent implements OnInit {
export() {
let exportArray = [];
this.wait_render_data.forEach(item => {
let exportItem = Object.assign({},item)
if (this.orderHandle.isLinked(exportItem)||this.orderHandle.isArriFlight(exportItem)) {
let exportItem = Object.assign({}, item)
if (this.orderHandle.isLinked(exportItem) || this.orderHandle.isArriFlight(exportItem)) {
exportItem['renderFlight']['orderBy'] = new Date(this.utils.dateFormatter(exportItem['preFlight']['SODT'])).getTime();
} else {
exportItem['renderFlight']['orderBy'] = new Date(this.utils.dateFormatter(exportItem['reaFlight']['SODT'])).getTime()
@@ -444,7 +444,37 @@ export class MainComponent implements OnInit {
return (a['orderBy'] - b['orderBy']);
})
console.log(exportArray);
let colArray = [];
this.render_col_lists.forEach(element => {
let column = { 'key': element['COL_CODE'], "name": element['COL_CN'] }
colArray.push(column);
})
var postData = new Object();
postData['columns'] = colArray;
postData['data'] = exportArray;
this.httpCilent.post('/adminapi/fltrs/toExcel', postData, { responseType: 'blob' }).subscribe(
data => {
let blob = new Blob();
blob = data;
let downloadFileName = '航班动态.xlsx';
if ('msSaveOrOpenBlob' in navigator) {
window.navigator.msSaveOrOpenBlob(blob, downloadFileName);
}
else {
var downloadElement = document.createElement('a');
var href = window.URL.createObjectURL(blob); //创建下载的链接
downloadElement.href = href;
downloadElement.download = downloadFileName; //下载后文件名
document.body.appendChild(downloadElement);
downloadElement.click(); //点击下载
document.body.removeChild(downloadElement); //下载完成移除元素
window.URL.revokeObjectURL(href); //释放掉blob对象
}
}
)
}
/**
@@ -1519,7 +1549,7 @@ export class MainComponent implements OnInit {
/**
* 清除所有消息弹出框
*/
clearAllNotify(){
clearAllNotify() {
this.toastConfigs = [];
this.toastService.removeToastBox();
}
+12 -1
View File
@@ -98,7 +98,18 @@ export class HttpClientService {
* @param options
*/
post(url: string, body?, options?): Observable<any> {
return this.commonProcess(this.httpClient.post(url, body, { headers: this.header }));
let optObj = {
headers: this.header
}
if (options) {
for (const key in options) {
if (options.hasOwnProperty(key)) {
// const element = options[key];
optObj[key] = options[key]
}
}
}
return this.commonProcess(this.httpClient.post(url, body, optObj));
}
/**