@@ -111,6 +111,7 @@ esIndexPropertyMapping[config.get('esConfig.ES_INDEX_JOB')] = {
111111 rateType : { type : 'keyword' } ,
112112 workload : { type : 'keyword' } ,
113113 skills : { type : 'keyword' } ,
114+ roles : { type : 'keyword' } ,
114115 status : { type : 'keyword' } ,
115116 isApplicationPageActive : { type : 'boolean' } ,
116117 createdAt : { type : 'date' } ,
@@ -1304,21 +1305,18 @@ async function getMemberDetailsByHandles(handles) {
13041305 }
13051306 const token = await getM2MToken ( ) ;
13061307 const res = await request
1307- . get ( `${ config . TOPCODER_MEMBERS_API } /_search ` )
1308+ . get ( `${ config . TOPCODER_MEMBERS_API } /` )
13081309 . query ( {
1309- query : _ . map (
1310- handles ,
1311- ( handle ) => `handleLower:${ handle . toLowerCase ( ) } `
1312- ) . join ( ' OR ' ) ,
1313- fields : 'userId,handle,firstName,lastName,email' ,
1310+ 'handlesLower[]' : handles . map ( handle => handle . toLowerCase ( ) ) ,
1311+ fields : 'userId,handle,handleLower,firstName,lastName,email' ,
13141312 } )
13151313 . set ( 'Authorization' , `Bearer ${ token } ` )
13161314 . set ( 'Accept' , 'application/json' ) ;
13171315 localLogger . debug ( {
13181316 context : 'getMemberDetailsByHandles' ,
13191317 message : `response body: ${ JSON . stringify ( res . body ) } ` ,
13201318 } ) ;
1321- return _ . get ( res . body , 'result.content' ) ;
1319+ return res . body ;
13221320}
13231321
13241322/**
@@ -1327,17 +1325,14 @@ async function getMemberDetailsByHandles(handles) {
13271325 * @param {String } handle the user handle
13281326 * @returns {Object } the member details
13291327 */
1330- async function getV3MemberDetailsByHandle ( handle ) {
1331- const token = await getM2MToken ( ) ;
1332- const res = await request
1333- . get ( `${ config . TOPCODER_MEMBERS_API } /${ handle } ` )
1334- . set ( 'Authorization' , `Bearer ${ token } ` )
1335- . set ( 'Accept' , 'application/json' ) ;
1336- localLogger . debug ( {
1337- context : 'getV3MemberDetailsByHandle' ,
1338- message : `response body: ${ JSON . stringify ( res . body ) } ` ,
1339- } ) ;
1340- return _ . get ( res . body , 'result.content' ) ;
1328+ async function getMemberDetailsByHandle ( handle ) {
1329+ const [ memberDetails ] = await getMemberDetailsByHandles ( [ handle ] )
1330+
1331+ if ( ! memberDetails ) {
1332+ throw new errors . NotFoundError ( `Member details are not found by handle "${ handle } ".` )
1333+ }
1334+
1335+ return memberDetails
13411336}
13421337
13431338/**
@@ -1756,7 +1751,7 @@ module.exports = {
17561751 getAuditM2Muser,
17571752 checkIsMemberOfProject,
17581753 getMemberDetailsByHandles,
1759- getV3MemberDetailsByHandle ,
1754+ getMemberDetailsByHandle ,
17601755 getMemberDetailsByEmails,
17611756 createProjectMember,
17621757 listProjectMembers,
0 commit comments