5044 Dispatch createcontact job instead of emitting an event (#5135)

Closes #5044
This commit is contained in:
bosiraphael
2024-04-24 15:01:13 +02:00
committed by GitHub
parent 87a9ecee28
commit d130b78166
4 changed files with 43 additions and 53 deletions

View File

@ -9,7 +9,6 @@ import { PersonObjectMetadata } from 'src/modules/person/standard-objects/person
import { WorkspaceMemberObjectMetadata } from 'src/modules/workspace-member/standard-objects/workspace-member.object-metadata';
import { MessageParticipantModule } from 'src/modules/messaging/services/message-participant/message-participant.module';
import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module';
import { CreateCompanyAndContactListener } from 'src/modules/connected-account/auto-companies-and-contacts-creation/listeners/create-company-and-contact.listener';
import { CalendarEventParticipantObjectMetadata } from 'src/modules/calendar/standard-objects/calendar-event-participant.object-metadata';
import { CalendarEventParticipantModule } from 'src/modules/calendar/services/calendar-event-participant/calendar-event-participant.module';
import { FeatureFlagEntity } from 'src/engine/core-modules/feature-flag/feature-flag.entity';
@ -28,7 +27,7 @@ import { FeatureFlagEntity } from 'src/engine/core-modules/feature-flag/feature-
CalendarEventParticipantModule,
TypeOrmModule.forFeature([FeatureFlagEntity], 'core'),
],
providers: [CreateCompanyAndContactService, CreateCompanyAndContactListener],
providers: [CreateCompanyAndContactService],
exports: [CreateCompanyAndContactService],
})
export class AutoCompaniesAndContactsCreationModule {}

View File

@ -1,32 +0,0 @@
import { Injectable, Inject } from '@nestjs/common';
import { OnEvent } from '@nestjs/event-emitter';
import { MessageQueue } from 'src/engine/integrations/message-queue/message-queue.constants';
import { MessageQueueService } from 'src/engine/integrations/message-queue/services/message-queue.service';
import {
CreateCompanyAndContactJobData,
CreateCompanyAndContactJob,
} from 'src/modules/connected-account/auto-companies-and-contacts-creation/jobs/create-company-and-contact.job';
@Injectable()
export class CreateCompanyAndContactListener {
constructor(
@Inject(MessageQueue.contactCreationQueue)
private readonly messageQueueService: MessageQueueService,
) {}
@OnEvent('createContacts')
async handleContactCreationEvent(payload: {
workspaceId: string;
connectedAccountHandle: string;
contactsToCreate: {
displayName: string;
handle: string;
}[];
}) {
await this.messageQueueService.add<CreateCompanyAndContactJobData>(
CreateCompanyAndContactJob.name,
payload,
);
}
}