Browse Source

Fix data source transformation

pull/1985/head
Thomas 2 years ago
parent
commit
c6a01704cf
  1. 2
      apps/api/src/app/import/import.controller.ts
  2. 18
      apps/api/src/interceptors/transform-data-source-in-request.interceptor.ts

2
apps/api/src/app/import/import.controller.ts

@ -35,6 +35,8 @@ export class ImportController {
@Post() @Post()
@UseGuards(AuthGuard('jwt')) @UseGuards(AuthGuard('jwt'))
@UseInterceptors(TransformDataSourceInRequestInterceptor)
@UseInterceptors(TransformDataSourceInResponseInterceptor)
public async import( public async import(
@Body() importData: ImportDataDto, @Body() importData: ImportDataDto,
@Query('dryRun') isDryRun?: boolean @Query('dryRun') isDryRun?: boolean

18
apps/api/src/interceptors/transform-data-source-in-request.interceptor.ts

@ -6,6 +6,7 @@ import {
Injectable, Injectable,
NestInterceptor NestInterceptor
} from '@nestjs/common'; } from '@nestjs/common';
import { DataSource } from '@prisma/client';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
@Injectable() @Injectable()
@ -24,11 +25,24 @@ export class TransformDataSourceInRequestInterceptor<T>
const request = http.getRequest(); const request = http.getRequest();
if (this.configurationService.get('ENABLE_FEATURE_SUBSCRIPTION')) { if (this.configurationService.get('ENABLE_FEATURE_SUBSCRIPTION')) {
if (request.body.dataSource) { if (request.body.activities) {
request.body.activities = request.body.activities.map((activity) => {
if (DataSource[activity.dataSource]) {
return activity;
} else {
return {
...activity,
dataSource: decodeDataSource(activity.dataSource)
};
}
});
}
if (request.body.dataSource && !DataSource[request.body.dataSource]) {
request.body.dataSource = decodeDataSource(request.body.dataSource); request.body.dataSource = decodeDataSource(request.body.dataSource);
} }
if (request.params.dataSource) { if (request.params.dataSource && !DataSource[request.params.dataSource]) {
request.params.dataSource = decodeDataSource(request.params.dataSource); request.params.dataSource = decodeDataSource(request.params.dataSource);
} }
} }

Loading…
Cancel
Save