diff --git a/src/service/programService.js b/src/service/programService.js index 81db5ab33993d8bc196fa06a87ecd5f783fde4fd..f1c5c532fb97cc4b5ca75999545e098be24ba14a 100644 --- a/src/service/programService.js +++ b/src/service/programService.js @@ -557,7 +557,7 @@ function getNominationsList(req, response) { userList.push(data.user_id); if (data.organisation_id) { - orgList.push(data.organisation_id); + orgList.push(data.organisation_id.slice(2)); } }) if (_.isEmpty(userList)) { @@ -569,11 +569,13 @@ function getNominationsList(req, response) { result: result })) } - orgList = _.map(orgList, o => { - return o.replace(/^1-+/, '') - }) - forkJoin(getUsersDetails(req, userList), getOrgDetails(req, orgList)).subscribe((resData) => { + + let splitUserList = [] + let splitOrgList = [] + from(userList).pipe(bufferCount(100), map((uId) => getUsersDetails(req, uId))).subscribe(val => splitUserList.push(val)) + from(orgList).pipe(bufferCount(100), map((oId) => getOrgDetails(req, oId))).subscribe(val => splitOrgList.push(val)) + forkJoin(...splitUserList, ...splitOrgList).subscribe((resData) => { _.forEach(resData, function (data) { if (data.data.result && !_.isEmpty(_.get(data, 'data.result.User'))) { _.forEach(data.data.result.User, (userData) => {