Browse Source

Refactoring

pull/6991/head
Thomas Kaul 3 days ago
parent
commit
fcd9c51726
  1. 4
      apps/api/src/app/admin/admin.service.ts
  2. 4
      apps/api/src/services/symbol-profile/symbol-profile.service.ts
  3. 41
      libs/common/src/lib/helper.ts

4
apps/api/src/app/admin/admin.service.ts

@ -14,7 +14,7 @@ import {
PROPERTY_IS_USER_SIGNUP_ENABLED
} from '@ghostfolio/common/config';
import {
applySymbolProfileOverrides,
applyAssetProfileOverrides,
getAssetProfileIdentifier,
getCurrencyFromSymbol,
isCurrency
@ -363,7 +363,7 @@ export class AdminService {
} = assetProfile;
const { assetClass, assetSubClass, countries, name, sectors } =
applySymbolProfileOverrides(
applyAssetProfileOverrides(
assetProfile,
assetProfile.SymbolProfileOverrides
);

4
apps/api/src/services/symbol-profile/symbol-profile.service.ts

@ -1,6 +1,6 @@
import { PrismaService } from '@ghostfolio/api/services/prisma/prisma.service';
import { UNKNOWN_KEY } from '@ghostfolio/common/config';
import { applySymbolProfileOverrides } from '@ghostfolio/common/helper';
import { applyAssetProfileOverrides } from '@ghostfolio/common/helper';
import {
AssetProfileIdentifier,
EnhancedSymbolProfile,
@ -193,7 +193,7 @@ export class SymbolProfileService {
})[]
): EnhancedSymbolProfile[] {
return symbolProfiles.map((symbolProfile) => {
const symbolProfileWithOverrides = applySymbolProfileOverrides(
const symbolProfileWithOverrides = applyAssetProfileOverrides(
symbolProfile,
symbolProfile.SymbolProfileOverrides
);

41
libs/common/src/lib/helper.ts

@ -54,41 +54,40 @@ export const DATE_FORMAT = 'yyyy-MM-dd';
export const DATE_FORMAT_MONTHLY = 'MMMM yyyy';
export const DATE_FORMAT_YEARLY = 'yyyy';
export function applySymbolProfileOverrides<T extends Partial<SymbolProfile>>(
symbolProfile: T,
symbolProfileOverrides: SymbolProfileOverrides | null
export function applyAssetProfileOverrides<T extends Partial<SymbolProfile>>(
assetProfile: T,
assetProfileOverrides: SymbolProfileOverrides | null
): T {
if (!symbolProfileOverrides) {
return symbolProfile;
if (!assetProfileOverrides) {
return assetProfile;
}
const symbolProfileWithOverrides = { ...symbolProfile } as T;
const assetProfileWithOverrides = { ...assetProfile } as T;
symbolProfileWithOverrides.assetClass =
symbolProfileOverrides.assetClass ?? symbolProfile.assetClass;
assetProfileWithOverrides.assetClass =
assetProfileOverrides.assetClass ?? assetProfile.assetClass;
symbolProfileWithOverrides.assetSubClass =
symbolProfileOverrides.assetSubClass ?? symbolProfile.assetSubClass;
assetProfileWithOverrides.assetSubClass =
assetProfileOverrides.assetSubClass ?? assetProfile.assetSubClass;
if ((symbolProfileOverrides.countries as Prisma.JsonArray)?.length > 0) {
symbolProfileWithOverrides.countries = symbolProfileOverrides.countries;
if ((assetProfileOverrides.countries as Prisma.JsonArray)?.length > 0) {
assetProfileWithOverrides.countries = assetProfileOverrides.countries;
}
if ((symbolProfileOverrides.holdings as Prisma.JsonArray)?.length > 0) {
symbolProfileWithOverrides.holdings = symbolProfileOverrides.holdings;
if ((assetProfileOverrides.holdings as Prisma.JsonArray)?.length > 0) {
assetProfileWithOverrides.holdings = assetProfileOverrides.holdings;
}
symbolProfileWithOverrides.name =
symbolProfileOverrides.name ?? symbolProfile.name;
assetProfileWithOverrides.name =
assetProfileOverrides.name ?? assetProfile.name;
if ((symbolProfileOverrides.sectors as Prisma.JsonArray)?.length > 0) {
symbolProfileWithOverrides.sectors = symbolProfileOverrides.sectors;
if ((assetProfileOverrides.sectors as Prisma.JsonArray)?.length > 0) {
assetProfileWithOverrides.sectors = assetProfileOverrides.sectors;
}
symbolProfileWithOverrides.url =
symbolProfileOverrides.url ?? symbolProfile.url;
assetProfileWithOverrides.url = assetProfileOverrides.url ?? assetProfile.url;
return symbolProfileWithOverrides;
return assetProfileWithOverrides;
}
export function calculateBenchmarkTrend({

Loading…
Cancel
Save