From 8672fb63592d1c0bc7561f4976a869ede4def1e4 Mon Sep 17 00:00:00 2001 From: "konstantina.galouni" Date: Fri, 24 Nov 2023 13:53:46 +0200 Subject: [PATCH] [deprecated-angular-upgrade | DONE | FIXED]: number-utils.class.ts: avoid rounding numbers < 1000 (3-digit) | refineFieldResults.service.ts: Added method "getAllRefineFieldResultsByFieldName()" to get all values of a specific refine field (not just first 100) | numbers.component.ts: Updated method called in refine query to get funders of projects from "getRefineFieldsResultsByEntityName()" to "getAllRefineFieldResultsByFieldName()" to be able to get more than 100 funders each time. --- services/refineFieldResults.service.ts | 13 +++++++++++++ sharedComponents/numbers/numbers.component.ts | 2 +- utils/number-utils.class.ts | 10 +++++----- 3 files changed, 19 insertions(+), 6 deletions(-) diff --git a/services/refineFieldResults.service.ts b/services/refineFieldResults.service.ts index eca09c9d..deed1a24 100644 --- a/services/refineFieldResults.service.ts +++ b/services/refineFieldResults.service.ts @@ -26,6 +26,19 @@ export class RefineFieldResultsService { .pipe(map(res => [res['meta'].total, RefineResultsUtils.parse(res['refineResults'],fields, entityName)])); } + + getAllRefineFieldResultsByFieldName(fieldName:string, entityName:string, properties:EnvProperties, refineQuery:string=null):any{ + // let keys:string[]=["funder", "relfunder", "fundinglevel"]; + let url = properties.searchAPIURLLAst +this.getSearchAPIURLForEntity(entityName)+"?fields="+fieldName +('&sf='+fieldName)+ "&format=json"; + if(refineQuery!= null && refineQuery != '' ) { + url += refineQuery; + } + return this.http.get((properties.useCache)? (properties.cacheUrl+encodeURIComponent(url)): url) + //.map(res => res.json()) + + .pipe(map(res => [res['meta'].total, RefineResultsUtils.parse(res['refineResults'],[fieldName], entityName)])); + } + getRefineFieldResultsByFieldName(fieldName:string, entityName:string, properties:EnvProperties):any{ let key:string="fundinglevel"; let link = properties.searchAPIURLLAst +this.getSearchAPIURLForEntity(entityName)+"?fields="+fieldName +(fieldName.toString().indexOf(key)!=-1?('&sf='+fieldName):'')+ "&format=json"; diff --git a/sharedComponents/numbers/numbers.component.ts b/sharedComponents/numbers/numbers.component.ts index d64cbf54..ab0e403f 100644 --- a/sharedComponents/numbers/numbers.component.ts +++ b/sharedComponents/numbers/numbers.component.ts @@ -259,7 +259,7 @@ export class NumbersComponent implements OnInit, OnDestroy { (getSoftware) ? this.searchResearchResultsService.numOfSearchResults('software', '', this.properties, refineParams) : this.empty, (getSoftwareLinked) ? this.searchResearchResultsService.numOfSearchResultsLinkedToPub("software", this.properties) : this.empty, (getOther) ? this.searchResearchResultsService.numOfSearchResults('other', '', this.properties, refineParams) : this.empty, - (getProjects) ? this.refineFieldResultsService.getRefineFieldsResultsByEntityName(['funder'], 'project', this.properties, refineParams) : this.empty, + (getProjects) ? this.refineFieldResultsService.getAllRefineFieldResultsByFieldName('funder', 'project', this.properties, refineParams) : this.empty, (getDataProviders) ? this.searchDataprovidersService.numOfSearchDataproviders('', this.properties, refineParams) : this.empty ).subscribe((data: any[]) => { if (data[0] && data[0] > 0) { diff --git a/utils/number-utils.class.ts b/utils/number-utils.class.ts index 4fc2964f..b8e62782 100644 --- a/utils/number-utils.class.ts +++ b/utils/number-utils.class.ts @@ -18,11 +18,11 @@ export class NumberUtils{ num=num/1000; num= Math.round(num); roundNum = { number: num, size: "K", count: initialNum}; - }else if (num >= 100) { - num=num/100; - num= Math.round(num); - num=num*100; - roundNum = { number: num, size: "" , count: initialNum}; + // }else if (num >= 100) { + // num=num/100; + // num= Math.round(num); + // num=num*100; + // roundNum = { number: num, size: "" , count: initialNum}; }else{ roundNum = { number: num, size: "" , count: initialNum}; }