From 60571a1fb8f436fbdb38c3b2feec787a01ad61ab Mon Sep 17 00:00:00 2001 From: Hillel Coren Date: Tue, 6 Oct 2020 17:39:53 +0300 Subject: [PATCH] Add colored status field to tables --- lib/ui/credit/credit_presenter.dart | 3 ++- lib/ui/invoice/invoice_presenter.dart | 5 ++--- lib/ui/payment/payment_presenter.dart | 4 ++-- lib/ui/quote/quote_presenter.dart | 7 ++----- lib/ui/recurring_invoice/recurring_invoice_presenter.dart | 6 ++---- 5 files changed, 10 insertions(+), 15 deletions(-) diff --git a/lib/ui/credit/credit_presenter.dart b/lib/ui/credit/credit_presenter.dart index 99346799f..73d4cba50 100644 --- a/lib/ui/credit/credit_presenter.dart +++ b/lib/ui/credit/credit_presenter.dart @@ -3,6 +3,7 @@ import 'package:flutter_redux/flutter_redux.dart'; import 'package:invoiceninja_flutter/data/models/models.dart'; import 'package:invoiceninja_flutter/data/models/credit_model.dart'; import 'package:invoiceninja_flutter/redux/app/app_state.dart'; +import 'package:invoiceninja_flutter/ui/app/entities/entity_status_chip.dart'; import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart'; import 'package:invoiceninja_flutter/utils/formatting.dart'; import 'package:invoiceninja_flutter/utils/localization.dart'; @@ -46,7 +47,7 @@ class CreditPresenter extends EntityPresenter { switch (field) { case CreditFields.status: - return Text(localization.lookup(kQuoteStatuses[credit.statusId])); + return EntityStatusChip(entity: credit); case CreditFields.number: return Text((credit.number ?? '').isEmpty ? localization.pending diff --git a/lib/ui/invoice/invoice_presenter.dart b/lib/ui/invoice/invoice_presenter.dart index bb0824c64..5d50a625c 100644 --- a/lib/ui/invoice/invoice_presenter.dart +++ b/lib/ui/invoice/invoice_presenter.dart @@ -3,6 +3,7 @@ import 'package:flutter_redux/flutter_redux.dart'; import 'package:invoiceninja_flutter/constants.dart'; import 'package:invoiceninja_flutter/data/models/models.dart'; import 'package:invoiceninja_flutter/redux/app/app_state.dart'; +import 'package:invoiceninja_flutter/ui/app/entities/entity_status_chip.dart'; import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart'; import 'package:invoiceninja_flutter/utils/formatting.dart'; import 'package:invoiceninja_flutter/utils/localization.dart'; @@ -50,9 +51,7 @@ class InvoicePresenter extends EntityPresenter { switch (field) { case InvoiceFields.status: - return Text( - localization.lookup(kInvoiceStatuses[invoice.calculatedStatusId]), - ); + return EntityStatusChip(entity: invoice); case InvoiceFields.number: return Text((invoice.number ?? '').isEmpty ? localization.pending diff --git a/lib/ui/payment/payment_presenter.dart b/lib/ui/payment/payment_presenter.dart index ff146a81e..d71db51b0 100644 --- a/lib/ui/payment/payment_presenter.dart +++ b/lib/ui/payment/payment_presenter.dart @@ -2,6 +2,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_redux/flutter_redux.dart'; import 'package:invoiceninja_flutter/data/models/models.dart'; import 'package:invoiceninja_flutter/redux/app/app_state.dart'; +import 'package:invoiceninja_flutter/ui/app/entities/entity_status_chip.dart'; import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart'; import 'package:invoiceninja_flutter/utils/formatting.dart'; import 'package:invoiceninja_flutter/utils/localization.dart'; @@ -63,8 +64,7 @@ class PaymentPresenter extends EntityPresenter { child: Text(formatNumber(payment.amount, context, clientId: payment.clientId))); case PaymentFields.paymentStatus: - return Text(AppLocalization.of(context) - .lookup('payment_status_${payment.statusId}')); + return EntityStatusChip(entity: payment); case PaymentFields.customValue1: return Text(payment.customValue1); case PaymentFields.customValue2: diff --git a/lib/ui/quote/quote_presenter.dart b/lib/ui/quote/quote_presenter.dart index 359fc03c7..97787a609 100644 --- a/lib/ui/quote/quote_presenter.dart +++ b/lib/ui/quote/quote_presenter.dart @@ -3,6 +3,7 @@ import 'package:flutter_redux/flutter_redux.dart'; import 'package:invoiceninja_flutter/data/models/models.dart'; import 'package:invoiceninja_flutter/data/models/quote_model.dart'; import 'package:invoiceninja_flutter/redux/app/app_state.dart'; +import 'package:invoiceninja_flutter/ui/app/entities/entity_status_chip.dart'; import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart'; import 'package:invoiceninja_flutter/utils/formatting.dart'; import 'package:invoiceninja_flutter/utils/localization.dart'; @@ -46,11 +47,7 @@ class QuotePresenter extends EntityPresenter { switch (field) { case QuoteFields.status: - return Text( - quote.isPastDue - ? localization.expired - : localization.lookup(kQuoteStatuses[quote.statusId]), - ); + return EntityStatusChip(entity: quote); case QuoteFields.number: return Text( (quote.number ?? '').isEmpty ? localization.pending : quote.number); diff --git a/lib/ui/recurring_invoice/recurring_invoice_presenter.dart b/lib/ui/recurring_invoice/recurring_invoice_presenter.dart index 18ffe3b26..f2eeb58cd 100644 --- a/lib/ui/recurring_invoice/recurring_invoice_presenter.dart +++ b/lib/ui/recurring_invoice/recurring_invoice_presenter.dart @@ -4,6 +4,7 @@ import 'package:invoiceninja_flutter/constants.dart'; import 'package:invoiceninja_flutter/data/models/models.dart'; import 'package:invoiceninja_flutter/data/models/recurring_invoice_model.dart'; import 'package:invoiceninja_flutter/redux/app/app_state.dart'; +import 'package:invoiceninja_flutter/ui/app/entities/entity_status_chip.dart'; import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart'; import 'package:invoiceninja_flutter/utils/formatting.dart'; import 'package:invoiceninja_flutter/utils/localization.dart'; @@ -50,10 +51,7 @@ class RecurringInvoicePresenter extends EntityPresenter { switch (field) { case RecurringInvoiceFields.status: - return Text( - localization - .lookup(kRecurringInvoiceStatuses[invoice.calculatedStatusId]), - ); + return EntityStatusChip(entity: invoice); case RecurringInvoiceFields.invoiceNumber: return Text((invoice.number ?? '').isEmpty ? localization.pending