|
@ -17,9 +17,11 @@ export class ImportService { |
|
|
|
|
|
|
|
|
public async import({ |
|
|
public async import({ |
|
|
activities, |
|
|
activities, |
|
|
|
|
|
maxActivitiesToImport, |
|
|
userId |
|
|
userId |
|
|
}: { |
|
|
}: { |
|
|
activities: Partial<CreateOrderDto>[]; |
|
|
activities: Partial<CreateOrderDto>[]; |
|
|
|
|
|
maxActivitiesToImport: number; |
|
|
userId: string; |
|
|
userId: string; |
|
|
}): Promise<void> { |
|
|
}): Promise<void> { |
|
|
for (const activity of activities) { |
|
|
for (const activity of activities) { |
|
@ -32,7 +34,11 @@ export class ImportService { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
await this.validateActivities({ activities, userId }); |
|
|
await this.validateActivities({ |
|
|
|
|
|
activities, |
|
|
|
|
|
maxActivitiesToImport, |
|
|
|
|
|
userId |
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
const accountIds = (await this.accountService.getAccounts(userId)).map( |
|
|
const accountIds = (await this.accountService.getAccounts(userId)).map( |
|
|
(account) => { |
|
|
(account) => { |
|
@ -81,19 +87,15 @@ export class ImportService { |
|
|
|
|
|
|
|
|
private async validateActivities({ |
|
|
private async validateActivities({ |
|
|
activities, |
|
|
activities, |
|
|
|
|
|
maxActivitiesToImport, |
|
|
userId |
|
|
userId |
|
|
}: { |
|
|
}: { |
|
|
activities: Partial<CreateOrderDto>[]; |
|
|
activities: Partial<CreateOrderDto>[]; |
|
|
|
|
|
maxActivitiesToImport: number; |
|
|
userId: string; |
|
|
userId: string; |
|
|
}) { |
|
|
}) { |
|
|
if ( |
|
|
if (activities?.length > maxActivitiesToImport) { |
|
|
activities?.length > this.configurationService.get('MAX_ORDERS_TO_IMPORT') |
|
|
throw new Error(`Too many activities (${maxActivitiesToImport} at most)`); |
|
|
) { |
|
|
|
|
|
throw new Error( |
|
|
|
|
|
`Too many activities (${this.configurationService.get( |
|
|
|
|
|
'MAX_ORDERS_TO_IMPORT' |
|
|
|
|
|
)} at most)` |
|
|
|
|
|
); |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
const existingActivities = await this.orderService.orders({ |
|
|
const existingActivities = await this.orderService.orders({ |
|
|