diff --git a/lib/data/models/serializers.dart b/lib/data/models/serializers.dart index 4f6e3f0ed..65307e307 100644 --- a/lib/data/models/serializers.dart +++ b/lib/data/models/serializers.dart @@ -118,7 +118,7 @@ part 'serializers.g.dart'; TransactionEntity, TransactionListResponse, TransactionItemResponse, - + TransactionStatusEntity, BankAccountEntity, BankAccountListResponse, BankAccountItemResponse, diff --git a/lib/data/models/serializers.g.dart b/lib/data/models/serializers.g.dart index 074a77bef..94bf71152 100644 --- a/lib/data/models/serializers.g.dart +++ b/lib/data/models/serializers.g.dart @@ -197,6 +197,7 @@ Serializers _$serializers = (new Serializers().toBuilder() ..add(TransactionItemResponse.serializer) ..add(TransactionListResponse.serializer) ..add(TransactionState.serializer) + ..add(TransactionStatusEntity.serializer) ..add(TransactionUIState.serializer) ..add(UIState.serializer) ..add(UserCompanyEntity.serializer) diff --git a/lib/redux/transaction/transaction_reducer.dart b/lib/redux/transaction/transaction_reducer.dart index 496730344..6d8de9df0 100644 --- a/lib/redux/transaction/transaction_reducer.dart +++ b/lib/redux/transaction/transaction_reducer.dart @@ -54,6 +54,7 @@ Reducer selectedIdReducer = combineReducers([ TypedReducer((selectedId, action) => ''), TypedReducer((selectedId, action) => ''), TypedReducer((selectedId, action) => ''), + TypedReducer((selectedId, action) => ''), TypedReducer((selectedId, action) => ''), TypedReducer((selectedId, action) => ''), TypedReducer((selectedId, action) => ''), diff --git a/lib/ui/transaction/view/transaction_view.dart b/lib/ui/transaction/view/transaction_view.dart index 3f922bca6..a0857e4e4 100644 --- a/lib/ui/transaction/view/transaction_view.dart +++ b/lib/ui/transaction/view/transaction_view.dart @@ -135,6 +135,15 @@ class _MatchDepositsState extends State<_MatchDeposits> { _focusNode = FocusNode(); _selectedInvoices = []; + final transactions = widget.viewModel.transactions; + final state = widget.viewModel.state; + if (transactions.isNotEmpty) { + _selectedInvoices = transactions.first.invoiceIds + .split(',') + .map((invoiceId) => state.invoiceState.get(invoiceId)) + .toList(); + } + updateInvoiceList(); } @@ -447,6 +456,19 @@ class _MatchWithdrawalsState extends State<_MatchWithdrawals> { _vendorFocusNode = FocusNode(); _categoryFocusNode = FocusNode(); + final transactions = widget.viewModel.transactions; + final state = widget.viewModel.state; + if (transactions.isNotEmpty) { + final transaction = transactions.first; + if ((transaction.categoryId ?? '').isNotEmpty) { + _selectedCategory = + state.expenseCategoryState.get(transaction.categoryId); + } + if ((transaction.vendorId ?? '').isNotEmpty) { + _selectedVendor = state.vendorState.get(transaction.vendorId); + } + } + updateVendorList(); updateCategoryList(); }