feat: Track reports view events

This commit is contained in:
Ahmed Bouhuolia
2024-10-26 12:39:48 +02:00
parent 32ba6f9a6c
commit cadf6b81a0
18 changed files with 459 additions and 2 deletions

View File

@@ -8,6 +8,8 @@ import {
IPurchasesByItemsSheet,
} from '@/interfaces/PurchasesByItemsSheet';
import { PurchasesByItemsMeta } from './PurchasesByItemsMeta';
import { EventPublisher } from '@/lib/EventPublisher/EventPublisher';
import events from '@/subscribers/events';
@Service()
export class PurchasesByItemsService {
@@ -17,6 +19,9 @@ export class PurchasesByItemsService {
@Inject()
private purchasesByItemsMeta: PurchasesByItemsMeta;
@Inject()
private eventPublisher: EventPublisher;
/**
* Defaults purchases by items filter query.
* @return {IPurchasesByItemsReportQuery}
@@ -92,6 +97,15 @@ export class PurchasesByItemsService {
// Retrieve the purchases by items meta.
const meta = await this.purchasesByItemsMeta.meta(tenantId, query);
// Triggers `onPurchasesByItemViewed` event.
await this.eventPublisher.emitAsync(
events.reports.onPurchasesByItemViewed,
{
tenantId,
query,
}
);
return {
data: purchasesByItemsData,
query: filter,