3808 auto creation of company when importing emails (#3881)
* create service * wip * use raw queries * creating companies is working * Fix participant handle domain name extraction * Add HTTP service to fetch company info from domain name * Handle 404 * Fix missing parameter in INSERT query * wip * renaming * Add typing
This commit is contained in:
@ -14,6 +14,7 @@ import { MessageService } from 'src/workspace/messaging/message/message.service'
|
||||
import { MessageThreadService } from 'src/workspace/messaging/message-thread/message-thread.service';
|
||||
import { ObjectRecord } from 'src/workspace/workspace-sync-metadata/types/object-record';
|
||||
import { ConnectedAccountObjectMetadata } from 'src/workspace/workspace-sync-metadata/standard-objects/connected-account.object-metadata';
|
||||
import { CreateCompanyService } from 'src/workspace/messaging/services/create-company.service';
|
||||
|
||||
@Injectable()
|
||||
export class MessagingUtilsService {
|
||||
@ -21,6 +22,7 @@ export class MessagingUtilsService {
|
||||
private readonly messageChannelMessageAssociationService: MessageChannelMessageAssociationService,
|
||||
private readonly messageService: MessageService,
|
||||
private readonly messageThreadService: MessageThreadService,
|
||||
private readonly createCompaniesService: CreateCompanyService,
|
||||
) {}
|
||||
|
||||
public createQueriesFromMessageIds(
|
||||
@ -201,6 +203,19 @@ export class MessagingUtilsService {
|
||||
participantWorkspaceMemberId,
|
||||
],
|
||||
);
|
||||
|
||||
const companyDomainName = participant.handle
|
||||
.split('@')?.[1]
|
||||
.split('.')
|
||||
.slice(-2)
|
||||
.join('.')
|
||||
.toLowerCase();
|
||||
|
||||
await this.createCompaniesService.createCompanyFromDomainName(
|
||||
companyDomainName,
|
||||
dataSourceMetadata,
|
||||
manager,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user