From f342007676e35f937a5917cbdbadf27edf46dd3e Mon Sep 17 00:00:00 2001 From: Vasily Zubarev Date: Mon, 7 Apr 2025 11:25:32 +0200 Subject: [PATCH] fix #10: custom fields are empty on export --- app/(app)/export/transactions/route.ts | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/app/(app)/export/transactions/route.ts b/app/(app)/export/transactions/route.ts index 2d69fda..4803a63 100644 --- a/app/(app)/export/transactions/route.ts +++ b/app/(app)/export/transactions/route.ts @@ -39,13 +39,19 @@ export async function GET(request: Request) { // CSV rows for (const transaction of transactions) { const row: Record = {} - for (const key of fieldKeys) { - const value = transaction[key as keyof typeof transaction] ?? "" - const exportFieldSettings = EXPORT_AND_IMPORT_FIELD_MAP[key] - if (exportFieldSettings && exportFieldSettings.export) { - row[key] = await exportFieldSettings.export(user.id, value) + for (const field of existingFields) { + let value + if (field.isExtra) { + value = transaction.extra?.[field.code as keyof typeof transaction.extra] ?? "" } else { - row[key] = value + value = transaction[field.code as keyof typeof transaction] ?? "" + } + + const exportFieldSettings = EXPORT_AND_IMPORT_FIELD_MAP[field.code] + if (exportFieldSettings && exportFieldSettings.export) { + row[field.code] = await exportFieldSettings.export(user.id, value) + } else { + row[field.code] = value } }