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