Recurring invoices

This commit is contained in:
Hillel Coren 2020-09-13 13:51:12 +03:00
parent cc486a23ce
commit b4613f2e8e
5 changed files with 25 additions and 29 deletions

View File

@ -218,8 +218,11 @@ Middleware<AppState> _createLoadState(
store.dispatch(LoadStateSuccess(appState));
if (appState.isStale) {
print('## Load state: is stale - refreshing...');
store.dispatch(RefreshData());
store.dispatch(RefreshData(
completer: Completer<Null>()
..future.catchError(() {
store.dispatch(UserLogout(action.context));
})));
}
if (uiState.currentRoute != LoginScreen.route &&

View File

@ -231,7 +231,6 @@ Middleware<AppState> _createRefreshRequest(AuthRepository repository) {
loginResponse: data,
));
}).catchError((Object error) {
print('Refresh data error: $error');
if (action.completer != null) {
action.completer.completeError(error);
}

View File

@ -177,12 +177,6 @@ class AddRecurringInvoiceSuccess implements StopSaving, PersistData, PersistUI {
final InvoiceEntity recurringInvoice;
}
class AddQuoteItem implements PersistUI {
AddQuoteItem({this.quoteItem});
final InvoiceItemEntity quoteItem;
}
class AddRecurringInvoiceItem implements PersistUI {
AddRecurringInvoiceItem({this.invoiceItem});

View File

@ -2,9 +2,9 @@ import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:invoiceninja_flutter/ui/app/edit_scaffold.dart';
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_vm.dart';
import 'package:invoiceninja_flutter/ui/quote/edit/quote_edit_details_vm.dart';
import 'package:invoiceninja_flutter/ui/quote/edit/quote_edit_items_vm.dart';
import 'package:invoiceninja_flutter/ui/quote/edit/quote_edit_notes_vm.dart';
import 'package:invoiceninja_flutter/ui/recurring_invoice/edit/recurring_invoice_edit_details_vm.dart';
import 'package:invoiceninja_flutter/ui/recurring_invoice/edit/recurring_invoice_edit_items_vm.dart';
import 'package:invoiceninja_flutter/ui/recurring_invoice/edit/recurring_invoice_edit_notes_vm.dart';
import 'package:invoiceninja_flutter/utils/localization.dart';
class RecurringInvoiceEdit extends StatefulWidget {
@ -103,20 +103,20 @@ class _RecurringInvoiceEditState extends State<RecurringInvoiceEdit>
body: Form(
key: _formKey,
child: state.prefState.isDesktop
? QuoteEditDetailsScreen(
? RecurringInvoiceEditDetailsScreen(
viewModel: widget.viewModel,
)
: TabBarView(
key: ValueKey('__quote_${viewModel.invoice.id}__'),
controller: _controller,
children: <Widget>[
QuoteEditDetailsScreen(
RecurringInvoiceEditDetailsScreen(
viewModel: widget.viewModel,
),
QuoteEditItemsScreen(
RecurringInvoiceEditItemsScreen(
viewModel: widget.viewModel,
),
QuoteEditNotesScreen(),
RecurringInvoiceEditNotesScreen(),
],
),
),

View File

@ -35,12 +35,12 @@ class RecurringInvoiceEditDetailsScreen extends StatelessWidget {
viewModel: viewModel,
entityViewModel: this.viewModel,
key: ValueKey('__quote_${viewModel.invoice.id}__'),
entityType: EntityType.quote,
entityType: EntityType.recurringInvoice,
);
} else {
return InvoiceEditDetails(
viewModel: viewModel,
entityType: EntityType.quote,
entityType: EntityType.recurringInvoice,
);
}
},