This commit is contained in:
Hillel Coren 2019-11-25 18:05:54 +02:00
parent a464428144
commit a010756b5f
3 changed files with 24 additions and 15 deletions

View File

@ -405,24 +405,28 @@ abstract class InvoiceEntity extends Object
final actions = <EntityAction>[]; final actions = <EntityAction>[];
if (!isDeleted) { if (!isDeleted) {
if (includeEdit && userCompany.canEditEntity(this)) { if (userCompany.canEditEntity(this)) {
actions.add(EntityAction.edit); if (includeEdit) {
} actions.add(EntityAction.edit);
}
if (userCompany.canEditEntity(this) && !isSent) { if (!isSent) {
actions.add(EntityAction.markSent); actions.add(EntityAction.markSent);
} }
if (userCompany.canEditEntity(this) && if (!isPaid) {
client != null && actions.add(EntityAction.markPaid);
client.hasEmailAddress) { }
actions.add(EntityAction.sendEmail);
}
if (userCompany.canEditEntity(this) && if (client != null &&
userCompany.canCreate(EntityType.payment) && client.hasEmailAddress) {
isUnpaid) { actions.add(EntityAction.sendEmail);
actions.add(EntityAction.newPayment); }
if (userCompany.canCreate(EntityType.payment) &&
isUnpaid) {
actions.add(EntityAction.newPayment);
}
} }
if (invitations.isNotEmpty) { if (invitations.isNotEmpty) {

View File

@ -48,6 +48,7 @@ class EntityAction extends EnumClass {
static const EntityAction download = _$download; static const EntityAction download = _$download;
static const EntityAction sendEmail = _$sendEmail; static const EntityAction sendEmail = _$sendEmail;
static const EntityAction markSent = _$markSent; static const EntityAction markSent = _$markSent;
static const EntityAction markPaid = _$markPaid;
static const EntityAction newClient = _$newClient; static const EntityAction newClient = _$newClient;
static const EntityAction newInvoice = _$newInvoice; static const EntityAction newInvoice = _$newInvoice;
static const EntityAction newQuote = _$newQuote; static const EntityAction newQuote = _$newQuote;

View File

@ -17,6 +17,7 @@ const EntityAction _$convert = const EntityAction._('convert');
const EntityAction _$download = const EntityAction._('download'); const EntityAction _$download = const EntityAction._('download');
const EntityAction _$sendEmail = const EntityAction._('sendEmail'); const EntityAction _$sendEmail = const EntityAction._('sendEmail');
const EntityAction _$markSent = const EntityAction._('markSent'); const EntityAction _$markSent = const EntityAction._('markSent');
const EntityAction _$markPaid = const EntityAction._('markPaid');
const EntityAction _$newClient = const EntityAction._('newClient'); const EntityAction _$newClient = const EntityAction._('newClient');
const EntityAction _$newInvoice = const EntityAction._('newInvoice'); const EntityAction _$newInvoice = const EntityAction._('newInvoice');
const EntityAction _$newQuote = const EntityAction._('newQuote'); const EntityAction _$newQuote = const EntityAction._('newQuote');
@ -60,6 +61,8 @@ EntityAction _$valueOf(String name) {
return _$sendEmail; return _$sendEmail;
case 'markSent': case 'markSent':
return _$markSent; return _$markSent;
case 'markPaid':
return _$markPaid;
case 'newClient': case 'newClient':
return _$newClient; return _$newClient;
case 'newInvoice': case 'newInvoice':
@ -112,6 +115,7 @@ final BuiltSet<EntityAction> _$values =
_$download, _$download,
_$sendEmail, _$sendEmail,
_$markSent, _$markSent,
_$markPaid,
_$newClient, _$newClient,
_$newInvoice, _$newInvoice,
_$newQuote, _$newQuote,