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

View File

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