diff --git a/lib/ui/expense/edit/expense_edit_details.dart b/lib/ui/expense/edit/expense_edit_details.dart index 3e0a843b4..06ccc64ea 100644 --- a/lib/ui/expense/edit/expense_edit_details.dart +++ b/lib/ui/expense/edit/expense_edit_details.dart @@ -107,6 +107,30 @@ class ExpenseEditDetailsState extends State { viewModel.onAddVendorPressed(context, completer); }, ), + expense.isInvoiced + ? SizedBox() + : EntityDropdown( + entityType: EntityType.client, + labelText: localization.client, + initialValue: + (clientState.map[expense.clientId] ?? ClientEntity()) + .displayName, + entityMap: clientState.map, + entityList: memoizedDropdownClientList( + clientState.map, clientState.list), + onSelected: (client) { + var currencyId = (client as ClientEntity).currencyId; + if (currencyId == 0) { + currencyId = company.currencyId; + } + viewModel.onChanged(expense.rebuild((b) => b + ..clientId = client.id + ..invoiceCurrencyId = currencyId)); + }, + onAddPressed: (completer) { + viewModel.onAddClientPressed(context, completer); + }, + ), EntityDropdown( entityType: EntityType.expenseCategory, labelText: localization.category, @@ -147,30 +171,6 @@ class ExpenseEditDetailsState extends State { .onChanged(expense.rebuild((b) => b..expenseDate = date)); }, ), - expense.isInvoiced - ? SizedBox() - : EntityDropdown( - entityType: EntityType.client, - labelText: localization.client, - initialValue: - (clientState.map[expense.clientId] ?? ClientEntity()) - .displayName, - entityMap: clientState.map, - entityList: memoizedDropdownClientList( - clientState.map, clientState.list), - onSelected: (client) { - var currencyId = (client as ClientEntity).currencyId; - if (currencyId == 0) { - currencyId = company.currencyId; - } - viewModel.onChanged(expense.rebuild((b) => b - ..clientId = client.id - ..invoiceCurrencyId = currencyId)); - }, - onAddPressed: (completer) { - viewModel.onAddClientPressed(context, completer); - }, - ), CustomField( controller: _custom1Controller, labelText: company.getCustomFieldLabel(CustomFieldType.expense1),