Show quote as sent after emailing
This commit is contained in:
parent
24ef988e99
commit
0690362961
|
|
@ -10,7 +10,6 @@ import 'package:invoiceninja_flutter/data/repositories/invoice_repository.dart';
|
|||
import 'package:invoiceninja_flutter/main_app.dart';
|
||||
import 'package:invoiceninja_flutter/redux/app/app_actions.dart';
|
||||
import 'package:invoiceninja_flutter/redux/app/app_state.dart';
|
||||
import 'package:invoiceninja_flutter/redux/client/client_actions.dart';
|
||||
import 'package:invoiceninja_flutter/redux/invoice/invoice_actions.dart';
|
||||
import 'package:invoiceninja_flutter/redux/payment/payment_actions.dart';
|
||||
import 'package:invoiceninja_flutter/redux/ui/ui_actions.dart';
|
||||
|
|
@ -208,7 +207,7 @@ Middleware<AppState> _deleteInvoice(InvoiceRepository repository) {
|
|||
store.state.credentials, action.invoiceIds, EntityAction.delete)
|
||||
.then((List<InvoiceEntity> invoices) {
|
||||
store.dispatch(DeleteInvoicesSuccess(invoices));
|
||||
store.dispatch(LoadClient(clientId: invoices.first.clientId));
|
||||
store.dispatch(RefreshData());
|
||||
if (action.completer != null) {
|
||||
action.completer.complete(null);
|
||||
}
|
||||
|
|
@ -235,7 +234,7 @@ Middleware<AppState> _restoreInvoice(InvoiceRepository repository) {
|
|||
store.state.credentials, action.invoiceIds, EntityAction.restore)
|
||||
.then((List<InvoiceEntity> invoices) {
|
||||
store.dispatch(RestoreInvoicesSuccess(invoices));
|
||||
store.dispatch(LoadClient(clientId: invoices.first.clientId));
|
||||
store.dispatch(RefreshData());
|
||||
if (action.completer != null) {
|
||||
action.completer.complete(null);
|
||||
}
|
||||
|
|
@ -259,7 +258,7 @@ Middleware<AppState> _markInvoiceSent(InvoiceRepository repository) {
|
|||
store.state.credentials, action.invoiceIds, EntityAction.markSent)
|
||||
.then((invoices) {
|
||||
store.dispatch(MarkInvoicesSentSuccess(invoices));
|
||||
store.dispatch(LoadClient(clientId: invoices.first.clientId));
|
||||
store.dispatch(RefreshData());
|
||||
if (action.completer != null) {
|
||||
action.completer.complete(null);
|
||||
}
|
||||
|
|
@ -331,7 +330,7 @@ Middleware<AppState> _emailInvoice(InvoiceRepository repository) {
|
|||
action.subject, action.body)
|
||||
.then((InvoiceEntity invoice) {
|
||||
store.dispatch(EmailInvoiceSuccess(invoice: invoice));
|
||||
store.dispatch(LoadClient(clientId: origInvoice.clientId));
|
||||
store.dispatch(RefreshData());
|
||||
if (action.completer != null) {
|
||||
action.completer.complete(null);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -230,7 +230,11 @@ class EmailQuoteRequest implements StartSaving {
|
|||
final String body;
|
||||
}
|
||||
|
||||
class EmailQuoteSuccess implements StopSaving, PersistData {}
|
||||
class EmailQuoteSuccess implements StopSaving, PersistData {
|
||||
EmailQuoteSuccess(this.quote);
|
||||
|
||||
final InvoiceEntity quote;
|
||||
}
|
||||
|
||||
class EmailQuoteFailure implements StopSaving {
|
||||
EmailQuoteFailure(this.error);
|
||||
|
|
|
|||
|
|
@ -271,8 +271,8 @@ Middleware<AppState> _emailQuote(QuoteRepository repository) {
|
|||
repository
|
||||
.emailQuote(store.state.credentials, origQuote, action.template,
|
||||
action.subject, action.body)
|
||||
.then((void _) {
|
||||
store.dispatch(EmailQuoteSuccess());
|
||||
.then((quote) {
|
||||
store.dispatch(EmailQuoteSuccess(quote));
|
||||
if (action.completer != null) {
|
||||
action.completer.complete(null);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -301,6 +301,7 @@ final quotesReducer = combineReducers<QuoteState>([
|
|||
TypedReducer<QuoteState, LoadQuoteSuccess>(_updateQuote),
|
||||
TypedReducer<QuoteState, LoadCompanySuccess>(_setLoadedCompany),
|
||||
TypedReducer<QuoteState, MarkSentQuoteSuccess>(_markSentQuoteSuccess),
|
||||
TypedReducer<QuoteState, EmailQuoteSuccess>(_emailQuoteSuccess),
|
||||
TypedReducer<QuoteState, ArchiveQuotesSuccess>(_archiveQuoteSuccess),
|
||||
TypedReducer<QuoteState, DeleteQuotesSuccess>(_deleteQuoteSuccess),
|
||||
TypedReducer<QuoteState, RestoreQuotesSuccess>(_restoreQuoteSuccess),
|
||||
|
|
@ -344,6 +345,10 @@ QuoteState _restoreQuoteSuccess(
|
|||
});
|
||||
}
|
||||
|
||||
QuoteState _emailQuoteSuccess(QuoteState quoteState, EmailQuoteSuccess action) {
|
||||
return quoteState.rebuild((b) => b..map[action.quote.id] = action.quote);
|
||||
}
|
||||
|
||||
QuoteState _convertQuoteSuccess(
|
||||
QuoteState quoteState, ConvertQuoteSuccess action) {
|
||||
final quoteMap = Map<String, InvoiceEntity>.fromIterable(
|
||||
|
|
|
|||
Loading…
Reference in New Issue