修改G30二级内容

This commit is contained in:
2025-12-26 17:08:15 +08:00
parent d15660c731
commit 17e733333c
46 changed files with 4171 additions and 1976 deletions

View File

@@ -1,22 +1,26 @@
<template>
<div class="report-body">
<!-- 操作行 -->
<!-- Action row / 操作行 -->
<div class="report-actions">
<el-button type="primary" @click="exportReport" icon="el-icon-download" size="small">导出报表</el-button>
<el-button type="primary" @click="exportReport" icon="el-icon-download" size="small">Export Report</el-button>
<!-- 导出报表 -->
</div>
<div class="overview-bar">
<div class="overview-left">
<div class="overview-title">{{ title }}</div>
<div class="overview-meta">
<span>报表类型{{ overviewInfo.reportLabel || '-' }}</span>
<span>时间范围{{ overviewInfo.rangeText || '-' }}</span>
<span>Report Type: {{ overviewInfo.reportLabel || '-' }}</span>
<!-- 报表类型 -->
<span>Time Range: {{ overviewInfo.rangeText || '-' }}</span>
<!-- 时间范围 -->
</div>
</div>
<div class="overview-actions">
<el-tag size="mini" effect="dark">{{ overviewInfo.reportLabel || '-' }}</el-tag>
</div>
</div>
<h1 class="report-body-title">总览数据</h1>
<h1 class="report-body-title">Overview Data</h1>
<!-- 总览数据 -->
<div class="summary-cards" v-if="summary.length > 0">
<div v-for="(item, index) in summary" :key="index">
<span class="card-title">{{ item.label }}</span>
@@ -43,7 +47,8 @@
</tbody>
</table>
</div>
<el-empty v-else description="暂无数据" />
<el-empty v-else description="No data" />
<!-- 暂无数据 -->
</div>
</div>
</template>
@@ -86,13 +91,13 @@ export default {
return value
},
exportReport() {
// 创建工作簿
// Create workbook / 创建工作簿
const workbook = XLSX.utils.book_new();
// 准备导出数据数组
// Prepare export data array / 准备导出数据数组
const exportData = [];
// 处理表格数据确保按columns定义的顺序和标签导出
// Process table data, ensure export in order and labels defined by columns / 处理表格数据确保按columns定义的顺序和标签导出
const tableData = this.dataset.map(row => {
const formattedRow = {};
this.columns.forEach(col => {
@@ -101,23 +106,23 @@ export default {
return formattedRow;
});
// 添加表格数据
// Add table data / 添加表格数据
exportData.push(...tableData);
// 创建工作表
// Create worksheet / 创建工作表
const worksheet = XLSX.utils.json_to_sheet(exportData);
// 调整列宽
// Adjust column width / 调整列宽
const columnWidths = this.columns.map(col => ({ wch: Math.max(col.label.length * 1.5, 10) }));
worksheet['!cols'] = columnWidths;
// 添加工作表到工作簿
XLSX.utils.book_append_sheet(workbook, worksheet, '报表数据');
// Add worksheet to workbook / 添加工作表到工作簿
XLSX.utils.book_append_sheet(workbook, worksheet, 'Report Data'); // 报表数据
// 生成文件名
// Generate file name / 生成文件名
const exportFileName = this.fileName || `${this.title.replace(/[\\/*?:"<>|]/g, '')}_${new Date().toLocaleDateString()}.xlsx`;
// 导出文件
// Export file / 导出文件
XLSX.writeFile(workbook, exportFileName);
}
}