|
|
|
@ -3,8 +3,9 @@ import { createWorkbook } from './createWorkbook'; |
|
|
|
|
// exporter maybe is broken since Gridfs introduced, add fs and path
|
|
|
|
|
|
|
|
|
|
class ExporterExcel { |
|
|
|
|
constructor(boardId) { |
|
|
|
|
constructor(boardId, userLanguage) { |
|
|
|
|
this._boardId = boardId; |
|
|
|
|
this.userLanguage = userLanguage; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
build(res) { |
|
|
|
@ -157,8 +158,8 @@ class ExporterExcel { |
|
|
|
|
|
|
|
|
|
//init exceljs workbook
|
|
|
|
|
const workbook = createWorkbook(); |
|
|
|
|
workbook.creator = TAPi18n.__('export-board'); |
|
|
|
|
workbook.lastModifiedBy = TAPi18n.__('export-board'); |
|
|
|
|
workbook.creator = TAPi18n.__('export-board','',this.userLanguage); |
|
|
|
|
workbook.lastModifiedBy = TAPi18n.__('export-board','',this.userLanguage); |
|
|
|
|
workbook.created = new Date(); |
|
|
|
|
workbook.modified = new Date(); |
|
|
|
|
workbook.lastPrinted = new Date(); |
|
|
|
@ -367,11 +368,11 @@ class ExporterExcel { |
|
|
|
|
ws.addRow().values = ['', '', '', '', '', '']; |
|
|
|
|
//add kanban info
|
|
|
|
|
ws.addRow().values = [ |
|
|
|
|
TAPi18n.__('createdAt'), |
|
|
|
|
TAPi18n.__('createdAt','',this.userLanguage), |
|
|
|
|
addTZhours(result.createdAt), |
|
|
|
|
TAPi18n.__('modifiedAt'), |
|
|
|
|
TAPi18n.__('modifiedAt','',this.userLanguage), |
|
|
|
|
addTZhours(result.modifiedAt), |
|
|
|
|
TAPi18n.__('members'), |
|
|
|
|
TAPi18n.__('members','',this.userLanguage), |
|
|
|
|
jmem, |
|
|
|
|
]; |
|
|
|
|
ws.getRow(3).font = { |
|
|
|
@ -388,6 +389,14 @@ class ExporterExcel { |
|
|
|
|
}, |
|
|
|
|
numFmt: 'yyyy/mm/dd hh:mm:ss', |
|
|
|
|
}; |
|
|
|
|
ws.getCell('D3').style = { |
|
|
|
|
font: { |
|
|
|
|
name: TAPi18n.__('excel-font'), |
|
|
|
|
size: '10', |
|
|
|
|
bold: true, |
|
|
|
|
}, |
|
|
|
|
numFmt: 'yyyy/mm/dd hh:mm:ss', |
|
|
|
|
}; |
|
|
|
|
//cell center
|
|
|
|
|
function cellCenter(cellno) { |
|
|
|
|
ws.getCell(cellno).alignment = { |
|
|
|
@ -455,24 +464,24 @@ class ExporterExcel { |
|
|
|
|
//ws.addRow().values = ['编号', '标题', '创建人', '创建时间', '更新时间', '列表', '成员', '描述', '标签'];
|
|
|
|
|
//this is where order in which the excel file generates
|
|
|
|
|
ws.addRow().values = [ |
|
|
|
|
TAPi18n.__('number'), |
|
|
|
|
TAPi18n.__('title'), |
|
|
|
|
TAPi18n.__('description'), |
|
|
|
|
TAPi18n.__('parent-card'), |
|
|
|
|
TAPi18n.__('owner'), |
|
|
|
|
TAPi18n.__('createdAt'), |
|
|
|
|
TAPi18n.__('last-modified-at'), |
|
|
|
|
TAPi18n.__('card-received'), |
|
|
|
|
TAPi18n.__('card-start'), |
|
|
|
|
TAPi18n.__('card-due'), |
|
|
|
|
TAPi18n.__('card-end'), |
|
|
|
|
TAPi18n.__('list'), |
|
|
|
|
TAPi18n.__('swimlane'), |
|
|
|
|
TAPi18n.__('assignee'), |
|
|
|
|
TAPi18n.__('members'), |
|
|
|
|
TAPi18n.__('labels'), |
|
|
|
|
TAPi18n.__('overtime-hours'), |
|
|
|
|
TAPi18n.__('spent-time-hours'), |
|
|
|
|
TAPi18n.__('number','',this.userLanguage), |
|
|
|
|
TAPi18n.__('title','',this.userLanguage), |
|
|
|
|
TAPi18n.__('description','',this.userLanguage), |
|
|
|
|
TAPi18n.__('parent-card','',this.userLanguage), |
|
|
|
|
TAPi18n.__('owner','',this.userLanguage), |
|
|
|
|
TAPi18n.__('createdAt','',this.userLanguage), |
|
|
|
|
TAPi18n.__('last-modified-at','',this.userLanguage), |
|
|
|
|
TAPi18n.__('card-received','',this.userLanguage), |
|
|
|
|
TAPi18n.__('card-start','',this.userLanguage), |
|
|
|
|
TAPi18n.__('card-due','',this.userLanguage), |
|
|
|
|
TAPi18n.__('card-end','',this.userLanguage), |
|
|
|
|
TAPi18n.__('list','',this.userLanguage), |
|
|
|
|
TAPi18n.__('swimlane','',this.userLanguage), |
|
|
|
|
TAPi18n.__('assignee','',this.userLanguage), |
|
|
|
|
TAPi18n.__('members','',this.userLanguage), |
|
|
|
|
TAPi18n.__('labels','',this.userLanguage), |
|
|
|
|
TAPi18n.__('overtime-hours','',this.userLanguage), |
|
|
|
|
TAPi18n.__('spent-time-hours','',this.userLanguage), |
|
|
|
|
]; |
|
|
|
|
ws.getRow(5).height = 20; |
|
|
|
|
allBorder('A5'); |
|
|
|
|