@ -409,9 +409,24 @@ export class AdminService {
by : [ 'dataSource' , 'symbol' ]
by : [ 'dataSource' , 'symbol' ]
} ) ;
} ) ;
const marketData : AdminMarketDataItem [ ] = this . exchangeRateDataService
const marketDataPromise : Promise < AdminMarketDataItem > [ ] =
this . exchangeRateDataService
. getCurrencyPairs ( )
. getCurrencyPairs ( )
. map ( ( { dataSource , symbol } ) = > {
. map ( async ( { dataSource , symbol } ) = > {
const currency = symbol . replace ( DEFAULT_CURRENCY , '' ) ;
const { _count , _min } = await this . prismaService . order . aggregate ( {
_count : true ,
_min : {
date : true
} ,
where : {
SymbolProfile : {
currency
}
}
} ) ;
const marketDataItemCount =
const marketDataItemCount =
marketDataItems . find ( ( marketDataItem ) = > {
marketDataItems . find ( ( marketDataItem ) = > {
return (
return (
@ -421,18 +436,22 @@ export class AdminService {
} ) ? . _count ? ? 0 ;
} ) ? . _count ? ? 0 ;
return {
return {
currency ,
dataSource ,
dataSource ,
marketDataItemCount ,
marketDataItemCount ,
symbol ,
symbol ,
activitiesCount : _count as number ,
assetClass : AssetClass.LIQUIDITY ,
assetClass : AssetClass.LIQUIDITY ,
assetSubClass : AssetSubClass.CASH ,
countriesCount : 0 ,
countriesCount : 0 ,
currency : symbol.replace ( DEFAULT_CURRENCY , '' ) ,
date : _min.date ,
id : undefined ,
id : undefined ,
name : symbol ,
name : symbol ,
sectorsCount : 0
sectorsCount : 0
} ;
} ;
} ) ;
} ) ;
const marketData = await Promise . all ( marketDataPromise ) ;
return { marketData , count : marketData.length } ;
return { marketData , count : marketData.length } ;
}
}