Add colored status field to tables

This commit is contained in:
Hillel Coren 2020-10-06 17:39:53 +03:00
parent 2f2d18bc5b
commit 60571a1fb8
5 changed files with 10 additions and 15 deletions

View File

@ -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

View File

@ -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

View File

@ -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:

View File

@ -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);

View File

@ -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