This commit is contained in:
Hillel Coren 2018-08-30 17:23:21 -07:00
parent 5228f9154d
commit 618407af8e
2 changed files with 11 additions and 4 deletions

View File

@ -8,6 +8,7 @@ import 'package:invoiceninja_flutter/utils/localization.dart';
class EntityDropdown extends StatefulWidget {
const EntityDropdown({
Key key,
@required this.entityType,
@required this.labelText,
@required this.entityMap,
@ -16,7 +17,7 @@ class EntityDropdown extends StatefulWidget {
this.validator,
this.initialValue,
this.onAddPressed,
});
}) : super(key: key);
final EntityType entityType;
final BuiltMap<int, SelectableEntity> entityMap;

View File

@ -114,12 +114,14 @@ class _PaymentEditState extends State<PaymentEdit> {
children: <Widget>[
payment.isNew
? EntityDropdown(
key: Key('__${clientId}__'),
entityType: EntityType.client,
labelText: AppLocalization.of(context).client,
entityMap: viewModel.clientMap,
initialValue: viewModel
.clientMap[payment.invoiceId]?.listDisplayName,
onSelected: (clientId) => setState(() => this.clientId = clientId),
.clientMap[clientId]?.listDisplayName,
onSelected: (clientId) =>
setState(() => this.clientId = clientId),
entityList: memoizedDropdownClientList(
viewModel.clientMap, viewModel.clientList),
)
@ -132,8 +134,12 @@ class _PaymentEditState extends State<PaymentEdit> {
initialValue: viewModel
.invoiceMap[payment.invoiceId]?.listDisplayName,
entityList: memoizedDropdownInvoiceList(
viewModel.invoiceMap, viewModel.invoiceList, clientId),
viewModel.invoiceMap,
viewModel.invoiceList,
clientId),
onSelected: (invoiceId) {
setState(() => clientId =
viewModel.invoiceMap[invoiceId].clientId);
viewModel.onChanged(payment
.rebuild((b) => b..invoiceId = invoiceId));
},