Skip to content
This repository was archived by the owner on Mar 13, 2025. It is now read-only.

Commit 927caa7

Browse files
#70 - support sort by name for skills
1 parent c1ef242 commit 927caa7

File tree

3 files changed

+8
-7
lines changed

3 files changed

+8
-7
lines changed

docs/swagger.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -975,6 +975,10 @@ paths:
975975
in: "query"
976976
description: "The name of the skill"
977977
type: "string"
978+
- name: "orderBy"
979+
in: "query"
980+
type: "string"
981+
description: "Specify by which field to sort by. Sorts in ascending order only"
978982
responses:
979983
"200":
980984
description: "OK - the request was successful"

src/common/es-helper.js

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1108,6 +1108,8 @@ async function searchElasticSearch (resource, ...args) {
11081108
if (params.orderBy) {
11091109
sortClause = sortClause.concat(await resolveSortClauseFromDb(params.orderBy, authUser, authUserOrganizationId))
11101110
}
1111+
} else if (params.orderBy) {
1112+
sortClause = [{ [`${params.orderBy}.keyword`]: 'asc' }]
11111113
}
11121114

11131115
// construct ES query
@@ -1279,18 +1281,14 @@ async function searchUsers (authUser, filter, params) {
12791281
const authUserOrganizationId = filter.organizationId
12801282
const filterKey = Object.keys(userFilters)
12811283

1282-
console.time('resolveUserFilterFromDb')
12831284
for (const key of filterKey) {
12841285
const resolved = await resolveUserFilterFromDb(userFilters[key], authUser, authUserOrganizationId)
12851286
resolvedUserFilters.push(resolved)
12861287
}
1287-
console.timeEnd('resolveUserFilterFromDb')
12881288

1289-
console.time('resolveSortClauseFromDb')
12901289
if (params.orderBy) {
12911290
sortClause = sortClause.concat(await resolveSortClauseFromDb(params.orderBy, authUser, authUserOrganizationId))
12921291
}
1293-
console.timeEnd('resolveSortClauseFromDb')
12941292

12951293
const esQuery = {
12961294
index: queryDoc.index,
@@ -1343,9 +1341,7 @@ async function searchUsers (authUser, filter, params) {
13431341
})
13441342

13451343
logger.debug(`ES query for searching users: ${JSON.stringify(esQuery, null, 2)}`)
1346-
console.time('mainesquery')
13471344
const { body: docs } = await esClient.search(esQuery)
1348-
console.timeEnd('mainesquery')
13491345
const result = docs.hits.hits.map(hit => hit._source)
13501346

13511347
return {

src/modules/skill/service.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,8 @@ const methods = helper.getServiceMethods(
2222
{
2323
skillProviderId: joi.string(),
2424
name: joi.string(),
25-
externalId: joi.string()
25+
externalId: joi.string(),
26+
orderBy: joi.string()
2627
},
2728
async query => {
2829
const dbQueries = []

0 commit comments

Comments
 (0)