Add PO's to activities

This commit is contained in:
Hillel Coren 2022-08-29 13:50:28 +03:00
parent 6120964a7b
commit 1c43af4107
4 changed files with 55 additions and 15 deletions

View File

@ -649,6 +649,10 @@ abstract class ActivityEntity
@BuiltValueField(wireName: 'recurring_expense_id') @BuiltValueField(wireName: 'recurring_expense_id')
String get recurringExpenseId; String get recurringExpenseId;
@nullable
@BuiltValueField(wireName: 'purchase_order_id')
String get purchaseOrderId;
@nullable @nullable
@BuiltValueField(wireName: 'quote_id') @BuiltValueField(wireName: 'quote_id')
String get quoteId; String get quoteId;
@ -845,6 +849,7 @@ abstract class ActivityEntity
VendorEntity vendor, VendorEntity vendor,
InvoiceEntity recurringInvoice, InvoiceEntity recurringInvoice,
ExpenseEntity recurringExpense, ExpenseEntity recurringExpense,
InvoiceEntity purchaseOrder,
}) { }) {
ClientContactEntity contact; ClientContactEntity contact;
if (client != null && contactId != null && contactId.isNotEmpty) { if (client != null && contactId != null && contactId.isNotEmpty) {
@ -868,6 +873,8 @@ abstract class ActivityEntity
activity = activity.replaceFirst(':task', task?.number ?? ''); activity = activity.replaceFirst(':task', task?.number ?? '');
activity = activity.replaceFirst(':expense', expense?.number ?? ''); activity = activity.replaceFirst(':expense', expense?.number ?? '');
activity = activity.replaceFirst(':vendor', vendor?.name ?? ''); activity = activity.replaceFirst(':vendor', vendor?.name ?? '');
activity =
activity.replaceFirst(':purchase_order', purchaseOrder?.number ?? '');
activity = activity.replaceFirst( activity = activity.replaceFirst(
':recurring_expense', vendor?.name ?? ''); // TODO implement ':recurring_expense', vendor?.name ?? ''); // TODO implement
activity = activity.replaceAll(' ', ' '); activity = activity.replaceAll(' ', ' ');

View File

@ -543,6 +543,13 @@ class _$ActivityEntitySerializer
..add(serializers.serialize(value, ..add(serializers.serialize(value,
specifiedType: const FullType(String))); specifiedType: const FullType(String)));
} }
value = object.purchaseOrderId;
if (value != null) {
result
..add('purchase_order_id')
..add(serializers.serialize(value,
specifiedType: const FullType(String)));
}
value = object.quoteId; value = object.quoteId;
if (value != null) { if (value != null) {
result result
@ -674,6 +681,10 @@ class _$ActivityEntitySerializer
result.recurringExpenseId = serializers.deserialize(value, result.recurringExpenseId = serializers.deserialize(value,
specifiedType: const FullType(String)) as String; specifiedType: const FullType(String)) as String;
break; break;
case 'purchase_order_id':
result.purchaseOrderId = serializers.deserialize(value,
specifiedType: const FullType(String)) as String;
break;
case 'quote_id': case 'quote_id':
result.quoteId = serializers.deserialize(value, result.quoteId = serializers.deserialize(value,
specifiedType: const FullType(String)) as String; specifiedType: const FullType(String)) as String;
@ -1034,6 +1045,8 @@ class _$ActivityEntity extends ActivityEntity {
@override @override
final String recurringExpenseId; final String recurringExpenseId;
@override @override
final String purchaseOrderId;
@override
final String quoteId; final String quoteId;
@override @override
final String paymentId; final String paymentId;
@ -1072,6 +1085,7 @@ class _$ActivityEntity extends ActivityEntity {
this.invoiceId, this.invoiceId,
this.recurringInvoiceId, this.recurringInvoiceId,
this.recurringExpenseId, this.recurringExpenseId,
this.purchaseOrderId,
this.quoteId, this.quoteId,
this.paymentId, this.paymentId,
this.creditId, this.creditId,
@ -1115,6 +1129,7 @@ class _$ActivityEntity extends ActivityEntity {
invoiceId == other.invoiceId && invoiceId == other.invoiceId &&
recurringInvoiceId == other.recurringInvoiceId && recurringInvoiceId == other.recurringInvoiceId &&
recurringExpenseId == other.recurringExpenseId && recurringExpenseId == other.recurringExpenseId &&
purchaseOrderId == other.purchaseOrderId &&
quoteId == other.quoteId && quoteId == other.quoteId &&
paymentId == other.paymentId && paymentId == other.paymentId &&
creditId == other.creditId && creditId == other.creditId &&
@ -1151,13 +1166,13 @@ class _$ActivityEntity extends ActivityEntity {
$jc( $jc(
$jc( $jc(
$jc( $jc(
$jc($jc($jc(0, notes.hashCode), key.hashCode), $jc($jc($jc($jc(0, notes.hashCode), key.hashCode), activityTypeId.hashCode),
activityTypeId.hashCode), clientId.hashCode),
clientId.hashCode), userId.hashCode),
userId.hashCode), invoiceId.hashCode),
invoiceId.hashCode), recurringInvoiceId.hashCode),
recurringInvoiceId.hashCode), recurringExpenseId.hashCode),
recurringExpenseId.hashCode), purchaseOrderId.hashCode),
quoteId.hashCode), quoteId.hashCode),
paymentId.hashCode), paymentId.hashCode),
creditId.hashCode), creditId.hashCode),
@ -1184,6 +1199,7 @@ class _$ActivityEntity extends ActivityEntity {
..add('invoiceId', invoiceId) ..add('invoiceId', invoiceId)
..add('recurringInvoiceId', recurringInvoiceId) ..add('recurringInvoiceId', recurringInvoiceId)
..add('recurringExpenseId', recurringExpenseId) ..add('recurringExpenseId', recurringExpenseId)
..add('purchaseOrderId', purchaseOrderId)
..add('quoteId', quoteId) ..add('quoteId', quoteId)
..add('paymentId', paymentId) ..add('paymentId', paymentId)
..add('creditId', creditId) ..add('creditId', creditId)
@ -1240,6 +1256,11 @@ class ActivityEntityBuilder
set recurringExpenseId(String recurringExpenseId) => set recurringExpenseId(String recurringExpenseId) =>
_$this._recurringExpenseId = recurringExpenseId; _$this._recurringExpenseId = recurringExpenseId;
String _purchaseOrderId;
String get purchaseOrderId => _$this._purchaseOrderId;
set purchaseOrderId(String purchaseOrderId) =>
_$this._purchaseOrderId = purchaseOrderId;
String _quoteId; String _quoteId;
String get quoteId => _$this._quoteId; String get quoteId => _$this._quoteId;
set quoteId(String quoteId) => _$this._quoteId = quoteId; set quoteId(String quoteId) => _$this._quoteId = quoteId;
@ -1306,6 +1327,7 @@ class ActivityEntityBuilder
_invoiceId = $v.invoiceId; _invoiceId = $v.invoiceId;
_recurringInvoiceId = $v.recurringInvoiceId; _recurringInvoiceId = $v.recurringInvoiceId;
_recurringExpenseId = $v.recurringExpenseId; _recurringExpenseId = $v.recurringExpenseId;
_purchaseOrderId = $v.purchaseOrderId;
_quoteId = $v.quoteId; _quoteId = $v.quoteId;
_paymentId = $v.paymentId; _paymentId = $v.paymentId;
_creditId = $v.creditId; _creditId = $v.creditId;
@ -1353,6 +1375,7 @@ class ActivityEntityBuilder
invoiceId: invoiceId, invoiceId: invoiceId,
recurringInvoiceId: recurringInvoiceId, recurringInvoiceId: recurringInvoiceId,
recurringExpenseId: recurringExpenseId, recurringExpenseId: recurringExpenseId,
purchaseOrderId: purchaseOrderId,
quoteId: quoteId, quoteId: quoteId,
paymentId: paymentId, paymentId: paymentId,
creditId: creditId, creditId: creditId,

View File

@ -42,6 +42,8 @@ class ActivityListTile extends StatelessWidget {
final expense = state.expenseState.map[activity.expenseId]; final expense = state.expenseState.map[activity.expenseId];
final recurringExpense = final recurringExpense =
state.recurringExpenseState.map[activity.recurringExpenseId]; state.recurringExpenseState.map[activity.recurringExpenseId];
final purchaseOrder =
state.purchaseOrderState.map[activity.purchaseOrderId];
String title = localization.lookup('activity_${activity.activityTypeId}'); String title = localization.lookup('activity_${activity.activityTypeId}');
title = activity.getDescription( title = activity.getDescription(
@ -58,6 +60,7 @@ class ActivityListTile extends StatelessWidget {
recurringInvoice: recurringInvoice, recurringInvoice: recurringInvoice,
recurringExpense: recurringExpense, recurringExpense: recurringExpense,
vendor: vendor, vendor: vendor,
purchaseOrder: purchaseOrder,
); );
return ListTile( return ListTile(
@ -114,6 +117,13 @@ class ActivityListTile extends StatelessWidget {
filterEntity: client, filterEntity: client,
); );
break; break;
case EntityType.purchaseOrder:
viewEntityById(
entityId: activity.purchaseOrderId,
entityType: EntityType.purchaseOrder,
filterEntity: vendor,
);
break;
default: default:
print( print(
'Error: entity type ${activity.entityType} not handled in activity_list_tile'); 'Error: entity type ${activity.entityType} not handled in activity_list_tile');

View File

@ -36,14 +36,14 @@ mixin LocalizationsProvider on LocaleCodeAware {
'total_pending_expenses': 'Pending Expenses', 'total_pending_expenses': 'Pending Expenses',
'total_invoiced_expenses': 'Invoiced Expenses', 'total_invoiced_expenses': 'Invoiced Expenses',
'total_invoice_paid_expenses': 'Invoice Paid Expenses', 'total_invoice_paid_expenses': 'Invoice Paid Expenses',
'activity_130': ':user created purchase order', 'activity_130': ':user created purchase order :purchase_order',
'activity_131': ':user updated purchase order', 'activity_131': ':user updated purchase order :purchase_order',
'activity_132': ':user archived purchase order', 'activity_132': ':user archived purchase order :purchase_order',
'activity_133': ':user deleted purchase order', 'activity_133': ':user deleted purchase order :purchase_order',
'activity_134': ':user restored purchase order', 'activity_134': ':user restored purchase order :purchase_order',
'activity_135': ':user emailed purchase order', 'activity_135': ':user emailed purchase order :purchase_order',
'activity_136': ':contact viewed purchase order', 'activity_136': ':contact viewed purchase order :purchase_order',
'activity_137': ':contact accepted purchase order', 'activity_137': ':contact accepted purchase order :purchase_order',
'vendor_portal': 'Vendor Portal', 'vendor_portal': 'Vendor Portal',
'send_code': 'Send Code', 'send_code': 'Send Code',
'save_to_upload_documents': 'Save the record to upload documents', 'save_to_upload_documents': 'Save the record to upload documents',