Fix responsive layout and header icons

This commit is contained in:
2026-08-14 13:26:07 +09:00
parent 59ea372ac7
commit 45d2b74775
8 changed files with 44 additions and 13 deletions

View File

@@ -1,4 +1,5 @@
import { setHeader } from 'h3'
import { format } from 'date-fns'
import { prisma } from '../../utils/db'
import { requireUser } from '../../utils/auth'
@@ -11,23 +12,26 @@ export default defineEventHandler(async (event) => {
})
const escape = (value: unknown) => `"${String(value ?? '').replaceAll('"', '""')}"`
const categoryName = (row: typeof rows[number]) => row.category.name
const parentCategoryName = (row: typeof rows[number]) => row.category.parent?.name || ''
const lines = [
['id', 'type', 'occurredAt', 'asset', 'category', 'amount', 'title', 'memo', 'latitude', 'longitude'].map(escape).join(','),
['날짜', '유형', '자산', '상위분류', '분류', '금액', '내용', '메모', '위도', '경도', '거래ID'].map(escape).join(','),
...rows.map(row => [
row.id,
row.type,
row.occurredAt.toISOString(),
format(row.occurredAt, 'yyyy-MM-dd'),
row.type === 'income' ? '수입' : '지출',
row.asset.name,
row.category.parent ? `${row.category.parent.name} > ${row.category.name}` : row.category.name,
parentCategoryName(row),
categoryName(row),
row.amount,
row.title,
row.memo,
row.latitude,
row.longitude
row.longitude,
row.id
].map(escape).join(','))
]
setHeader(event, 'content-type', 'text/csv; charset=utf-8')
setHeader(event, 'content-disposition', 'attachment; filename="transactions.csv"')
return lines.join('\n')
setHeader(event, 'content-disposition', 'attachment; filename="money-transactions.csv"')
return `\uFEFF${lines.join('\n')}`
})