diff --git a/apps/api/src/app/import/import.service.ts b/apps/api/src/app/import/import.service.ts index 2e4f1044b..c672f5bbc 100644 --- a/apps/api/src/app/import/import.service.ts +++ b/apps/api/src/app/import/import.service.ts @@ -117,7 +117,8 @@ export class ImportService { }): Promise { const accountIdMapping = {}; - if (!isDryRun && accountsDto?.length) { + //Create new accounts during dryRun so that new account Ids don't get invalidated + if (isDryRun && accountsDto?.length) { for (let account of accountsDto) { //Check if there is any existing account with the same id const accountWithSameId = await this.accountService.getAccountById( @@ -169,7 +170,7 @@ export class ImportService { } } - if (!isDryRun) { + if (isDryRun) { //If a new account is created, then update the accountId in all activities if (Object.keys(accountIdMapping).includes(activity.accountId)) { activity.accountId = accountIdMapping[activity.accountId]; diff --git a/apps/client/src/app/pages/portfolio/activities/import-activities-dialog/import-activities-dialog.component.ts b/apps/client/src/app/pages/portfolio/activities/import-activities-dialog/import-activities-dialog.component.ts index 2b6198de1..2c735f9fb 100644 --- a/apps/client/src/app/pages/portfolio/activities/import-activities-dialog/import-activities-dialog.component.ts +++ b/apps/client/src/app/pages/portfolio/activities/import-activities-dialog/import-activities-dialog.component.ts @@ -183,7 +183,8 @@ export class ImportActivitiesDialog implements OnDestroy { this.accounts = content.accounts; const data = await this.importActivitiesService.importJson({ activities: content.activities, - isDryRun: true + isDryRun: true, + accounts: this.accounts }); this.activities = data.activities; } catch (error) {