From 34de70ab66d28c0f623599d11733acb01fc576b1 Mon Sep 17 00:00:00 2001 From: DragonSlayer_14 Date: Mon, 22 Dec 2025 01:46:47 +0100 Subject: [PATCH] =?UTF-8?q?Feat:=20F=C3=BCgt=20Entities=20f=C3=BCr=20accou?= =?UTF-8?q?nt,=20transaction=20und=20recurring=5Ftransaction=20hinzu?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/Entities/account.dart | 11 +++++++++++ lib/Entities/recurring_transaction.dart | 22 ++++++++++++++++++++++ lib/Entities/time_frame_enum.dart | 14 ++++++++++++++ lib/Entities/transaction.dart | 17 +++++++++++++++++ 4 files changed, 64 insertions(+) create mode 100644 lib/Entities/account.dart create mode 100644 lib/Entities/recurring_transaction.dart create mode 100644 lib/Entities/time_frame_enum.dart create mode 100644 lib/Entities/transaction.dart diff --git a/lib/Entities/account.dart b/lib/Entities/account.dart new file mode 100644 index 0000000..86ef847 --- /dev/null +++ b/lib/Entities/account.dart @@ -0,0 +1,11 @@ +import 'package:isar/isar.dart'; + +/// Die Klasse stellt ein Konto dar. +@collection +class Account { + /// Die Id des Kontos + Id id = Isar.autoIncrement; + + /// Der Name des Kontos + String name = ''; +} diff --git a/lib/Entities/recurring_transaction.dart b/lib/Entities/recurring_transaction.dart new file mode 100644 index 0000000..34e786b --- /dev/null +++ b/lib/Entities/recurring_transaction.dart @@ -0,0 +1,22 @@ +import 'package:isar/isar.dart'; + +import 'time_frame_enum.dart'; + +/// Stellt eine wiederkehrende Transaktion dar +@collection +class RecurringTransaction { + /// Die Id der wiederkehrenden Transaktion + Id id = Isar.autoIncrement; + + /// Der Name der wiederkehrenden Transaktion + String name = ''; + + /// Das Startdatum ab wann diese wiederkehrende Transaktion belastet wird + DateTime? startDate; + + /// Der Zeitraum der wiederkehrenden Transaktion + TimeFrameEnum? timeFrame; + + /// Die Höhe der wiederkehrenden Transaktion + double amount = 0; +} diff --git a/lib/Entities/time_frame_enum.dart b/lib/Entities/time_frame_enum.dart new file mode 100644 index 0000000..630c7e0 --- /dev/null +++ b/lib/Entities/time_frame_enum.dart @@ -0,0 +1,14 @@ +/// Ein Enum, das bestimmte Zeitspannen darstellt +enum TimeFrameEnum { + /// Für eine tägliche Zeitspanne + daily, + + /// Für eine wöchentliche Zeitspanne + weekly, + + /// Für eine monatliche Zeitspanne + monthly, + + /// Für eine jährliche Zeitspanne + yearly, +} diff --git a/lib/Entities/transaction.dart b/lib/Entities/transaction.dart new file mode 100644 index 0000000..699a34d --- /dev/null +++ b/lib/Entities/transaction.dart @@ -0,0 +1,17 @@ +import 'package:isar/isar.dart'; + +/// Die Klasse stellt eine Transaktion dar. +@collection +class Transaction { + /// Die Id der Transaktion + Id id = Isar.autoIncrement; + + /// Der Name der Transaktion + String name = ''; + + /// Der Tag an der die Transaktion getätigt wurde + DateTime? date; + + /// Die Höhe der Transaktion + double amount = 0; +}