Add view action

This commit is contained in:
Hillel Coren 2021-09-26 18:18:05 +03:00
parent afe62e5c2c
commit 6bca9c4913
14 changed files with 53 additions and 0 deletions

View File

@ -285,6 +285,10 @@ void handleClientAction(
case EntityAction.edit: case EntityAction.edit:
editEntity(context: context, entity: client); editEntity(context: context, entity: client);
break; break;
case EntityAction.view:
store.dispatch(UpdateUserPreferences(isPreviewEnabled: true));
viewEntity(entity: client);
break;
case EntityAction.clientPortal: case EntityAction.clientPortal:
final url = client.primaryContact?.silentLink ?? ''; final url = client.primaryContact?.silentLink ?? '';
if (url.isNotEmpty && await canLaunch(url)) { if (url.isNotEmpty && await canLaunch(url)) {

View File

@ -431,6 +431,10 @@ Future handleCreditAction(
case EntityAction.edit: case EntityAction.edit:
editEntity(context: context, entity: credit); editEntity(context: context, entity: credit);
break; break;
case EntityAction.view:
store.dispatch(UpdateUserPreferences(isPreviewEnabled: true));
viewEntity(entity: credit);
break;
case EntityAction.viewPdf: case EntityAction.viewPdf:
store.dispatch(ShowPdfCredit(credit: credit, context: context)); store.dispatch(ShowPdfCredit(credit: credit, context: context));
break; break;

View File

@ -255,6 +255,10 @@ void handleExpenseAction(
case EntityAction.edit: case EntityAction.edit:
editEntity(context: context, entity: expense); editEntity(context: context, entity: expense);
break; break;
case EntityAction.view:
store.dispatch(UpdateUserPreferences(isPreviewEnabled: true));
viewEntity(entity: expense);
break;
case EntityAction.cloneToExpense: case EntityAction.cloneToExpense:
createEntity( createEntity(
context: context, context: context,

View File

@ -520,6 +520,10 @@ void handleInvoiceAction(BuildContext context, List<BaseEntity> invoices,
case EntityAction.edit: case EntityAction.edit:
editEntity(context: context, entity: invoice); editEntity(context: context, entity: invoice);
break; break;
case EntityAction.view:
store.dispatch(UpdateUserPreferences(isPreviewEnabled: true));
viewEntity(entity: invoice);
break;
case EntityAction.viewPdf: case EntityAction.viewPdf:
store.dispatch(ShowPdfInvoice(invoice: invoice, context: context)); store.dispatch(ShowPdfInvoice(invoice: invoice, context: context));
break; break;

View File

@ -320,6 +320,10 @@ void handlePaymentAction(
case EntityAction.edit: case EntityAction.edit:
editEntity(context: context, entity: payment); editEntity(context: context, entity: payment);
break; break;
case EntityAction.view:
store.dispatch(UpdateUserPreferences(isPreviewEnabled: true));
viewEntity(entity: payment);
break;
case EntityAction.apply: case EntityAction.apply:
viewEntity(entity: payment); viewEntity(entity: payment);
WidgetsBinding.instance.addPostFrameCallback((duration) { WidgetsBinding.instance.addPostFrameCallback((duration) {

View File

@ -265,6 +265,10 @@ void handleProductAction(
case EntityAction.edit: case EntityAction.edit:
editEntity(context: context, entity: product); editEntity(context: context, entity: product);
break; break;
case EntityAction.view:
store.dispatch(UpdateUserPreferences(isPreviewEnabled: true));
viewEntity(entity: product);
break;
case EntityAction.clone: case EntityAction.clone:
createEntity(context: context, entity: (product as ProductEntity).clone); createEntity(context: context, entity: (product as ProductEntity).clone);
break; break;

View File

@ -267,6 +267,10 @@ void handleProjectAction(
case EntityAction.edit: case EntityAction.edit:
editEntity(context: context, entity: project); editEntity(context: context, entity: project);
break; break;
case EntityAction.view:
store.dispatch(UpdateUserPreferences(isPreviewEnabled: true));
viewEntity(entity: project);
break;
case EntityAction.newTask: case EntityAction.newTask:
createEntity( createEntity(
context: context, context: context,

View File

@ -450,6 +450,10 @@ Future handleQuoteAction(
case EntityAction.edit: case EntityAction.edit:
editEntity(context: context, entity: quote); editEntity(context: context, entity: quote);
break; break;
case EntityAction.view:
store.dispatch(UpdateUserPreferences(isPreviewEnabled: true));
viewEntity(entity: quote);
break;
case EntityAction.viewPdf: case EntityAction.viewPdf:
store.dispatch(ShowPdfQuote(quote: quote, context: context)); store.dispatch(ShowPdfQuote(quote: quote, context: context));
break; break;

View File

@ -347,6 +347,10 @@ void handleRecurringExpenseAction(BuildContext context,
case EntityAction.edit: case EntityAction.edit:
editEntity(context: context, entity: recurringExpense); editEntity(context: context, entity: recurringExpense);
break; break;
case EntityAction.view:
store.dispatch(UpdateUserPreferences(isPreviewEnabled: true));
viewEntity(entity: recurringExpense);
break;
case EntityAction.restore: case EntityAction.restore:
store.dispatch(RestoreRecurringExpensesRequest( store.dispatch(RestoreRecurringExpensesRequest(
snackBarCompleter<Null>( snackBarCompleter<Null>(

View File

@ -438,6 +438,10 @@ void handleRecurringInvoiceAction(BuildContext context,
case EntityAction.edit: case EntityAction.edit:
editEntity(context: context, entity: recurringInvoice); editEntity(context: context, entity: recurringInvoice);
break; break;
case EntityAction.view:
store.dispatch(UpdateUserPreferences(isPreviewEnabled: true));
viewEntity(entity: recurringInvoice);
break;
case EntityAction.viewPdf: case EntityAction.viewPdf:
store.dispatch( store.dispatch(
ShowPdfRecurringInvoice(invoice: recurringInvoice, context: context)); ShowPdfRecurringInvoice(invoice: recurringInvoice, context: context));

View File

@ -317,6 +317,10 @@ void handleTaskAction(
case EntityAction.edit: case EntityAction.edit:
editEntity(context: context, entity: task); editEntity(context: context, entity: task);
break; break;
case EntityAction.view:
store.dispatch(UpdateUserPreferences(isPreviewEnabled: true));
viewEntity(entity: task);
break;
case EntityAction.start: case EntityAction.start:
case EntityAction.stop: case EntityAction.stop:
case EntityAction.resume: case EntityAction.resume:

View File

@ -291,6 +291,10 @@ void handleVendorAction(
case EntityAction.edit: case EntityAction.edit:
editEntity(context: context, entity: vendor); editEntity(context: context, entity: vendor);
break; break;
case EntityAction.view:
store.dispatch(UpdateUserPreferences(isPreviewEnabled: true));
viewEntity(entity: vendor);
break;
case EntityAction.newExpense: case EntityAction.newExpense:
createEntity( createEntity(
context: context, context: context,

View File

@ -99,6 +99,7 @@ class EntityDataTableSource extends AppDataTableSource {
entityActions: entity.getActions( entityActions: entity.getActions(
userCompany: state.userCompany, userCompany: state.userCompany,
includeEdit: true, includeEdit: true,
includeView: !state.prefState.isPreviewEnabled,
client: entity is BelongsToClient client: entity is BelongsToClient
? state.clientState ? state.clientState
.map[(entity as BelongsToClient)?.clientId] .map[(entity as BelongsToClient)?.clientId]

View File

@ -285,6 +285,10 @@ void handleStubAction(
case EntityAction.edit: case EntityAction.edit:
editEntity(context: context, entity: stub); editEntity(context: context, entity: stub);
break; break;
case EntityAction.view:
store.dispatch(UpdateUserPreferences(isPreviewEnabled: true));
viewEntity(entity: stub);
break;
case EntityAction.restore: case EntityAction.restore:
store.dispatch(RestoreStubsRequest( store.dispatch(RestoreStubsRequest(
snackBarCompleter<Null>(context, localization.restoredStub), stubIds)); snackBarCompleter<Null>(context, localization.restoredStub), stubIds));