fix(buchhaltung): format transaction IDs as YYYY/NR and deduplicate dashboard widgets
This commit is contained in:
@@ -1219,7 +1219,7 @@ function TransaktionenTab({ haushaltsjahre, selectedJahrId, onJahrChange }: {
|
||||
)}
|
||||
{subTabTransaktionen.map((t: Transaktion) => (
|
||||
<TableRow key={t.id} hover>
|
||||
<TableCell>{t.laufende_nummer ?? `E${t.id}`}</TableCell>
|
||||
<TableCell>{t.laufende_nummer != null ? `${t.haushaltsjahr_jahr}/${t.laufende_nummer}` : `E${t.id}`}</TableCell>
|
||||
<TableCell>{fmtDate(t.datum)}</TableCell>
|
||||
<TableCell>
|
||||
<Chip
|
||||
|
||||
@@ -198,7 +198,7 @@ function Dashboard() {
|
||||
const allKeys = DEFAULT_ORDER[group];
|
||||
const ordered = saved.filter((k: string) => allKeys.includes(k) && !customGroupKeys.has(k));
|
||||
const remaining = allKeys.filter((k) => !allSavedKeys.has(k));
|
||||
merged[group] = [...ordered, ...remaining];
|
||||
merged[group] = [...new Set([...ordered, ...remaining])];
|
||||
}
|
||||
}
|
||||
// Include custom groups from preferences
|
||||
@@ -206,7 +206,7 @@ function Dashboard() {
|
||||
for (const cg of preferences.customGroups as { name: string; title: string }[]) {
|
||||
if (!merged[cg.name]) merged[cg.name] = [];
|
||||
if (preferences.widgetOrder[cg.name]) {
|
||||
merged[cg.name] = preferences.widgetOrder[cg.name] as string[];
|
||||
merged[cg.name] = [...new Set(preferences.widgetOrder[cg.name] as string[])];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -133,6 +133,7 @@ export interface Transaktion {
|
||||
konto_id: number | null;
|
||||
bankkonto_id: number | null;
|
||||
laufende_nummer: number | null;
|
||||
haushaltsjahr_jahr?: number;
|
||||
typ: TransaktionTyp;
|
||||
betrag: number;
|
||||
datum: string;
|
||||
|
||||
Reference in New Issue
Block a user