'use client' import { Badge } from '@/components/ui/badge' import { AccountNumber } from '@/components/ui/account-number' import { CheckCircle2, Paperclip } from 'lucide-react' interface ReviewLine { account_number: string debit_amount: string credit_amount: string line_description: string } interface JournalEntryReviewContentProps { periodName: string entryDate: string description: string lines: ReviewLine[] totalDebit: number totalCredit: number attachmentCount?: number } function formatAmount(amount: number): string { return amount.toLocaleString('sv-SE', { minimumFractionDigits: 2, maximumFractionDigits: 2 }) } export function JournalEntryReviewContent({ periodName, entryDate, description, lines, totalDebit, totalCredit, attachmentCount, }: JournalEntryReviewContentProps) { const activeLines = lines.filter( (l) => l.account_number && (l.debit_amount || l.credit_amount) ) return (
{/* Header info */}
Räkenskapsår

{periodName}

Datum

{entryDate}

Beskrivning

{description}

{/* Balance status */}
Debet = Kredit {attachmentCount != null && attachmentCount > 0 && ( {attachmentCount} {attachmentCount === 1 ? 'underlag' : 'underlag'} )}
{/* Debit/Credit table */} {activeLines.map((line, index) => ( ))}
Konto Beskrivning Debet Kredit
{line.line_description || ''} {parseFloat(line.debit_amount) > 0 ? formatAmount(parseFloat(line.debit_amount)) : ''} {parseFloat(line.credit_amount) > 0 ? formatAmount(parseFloat(line.credit_amount)) : ''}
Summa {formatAmount(totalDebit)} {formatAmount(totalCredit)}
) }