66 lines
1.7 KiB
TypeScript
66 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;
|
|
}
|
|
|
|
export interface CreateAusgabenEntry {
|
|
Datum: string;
|
|
WochTag: string;
|
|
Wo: string;
|
|
Was: string;
|
|
Wieviel: string | number;
|
|
Wie: string;
|
|
TYP: 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;
|