Browse Source

Resolve data source of GHOSTFOLIO data provider

pull/5972/head
Thomas Kaul 1 month ago
parent
commit
8419d04847
  1. 16
      apps/api/src/interceptors/transform-data-source-in-request/transform-data-source-in-request.interceptor.ts
  2. 22
      apps/api/src/interceptors/transform-data-source-in-response/transform-data-source-in-response.interceptor.ts

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

@ -27,9 +27,23 @@ export class TransformDataSourceInRequestInterceptor<T>
if (this.configurationService.get('ENABLE_FEATURE_SUBSCRIPTION')) {
if (request.body?.activities) {
const dataSourceGhostfolioDataProvider = this.configurationService.get(
'DATA_SOURCES_GHOSTFOLIO_DATA_PROVIDER'
)?.[0];
request.body.activities = request.body.activities.map((activity) => {
if (DataSource[activity.dataSource]) {
return activity;
if (
activity.dataSource === 'GHOSTFOLIO' &&
dataSourceGhostfolioDataProvider
) {
return {
...activity,
dataSource: dataSourceGhostfolioDataProvider
};
} else {
return activity;
}
} else {
return {
...activity,

22
apps/api/src/interceptors/transform-data-source-in-response/transform-data-source-in-response.interceptor.ts

@ -40,20 +40,32 @@ export class TransformDataSourceInResponseInterceptor<T>
}
public intercept(
_context: ExecutionContext,
context: ExecutionContext,
next: CallHandler<T>
): Observable<any> {
const isExportMode = context.getClass().name === 'ExportController';
return next.handle().pipe(
map((data: any) => {
if (this.configurationService.get('ENABLE_FEATURE_SUBSCRIPTION')) {
const valueMap = this.encodedDataSourceMap;
if (isExportMode) {
for (const dataSource of this.configurationService.get(
'DATA_SOURCES_GHOSTFOLIO_DATA_PROVIDER'
)) {
valueMap[dataSource] = 'GHOSTFOLIO';
}
}
data = redactAttributes({
object: data,
options: [
{
attribute: 'dataSource',
valueMap: this.encodedDataSourceMap
valueMap,
attribute: 'dataSource'
}
],
object: data
]
});
}

Loading…
Cancel
Save