From 93c133349a5ccd7a328371fa113dce69d5611f21 Mon Sep 17 00:00:00 2001
From: liuyu <yu.liu@cqgbkj.com>
Date: 星期二, 22 九月 2026 09:25:39 +0800
Subject: [PATCH] feat(tms): 完成课程考试自测等页面与接口对接
---
apps/jnpf-web-apps-main/src/views/x/tms/trainRecord/Catalog.vue | 43 ++++++++++++++++++++++++++++++++++++++-----
1 files changed, 38 insertions(+), 5 deletions(-)
diff --git a/apps/jnpf-web-apps-main/src/views/x/tms/trainRecord/Catalog.vue b/apps/jnpf-web-apps-main/src/views/x/tms/trainRecord/Catalog.vue
index 86d0cf8..4601102 100644
--- a/apps/jnpf-web-apps-main/src/views/x/tms/trainRecord/Catalog.vue
+++ b/apps/jnpf-web-apps-main/src/views/x/tms/trainRecord/Catalog.vue
@@ -9,6 +9,7 @@
import dayjs from 'dayjs';
import { getTrainRecordCatalog } from '#/api/x/tms/trainRecord';
+import { TMS_BTN } from '#/views/x/tms/shared/ui';
defineOptions({ name: 'TmsTrainRecordCatalog' });
@@ -84,7 +85,39 @@
createMessage.warning('鏆傛棤鏁版嵁鍙鍑�');
return;
}
- createMessage.success(`宸插噯澶囧鍑� ${list.length} 鏉★紙瀵煎嚭鎺ュ彛鑱旇皟鍚庣敓鏁堬級`);
+ const headers = ['鍩硅璁板綍缂栧彿', '鍩硅绫诲瀷', '鍩硅鍐呭', '鍩硅鏂瑰紡', '鍩硅甯�', '鑰冩牳鏂瑰紡', '鍩硅缁撴灉', '鏄惁鍚堟牸', '鍏蜂綋鍩硅鏃堕棿'];
+ const escape = (v: unknown) => {
+ const s = v === null || v === undefined ? '' : String(v);
+ return /[",\n]/.test(s) ? `"${s.replace(/"/g, '""')}"` : s;
+ };
+ const passText = (v: string) => (v === '1' ? '鍚堟牸' : v === '0' ? '涓嶅悎鏍�' : '');
+ const lines = [
+ headers.join(','),
+ ...list.map((row) =>
+ [
+ row.recordNo,
+ row.trainType,
+ row.trainContent,
+ row.trainMode,
+ row.trainerName,
+ row.evalMode,
+ resultText(row),
+ passText(row.passFlag),
+ row.trainDate || '',
+ ]
+ .map(escape)
+ .join(','),
+ ),
+ ];
+ const bom = '\uFEFF';
+ const blob = new Blob([bom + lines.join('\n')], { type: 'text/csv;charset=utf-8;' });
+ const url = URL.createObjectURL(blob);
+ const a = document.createElement('a');
+ a.href = url;
+ a.download = `鍩硅鐩綍_${detail.value?.userName || detail.value?.archiveNo || 'export'}_${dayjs().format('YYYYMMDD')}.csv`;
+ a.click();
+ URL.revokeObjectURL(url);
+ createMessage.success(`宸插鍑� ${list.length} 鏉);
}
function goBack() {
@@ -119,12 +152,12 @@
:placeholder="['寮�濮嬫棩鏈�', '缁撴潫鏃ユ湡']"
:get-popup-container="popupContainer"
/>
- <a-button type="primary" class="ml-3" @click="handleSearch">鏌ヨ</a-button>
- <a-button class="ml-2" @click="handleReset">閲嶇疆</a-button>
+ <a-button type="primary" class="ml-3" @click="handleSearch">{{ TMS_BTN.search }}</a-button>
+ <a-button class="ml-2" @click="handleReset">{{ TMS_BTN.reset }}</a-button>
</div>
<a-space>
- <a-button @click="handleExport">瀵煎嚭</a-button>
- <a-button @click="goBack">鍏抽棴</a-button>
+ <a-button type="primary" ghost @click="handleExport">{{ TMS_BTN.export }}</a-button>
+ <a-button @click="goBack">{{ TMS_BTN.close }}</a-button>
</a-space>
</div>
--
Gitblit v1.8.0