This commit is contained in:
Hillel Coren 2020-02-17 20:23:55 +02:00
parent 1c554514d3
commit 9511e6944b
3 changed files with 29 additions and 19 deletions

View File

@ -83,21 +83,23 @@ ReportResult clientReport(
? reportSettings[kReportClient] ? reportSettings[kReportClient]
: ReportSettingsEntity(); : ReportSettingsEntity();
final defaultColumns = [
ClientReportFields.name,
ClientReportFields.contact_email,
ClientReportFields.id_number,
ClientReportFields.vat_number,
ClientReportFields.currency,
ClientReportFields.balance,
ClientReportFields.paid_to_date,
ClientReportFields.country,
];
if (clientReportSettings.columns.isNotEmpty) { if (clientReportSettings.columns.isNotEmpty) {
columns = BuiltList(clientReportSettings.columns columns = BuiltList(clientReportSettings.columns
.map((e) => EnumUtils.fromString(ClientReportFields.values, e)) .map((e) => EnumUtils.fromString(ClientReportFields.values, e))
.toList()); .toList());
} else { } else {
columns = BuiltList(<ClientReportFields>[ columns = BuiltList(defaultColumns);
ClientReportFields.name,
ClientReportFields.contact_email,
ClientReportFields.id_number,
ClientReportFields.vat_number,
ClientReportFields.currency,
ClientReportFields.balance,
ClientReportFields.paid_to_date,
ClientReportFields.country,
]);
} }
for (var clientId in clientMap.keys) { for (var clientId in clientMap.keys) {
@ -293,8 +295,10 @@ ReportResult clientReport(
return ReportResult( return ReportResult(
allColumns: allColumns:
ClientReportFields.values.map((e) => EnumUtils.parse(e)).toList(), ClientReportFields.values.map((item) => EnumUtils.parse(item)).toList(),
columns: columns.map((item) => EnumUtils.parse(item)).toList(), columns: columns.map((item) => EnumUtils.parse(item)).toList(),
defaultColumns:
defaultColumns.map((item) => EnumUtils.parse(item)).toList(),
data: data, data: data,
); );
} }

View File

@ -71,19 +71,21 @@ ReportResult invoiceReport(
? reportSettings[kReportInvoice] ? reportSettings[kReportInvoice]
: ReportSettingsEntity(); : ReportSettingsEntity();
final defaultColumns = [
InvoiceReportFields.number,
InvoiceReportFields.amount,
InvoiceReportFields.balance,
InvoiceReportFields.date,
InvoiceReportFields.due_date,
InvoiceReportFields.client
];
if (invoiceReportSettings.columns.isNotEmpty) { if (invoiceReportSettings.columns.isNotEmpty) {
columns = BuiltList(invoiceReportSettings.columns columns = BuiltList(invoiceReportSettings.columns
.map((e) => EnumUtils.fromString(InvoiceReportFields.values, e)) .map((e) => EnumUtils.fromString(InvoiceReportFields.values, e))
.toList()); .toList());
} else { } else {
columns = BuiltList(<InvoiceReportFields>[ columns = BuiltList(defaultColumns);
InvoiceReportFields.number,
InvoiceReportFields.amount,
InvoiceReportFields.balance,
InvoiceReportFields.date,
InvoiceReportFields.due_date,
InvoiceReportFields.client
]);
} }
for (var invoiceId in invoiceMap.keys) { for (var invoiceId in invoiceMap.keys) {
@ -230,6 +232,8 @@ ReportResult invoiceReport(
allColumns: allColumns:
InvoiceReportFields.values.map((e) => EnumUtils.parse(e)).toList(), InvoiceReportFields.values.map((e) => EnumUtils.parse(e)).toList(),
columns: columns.map((item) => EnumUtils.parse(item)).toList(), columns: columns.map((item) => EnumUtils.parse(item)).toList(),
defaultColumns:
defaultColumns.map((item) => EnumUtils.parse(item)).toList(),
data: data, data: data,
); );
} }

View File

@ -505,11 +505,13 @@ class ReportResult {
ReportResult({ ReportResult({
@required this.columns, @required this.columns,
@required this.allColumns, @required this.allColumns,
@required this.defaultColumns,
@required this.data, @required this.data,
}); });
final List<String> columns; final List<String> columns;
final List<String> allColumns; final List<String> allColumns;
final List<String> defaultColumns;
final List<List<ReportElement>> data; final List<List<ReportElement>> data;
static bool matchField({ static bool matchField({