Start filling in TODO's with Income and Asset code..

This commit is contained in:
Hyperling 2025-03-07 12:55:34 -07:00
parent 0b937186aa
commit 8ef8e0dad9

@ -10,8 +10,6 @@ import '/models/expense.dart';
import '/models/frequency.dart';
import '/db.dart';
// TODO: Make this a generic UI based on a superclass of Expense, Income, and Assets.
class TrackedItemPage extends StatefulWidget {
final Future<List<TrackedItem>> assetsToLoad;
@ -144,13 +142,19 @@ class _TrackedItemPageState extends State<TrackedItemPage> {
snapshot.data!.remove(curr);
switch (direction) {
case DismissDirection.startToEnd:
// Remove the item from the database.
if (curr is Expense) {
DatabaseHelper.instance
.removeExpense(curr.id!);
DatabaseHelper.instance.removeExpense(
curr.id!,
);
} else if (curr is Income) {
// TODO
DatabaseHelper.instance.removeIncome(
curr.id!,
);
} else if (curr is Asset) {
// TODO
DatabaseHelper.instance.removeAsset(
curr.id!,
);
} else {
throw UnimplementedError(
"Cannot remove unimplemented item type.");
@ -304,10 +308,10 @@ class _TrackedItemInputDialogState extends State<TrackedItemInputDialog> {
DatabaseHelper.instance.addExpense(widget.entry!);
break;
case ItemType.income:
// TODO
DatabaseHelper.instance.addIncome(widget.entry!);
break;
case ItemType.asset:
// TODO
DatabaseHelper.instance.addAsset(widget.entry!);
break;
default:
throw UnimplementedError(