feat(buchhaltung): add transfers, bank statements, Haushaltsplan, and PDF export
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
// Lookup types
|
||||
export type KontoArt = 'einnahme' | 'ausgabe' | 'vermoegen' | 'verbindlichkeit';
|
||||
export type TransaktionTyp = 'einnahme' | 'ausgabe';
|
||||
export type TransaktionTyp = 'einnahme' | 'ausgabe' | 'transfer';
|
||||
export type TransaktionStatus = 'entwurf' | 'gebucht' | 'freigegeben' | 'storniert';
|
||||
export type FreigabeStatus = 'ausstehend' | 'genehmigt' | 'abgelehnt';
|
||||
export type WiederkehrendIntervall = 'monatlich' | 'quartalsweise' | 'halbjaehrlich' | 'jaehrlich';
|
||||
@@ -32,6 +32,7 @@ export const TRANSAKTION_STATUS_COLORS: Record<TransaktionStatus, 'default' | 'w
|
||||
export const TRANSAKTION_TYP_LABELS: Record<TransaktionTyp, string> = {
|
||||
einnahme: 'Einnahme',
|
||||
ausgabe: 'Ausgabe',
|
||||
transfer: 'Transfer',
|
||||
};
|
||||
|
||||
export const KONTO_ART_LABELS: Record<KontoArt, string> = {
|
||||
@@ -154,6 +155,8 @@ export interface Transaktion {
|
||||
konto_bezeichnung?: string;
|
||||
konto_kontonummer?: number;
|
||||
bankkonto_bezeichnung?: string;
|
||||
transfer_ziel_bankkonto_id?: number;
|
||||
transfer_ziel_bezeichnung?: string;
|
||||
belege?: Beleg[];
|
||||
}
|
||||
|
||||
@@ -306,3 +309,71 @@ export interface ErstattungLinks {
|
||||
erstattung_transaktion_id: number | null;
|
||||
quell_transaktion_ids: number[];
|
||||
}
|
||||
|
||||
export interface TransferFormData {
|
||||
haushaltsjahr_id: number;
|
||||
bankkonto_id: number;
|
||||
transfer_ziel_bankkonto_id: number;
|
||||
betrag: number;
|
||||
datum: string;
|
||||
beschreibung?: string;
|
||||
beleg_nr?: string;
|
||||
}
|
||||
|
||||
export interface BuchhaltungEinstellungen {
|
||||
default_alert_threshold?: string;
|
||||
[key: string]: unknown;
|
||||
}
|
||||
|
||||
export interface Planung {
|
||||
id: number;
|
||||
bezeichnung: string;
|
||||
haushaltsjahr_id: number | null;
|
||||
haushaltsjahr_bezeichnung?: string;
|
||||
haushaltsjahr_jahr?: number;
|
||||
beschreibung?: string;
|
||||
status: PlanungStatus;
|
||||
positionen_count: number;
|
||||
total_gwg: number;
|
||||
total_anlagen: number;
|
||||
total_instandhaltung: number;
|
||||
erstellt_von: string | null;
|
||||
erstellt_am: string;
|
||||
}
|
||||
|
||||
export interface Planposition {
|
||||
id: number;
|
||||
planung_id: number;
|
||||
konto_id: number | null;
|
||||
konto_bezeichnung?: string;
|
||||
konto_kontonummer?: number;
|
||||
bezeichnung: string;
|
||||
budget_gwg: number;
|
||||
budget_anlagen: number;
|
||||
budget_instandhaltung: number;
|
||||
notizen: string | null;
|
||||
sort_order: number;
|
||||
}
|
||||
|
||||
export interface PlanungDetail extends Planung {
|
||||
positionen: Planposition[];
|
||||
}
|
||||
|
||||
export interface BankkontoStatementRow {
|
||||
id: number;
|
||||
datum: string;
|
||||
typ: TransaktionTyp;
|
||||
beschreibung: string | null;
|
||||
beleg_nr: string | null;
|
||||
betrag: number;
|
||||
laufender_saldo: number;
|
||||
transfer_ziel_bezeichnung?: string;
|
||||
}
|
||||
|
||||
export interface BankkontoStatement {
|
||||
bankkonto: Bankkonto;
|
||||
einnahmen: number;
|
||||
ausgaben: number;
|
||||
saldo: number;
|
||||
rows: BankkontoStatementRow[];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user