Files
ausgaben-next/types/ausgaben.ts

68 lines
1.7 KiB
TypeScript

// TypeScript interfaces for Ausgaben application
export interface AusgabenEntry {
ID: number;
Datum: string;
WochTag: string;
Wo: string;
Was: string;
Wieviel: number;
Wie: string;
TYP: number;
OK?: number;
}
export interface CreateAusgabenEntry {
Datum: string;
WochTag: string;
Wo: string;
Was: string;
Wieviel: string | number;
Wie: string;
TYP: number;
OK?: number;
}
export interface MonthlyStats {
totalAusgaben: number;
ECR?: number;
ECB?: number;
barR?: number;
barB?: number;
bar?: number;
EC?: number;
VISA?: number;
MASTER?: number;
Einnahmen: number;
Ueberweisungen: number;
}
// Haushalt Zahlungsarten (TYP = 0)
// Verwende alte Formate ohne Bindestriche für Kompatibilität mit bestehenden Daten
export type ZahlungsartHaushalt = 'ECR' | 'ECB' | 'barR' | 'barB' | 'Ein' | 'Uber';
export const ZAHLUNGSARTEN_HAUSHALT: { value: ZahlungsartHaushalt; label: string }[] = [
{ value: 'ECR', label: 'EC-R' },
{ value: 'ECB', label: 'EC-B' },
{ value: 'barR', label: 'bar-R' },
{ value: 'barB', label: 'bar-B' },
{ value: 'Ein', label: 'Einnahme' },
{ value: 'Uber', label: 'Überweisung' },
];
// Privat Zahlungsarten (TYP = 1)
export type ZahlungsartPrivat = 'bar' | 'EC' | 'VISA' | 'MASTER' | 'Einnahme' | 'Uber';
export const ZAHLUNGSARTEN_PRIVAT: { value: ZahlungsartPrivat; label: string }[] = [
{ value: 'bar', label: 'bar' },
{ value: 'EC', label: 'EC' },
{ value: 'VISA', label: 'VISA' },
{ value: 'MASTER', label: 'Master' },
{ value: 'Einnahme', label: 'Einnahme' },
{ value: 'Uber', label: 'Überweisung' },
];
// Legacy exports for backward compatibility
export type Zahlungsart = ZahlungsartHaushalt | ZahlungsartPrivat;
export const ZAHLUNGSARTEN = ZAHLUNGSARTEN_HAUSHALT;