Skip to content

Commit 3a153cc

Browse files
committed
add merge logic
1 parent f264f17 commit 3a153cc

File tree

5 files changed

+118
-269
lines changed

5 files changed

+118
-269
lines changed

packages/twenty-server/src/workspace/messaging/services/gmail-full-sync.service.ts

-27
Original file line numberDiff line numberDiff line change
@@ -61,20 +61,6 @@ export class GmailFullSyncService {
6161
return;
6262
}
6363

64-
// const {
65-
// savedMessageIds,
66-
// savedThreadIds
67-
// } = await this.utils.getSavedMessageIdsAndThreadIds(
68-
// messageExternalIds,
69-
// connectedAccountId,
70-
// dataSourceMetadata,
71-
// workspaceDataSource,
72-
// );
73-
74-
// const messageIdsToSave = messageExternalIds.filter(
75-
// (messageId) => !savedMessageIds.includes(messageId),
76-
// );
77-
7864
const messageQueries =
7965
this.utils.createQueriesFromMessageIds(messageExternalIds);
8066

@@ -88,19 +74,6 @@ export class GmailFullSyncService {
8874
return;
8975
}
9076

91-
// const threads = this.utils.getThreadsFromMessages(messagesToSave);
92-
93-
// const threadsToSave = threads.filter(
94-
// (threadId) => !savedThreadIds.includes(threadId.id),
95-
// );
96-
97-
// await this.utils.saveMessageThreads(
98-
// threadsToSave,
99-
// dataSourceMetadata,
100-
// workspaceDataSource,
101-
// connectedAccount.id,
102-
// );
103-
10477
await this.utils.saveMessages(
10578
messagesToSave,
10679
dataSourceMetadata,

packages/twenty-server/src/workspace/messaging/services/gmail-partial-sync.service.ts

+4-52
Original file line numberDiff line numberDiff line change
@@ -127,57 +127,15 @@ export class GmailPartialSyncService {
127127
const { messagesAdded, messagesDeleted } =
128128
await this.getMessageIdsAndThreadIdsFromHistory(history);
129129

130-
const {
131-
savedMessageIds: messagesAddedAlreadySaved,
132-
savedThreadIds: threadsAddedAlreadySaved,
133-
} = await this.utils.getSavedMessageIdsAndThreadIds(
134-
messagesAdded,
135-
connectedAccountId,
136-
dataSourceMetadata,
137-
workspaceDataSource,
138-
);
139-
140-
const messageExternalIdsToSave = messagesAdded.filter(
141-
(messageId) =>
142-
!messagesAddedAlreadySaved.includes(messageId) &&
143-
!messagesDeleted.includes(messageId),
144-
);
145-
146-
const { savedMessageIds: messagesDeletedAlreadySaved } =
147-
await this.utils.getSavedMessageIdsAndThreadIds(
148-
messagesDeleted,
149-
connectedAccountId,
150-
dataSourceMetadata,
151-
workspaceDataSource,
152-
);
153-
154-
const messageExternalIdsToDelete = messagesDeleted.filter((messageId) =>
155-
messagesDeletedAlreadySaved.includes(messageId),
156-
);
157-
158-
const messageQueries = this.utils.createQueriesFromMessageIds(
159-
messageExternalIdsToSave,
160-
);
130+
const messageQueries =
131+
this.utils.createQueriesFromMessageIds(messagesAdded);
161132

162133
const { messages: messagesToSave, errors } =
163134
await this.fetchMessagesByBatchesService.fetchAllMessages(
164135
messageQueries,
165136
accessToken,
166137
);
167138

168-
const threads = this.utils.getThreadsFromMessages(messagesToSave);
169-
170-
const threadsToSave = threads.filter(
171-
(thread) => !threadsAddedAlreadySaved.includes(thread.id),
172-
);
173-
174-
await this.utils.saveMessageThreads(
175-
threadsToSave,
176-
dataSourceMetadata,
177-
workspaceDataSource,
178-
connectedAccount.id,
179-
);
180-
181139
await this.utils.saveMessages(
182140
messagesToSave,
183141
dataSourceMetadata,
@@ -186,15 +144,9 @@ export class GmailPartialSyncService {
186144
gmailMessageChannelId,
187145
);
188146

189-
await this.utils.deleteMessages(
190-
messageExternalIdsToDelete,
191-
dataSourceMetadata,
192-
workspaceDataSource,
193-
);
194-
195-
await this.utils.deleteEmptyThreads(
147+
await this.utils.deleteMessageChannelMessages(
196148
messagesDeleted,
197-
connectedAccountId,
149+
gmailMessageChannelId,
198150
dataSourceMetadata,
199151
workspaceDataSource,
200152
);

0 commit comments

Comments
 (0)