mirror of
https://github.com/twentyhq/twenty.git
synced 2024-10-27 03:33:21 +03:00
refactoring
This commit is contained in:
parent
3bacfc23ca
commit
3d8ad9b7e7
@ -18,7 +18,7 @@ import { EnvironmentModule } from 'src/engine/integrations/environment/environme
|
||||
import { FetchAllWorkspacesMessagesJob } from 'src/modules/messaging/commands/crons/fetch-all-workspaces-messages.job';
|
||||
import { MatchMessageParticipantJob } from 'src/modules/messaging/jobs/match-message-participant.job';
|
||||
import { CreateCompaniesAndContactsAfterSyncJob } from 'src/modules/messaging/jobs/create-companies-and-contacts-after-sync.job';
|
||||
import { CreateCompaniesAndContactsModule } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.module';
|
||||
import { AutoCompaniesAndContactsCreationModule } from 'src/modules/connected-account/auto-companies-and-contacts-creation/auto-companies-and-contacts-creation.module';
|
||||
import { DataSeedDemoWorkspaceModule } from 'src/database/commands/data-seed-demo-workspace/data-seed-demo-workspace.module';
|
||||
import { DataSeedDemoWorkspaceJob } from 'src/database/commands/data-seed-demo-workspace/jobs/data-seed-demo-workspace.job';
|
||||
import { DeleteConnectedAccountAssociatedMessagingDataJob } from 'src/modules/messaging/jobs/delete-connected-account-associated-messaging-data.job';
|
||||
@ -50,7 +50,7 @@ import { CreateCompanyAndContactJob } from 'src/modules/connected-account/auto-c
|
||||
imports: [
|
||||
BillingModule,
|
||||
DataSourceModule,
|
||||
CreateCompaniesAndContactsModule,
|
||||
AutoCompaniesAndContactsCreationModule,
|
||||
DataSeedDemoWorkspaceModule,
|
||||
EnvironmentModule,
|
||||
HttpModule,
|
||||
|
@ -1,6 +1,6 @@
|
||||
import { Module } from '@nestjs/common';
|
||||
|
||||
import { CreateCompanyAndContactService } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.service';
|
||||
import { CreateCompanyAndContactService } from 'src/modules/connected-account/auto-companies-and-contacts-creation/services/create-company-and-contact.service';
|
||||
import { CreateCompanyModule } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company/create-company.module';
|
||||
import { CreateContactModule } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-contact/create-contact.module';
|
||||
import { ObjectMetadataRepositoryModule } from 'src/engine/object-metadata-repository/object-metadata-repository.module';
|
||||
@ -8,6 +8,7 @@ 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';
|
||||
|
||||
@Module({
|
||||
imports: [
|
||||
@ -20,7 +21,7 @@ import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/works
|
||||
MessageParticipantModule,
|
||||
WorkspaceDataSourceModule,
|
||||
],
|
||||
providers: [CreateCompanyAndContactService],
|
||||
providers: [CreateCompanyAndContactService, CreateCompanyAndContactListener],
|
||||
exports: [CreateCompanyAndContactService],
|
||||
})
|
||||
export class CreateCompaniesAndContactsModule {}
|
||||
export class AutoCompaniesAndContactsCreationModule {}
|
@ -2,13 +2,11 @@ import { Injectable } from '@nestjs/common';
|
||||
|
||||
import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface';
|
||||
|
||||
import { CreateCompanyAndContactService } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.service';
|
||||
import { CreateCompanyAndContactService } from 'src/modules/connected-account/auto-companies-and-contacts-creation/services/create-company-and-contact.service';
|
||||
|
||||
export type CreateCompanyAndContactJobData = {
|
||||
workspaceId: string;
|
||||
connectedAccount: {
|
||||
handle: string;
|
||||
};
|
||||
connectedAccountHandle: string;
|
||||
contactsToCreate: {
|
||||
displayName: string;
|
||||
handle: string;
|
||||
@ -24,10 +22,10 @@ export class CreateCompanyAndContactJob
|
||||
) {}
|
||||
|
||||
async handle(data: CreateCompanyAndContactJobData): Promise<void> {
|
||||
const { workspaceId, connectedAccount, contactsToCreate } = data;
|
||||
const { workspaceId, connectedAccountHandle, contactsToCreate } = data;
|
||||
|
||||
this.createCompanyAndContactService.createCompaniesAndContactsAndUpdateParticipants(
|
||||
connectedAccount,
|
||||
connectedAccountHandle,
|
||||
contactsToCreate.map((contact) => ({
|
||||
handle: contact.handle,
|
||||
displayName: contact.displayName,
|
||||
|
@ -18,9 +18,7 @@ export class CreateCompanyAndContactListener {
|
||||
@OnEvent('createContacts')
|
||||
async handleContactCreationEvent(payload: {
|
||||
workspaceId: string;
|
||||
connectedAccount: {
|
||||
handle: string;
|
||||
};
|
||||
connectedAccountHandle: string;
|
||||
contactsToCreate: {
|
||||
displayName: string;
|
||||
handle: string;
|
||||
|
@ -40,7 +40,7 @@ export class CreateCompanyAndContactService {
|
||||
) {}
|
||||
|
||||
async createCompaniesAndContacts(
|
||||
connectedAccount: { handle: string },
|
||||
connectedAccountHandle: string,
|
||||
contactsToCreate: Contacts,
|
||||
workspaceId: string,
|
||||
transactionManager?: EntityManager,
|
||||
@ -61,7 +61,7 @@ export class CreateCompanyAndContactService {
|
||||
const contactsToCreateFromOtherCompanies =
|
||||
filterOutContactsFromCompanyOrWorkspace(
|
||||
contactsToCreate,
|
||||
connectedAccount.handle,
|
||||
connectedAccountHandle,
|
||||
workspaceMembers,
|
||||
);
|
||||
|
||||
@ -128,7 +128,7 @@ export class CreateCompanyAndContactService {
|
||||
}
|
||||
|
||||
async createCompaniesAndContactsAndUpdateParticipants(
|
||||
connectedAccount: { handle: string },
|
||||
connectedAccountHandle,
|
||||
contactsToCreate: Contacts,
|
||||
workspaceId: string,
|
||||
) {
|
||||
@ -140,7 +140,7 @@ export class CreateCompanyAndContactService {
|
||||
await workspaceDataSource?.transaction(
|
||||
async (transactionManager: EntityManager) => {
|
||||
await this.createCompaniesAndContacts(
|
||||
connectedAccount,
|
||||
connectedAccountHandle,
|
||||
contactsToCreate,
|
||||
workspaceId,
|
||||
transactionManager,
|
@ -3,7 +3,7 @@ import { Injectable, Logger } from '@nestjs/common';
|
||||
import { MessageQueueJob } from 'src/engine/integrations/message-queue/interfaces/message-queue-job.interface';
|
||||
|
||||
import { InjectObjectMetadataRepository } from 'src/engine/object-metadata-repository/object-metadata-repository.decorator';
|
||||
import { CreateCompanyAndContactService } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.service';
|
||||
import { CreateCompanyAndContactService } from 'src/modules/connected-account/auto-companies-and-contacts-creation/services/create-company-and-contact.service';
|
||||
import { MessageChannelRepository } from 'src/modules/messaging/repositories/message-channel.repository';
|
||||
import { MessageParticipantRepository } from 'src/modules/messaging/repositories/message-participant.repository';
|
||||
import { MessageParticipantService } from 'src/modules/messaging/services/message-participant/message-participant.service';
|
||||
|
@ -2,7 +2,7 @@ import { Module } from '@nestjs/common';
|
||||
|
||||
import { ObjectMetadataRepositoryModule } from 'src/engine/object-metadata-repository/object-metadata-repository.module';
|
||||
import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module';
|
||||
import { CreateCompaniesAndContactsModule } from 'src/modules/connected-account/auto-companies-and-contacts-creation/create-company-and-contact/create-company-and-contact.module';
|
||||
import { AutoCompaniesAndContactsCreationModule } from 'src/modules/connected-account/auto-companies-and-contacts-creation/auto-companies-and-contacts-creation.module';
|
||||
import { MessageParticipantModule } from 'src/modules/messaging/services/message-participant/message-participant.module';
|
||||
import { MessageModule } from 'src/modules/messaging/services/message/message.module';
|
||||
import { SaveMessagesAndCreateContactsService } from 'src/modules/messaging/services/save-message-and-create-contact/save-messages-and-create-contacts.service';
|
||||
@ -16,7 +16,7 @@ import { MessageParticipantObjectMetadata } from 'src/modules/messaging/standard
|
||||
MessageChannelObjectMetadata,
|
||||
MessageParticipantObjectMetadata,
|
||||
]),
|
||||
CreateCompaniesAndContactsModule,
|
||||
AutoCompaniesAndContactsCreationModule,
|
||||
MessageParticipantModule,
|
||||
WorkspaceDataSourceModule,
|
||||
],
|
||||
|
Loading…
Reference in New Issue
Block a user