Can delete expense
This commit is contained in:
@@ -49,6 +49,22 @@ class ScanDetailScreen extends HookConsumerWidget {
|
||||
}
|
||||
}
|
||||
|
||||
handleDelete() async {
|
||||
try {
|
||||
await expenses.deleteExpense(expense.requireValue!.$1);
|
||||
if (context.mounted) {
|
||||
context.pop();
|
||||
}
|
||||
|
||||
ref.invalidate(expensesProvider);
|
||||
} catch (e, s) {
|
||||
Logger.root.warning("Failed to delete expense! $e$s");
|
||||
if (context.mounted) {
|
||||
context.showTextSnackBar("Failed to delete expense! $e");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return switch (expense) {
|
||||
AsyncData(:final value) when value == null => FullScreenError(
|
||||
message: "Expense does not exists!",
|
||||
@@ -56,8 +72,9 @@ class ScanDetailScreen extends HookConsumerWidget {
|
||||
),
|
||||
AsyncData(:final value) => ExpenseEditor(
|
||||
file: value!.$2,
|
||||
onFinished: handleUpdate,
|
||||
initialData: value.$1.baseExpense,
|
||||
onFinished: handleUpdate,
|
||||
onDelete: handleDelete,
|
||||
),
|
||||
AsyncError(:final error) => FullScreenError(
|
||||
message: "Failed to load expense information!",
|
||||
|
Reference in New Issue
Block a user