basic csv loader, transaction list & half done stats page

This commit is contained in:
2024-02-04 22:34:28 +01:00
commit 3abee9ff6f
179 changed files with 6999 additions and 0 deletions

View File

@@ -0,0 +1,79 @@
part of 'account_bloc.dart';
final class AccountState extends Equatable {
final List<Transaction> transactions;
final List<TransactionLine> transactionsLines;
final double globalTotal;
final Map<String, double> accountsTotals;
final List<String> categories;
final TransactionDate transactionDate;
final TransactionCategory transactionCategory;
final TransactionDescription transactionDescription;
final TransactionAccount transactionAccount;
final TransactionValue transactionValue;
final bool isValid;
final bool showAddDialog;
const AccountState({
this.transactions = const [],
this.transactionsLines = const [],
this.globalTotal = 0,
this.accountsTotals = const <String, double>{},
this.categories = const [],
this.transactionDate = const TransactionDate.pure(),
this.transactionCategory = const TransactionCategory.pure(),
this.transactionDescription = const TransactionDescription.pure(),
this.transactionAccount = const TransactionAccount.pure(),
this.transactionValue = const TransactionValue.pure(),
this.isValid = false,
this.showAddDialog = false,
});
AccountState copyWith({
List<Transaction>? transactions,
List<TransactionLine>? transactionsLines,
double? globalTotal,
Map<String, double>? accountsTotals,
List<String>? categories,
TransactionDate? transactionDate,
TransactionCategory? transactionCategory,
TransactionDescription? transactionDescription,
TransactionAccount? transactionAccount,
TransactionValue? transactionValue,
bool? isValid,
bool? showAddDialog,
}) {
return AccountState(
transactions: transactions ?? this.transactions,
transactionsLines: transactionsLines ?? this.transactionsLines,
globalTotal: globalTotal ?? this.globalTotal,
accountsTotals: accountsTotals ?? this.accountsTotals,
categories: categories ?? this.categories,
transactionDate: transactionDate ?? this.transactionDate,
transactionCategory: transactionCategory ?? this.transactionCategory,
transactionDescription: transactionDescription ?? this.transactionDescription,
transactionAccount: transactionAccount ?? this.transactionAccount,
transactionValue: transactionValue ?? this.transactionValue,
isValid: isValid ?? this.isValid,
showAddDialog: showAddDialog ?? this.showAddDialog,
);
}
@override
List<Object?> get props => [
transactions,
transactionsLines,
globalTotal,
accountsTotals,
categories,
transactionDate,
transactionCategory,
transactionDescription,
transactionAccount,
transactionValue,
isValid,
showAddDialog,
];
}