|
|
@@ -111,11 +111,17 @@
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="startTime" label="开始时间" width="170">
|
|
|
+ <template slot-scope="{ row }">
|
|
|
+ {{ fmtLocalTime(row.startTime) }}
|
|
|
+ </template>
|
|
|
<template slot="header">
|
|
|
<span class="sort-header" @click.stop="onSortClick('startTime', $event)">开始时间<span v-if="sortIndex('startTime') !== null" class="sort-index" :class="sortClass('startTime') === 'sort-asc' ? 'sort-asc-badge' : 'sort-desc-badge'">{{ sortIndex('startTime') }}</span>{{ sortIcon('startTime') }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="endTime" label="结束时间" width="170">
|
|
|
+ <template slot-scope="{ row }">
|
|
|
+ {{ fmtLocalTime(row.endTime) }}
|
|
|
+ </template>
|
|
|
<template slot="header">
|
|
|
<span class="sort-header" @click.stop="onSortClick('endTime', $event)">结束时间<span v-if="sortIndex('endTime') !== null" class="sort-index" :class="sortClass('endTime') === 'sort-asc' ? 'sort-asc-badge' : 'sort-desc-badge'">{{ sortIndex('endTime') }}</span>{{ sortIcon('endTime') }}</span>
|
|
|
</template>
|
|
|
@@ -256,6 +262,17 @@ export default {
|
|
|
dimensionLabel(code) {
|
|
|
return DIMENSION_MAP[code] || code || '—'
|
|
|
},
|
|
|
+ // 后端把 java.util.Date 序列化为 UTC 偏移串(如 2026-10-25T01:00:00.000+00:00),
|
|
|
+ // 这里统一转 Asia/Shanghai 本地墙钟时间展示,避免比实际时间少 8 小时
|
|
|
+ fmtLocalTime(val) {
|
|
|
+ if (val === null || val === undefined || val === '') return '—'
|
|
|
+ const d = new Date(val)
|
|
|
+ if (isNaN(d.getTime())) return String(val)
|
|
|
+ const bj = new Date(d.getTime() + d.getTimezoneOffset() * 60000 + 8 * 3600000)
|
|
|
+ const pad = n => (n < 10 ? '0' + n : '' + n)
|
|
|
+ return bj.getFullYear() + '-' + pad(bj.getMonth() + 1) + '-' + pad(bj.getDate()) + ' ' +
|
|
|
+ pad(bj.getHours()) + ':' + pad(bj.getMinutes()) + ':' + pad(bj.getSeconds())
|
|
|
+ },
|
|
|
async loadActivities() {
|
|
|
this.loading = true
|
|
|
try {
|