From 114d77ca489df0302d3b5bd464804a178e1f78f4 Mon Sep 17 00:00:00 2001 From: jacy <18049821889@163.com> Date: Sun, 23 Aug 2026 17:33:20 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=AE=A2=E5=8D=95=E5=AF=BC?= =?UTF-8?q?=E5=87=BA=E6=97=B6=E9=97=B4=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/modules/ops/admin-order-export.util.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/server/dukang-api/src/modules/ops/admin-order-export.util.ts b/server/dukang-api/src/modules/ops/admin-order-export.util.ts index 3c06664..094ab2e 100644 --- a/server/dukang-api/src/modules/ops/admin-order-export.util.ts +++ b/server/dukang-api/src/modules/ops/admin-order-export.util.ts @@ -48,9 +48,14 @@ function formatBenefitBrief(order: { return ''; } +/** 导出给运营看的时间:按上海时区,避免 toISOString() 落成 UTC(少 8 小时) */ +function formatShanghaiDateTime(value: Date): string { + return value.toLocaleString('sv-SE', { timeZone: 'Asia/Shanghai' }); +} + export function formatExportDateTime(value?: Date | null): string { if (!value) return ''; - return value.toISOString().slice(0, 19).replace('T', ' '); + return formatShanghaiDateTime(value); } export function mapOrderToExportRow(order: { @@ -206,6 +211,6 @@ export async function buildOrdersPdf(rows: OrderExportRow[]): Promise { } export function buildExportFilename(format: 'xlsx' | 'pdf', count: number): string { - const stamp = new Date().toISOString().slice(0, 10); + const stamp = formatShanghaiDateTime(new Date()).slice(0, 10); return `订单导出_${stamp}_${count}条.${format}`; }