From d00698895d76f38e3bb7d270fe53ed0498b656fd Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Mon, 1 Sep 2025 15:54:48 +0530 Subject: [PATCH 1/2] Org list fix for SCP --- src/services/organization.js | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/src/services/organization.js b/src/services/organization.js index 01aa2679..c8c14b72 100644 --- a/src/services/organization.js +++ b/src/services/organization.js @@ -256,14 +256,21 @@ module.exports = class OrganizationsHelper { let options = { attributes: ['id', 'name', 'code', 'description'], } + let filters = { + tenant_code: params?.query?.tenantCode, + status: common.ACTIVE_STATUS, + } + // fetch list by org codes + if (params.body && params.body.organizationCodes) { + const orgCodes = Array.isArray(params.body.organizationCodes) + ? params.body.organizationCodes + : params.body.organizationCodes.split(',').map((code) => code.trim()) + filters.code = { + [Op.in]: orgCodes, + } + } - let organizations = await organizationQueries.findAll( - { - tenant_code: params?.query?.tenantCode, - status: common.ACTIVE_STATUS, - }, - options - ) + let organizations = await organizationQueries.findAll(filters, options) return responses.successResponse({ statusCode: httpStatusCode.ok, From 75d98b79cf0dd893e86b7241636a4f200a936bb4 Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Mon, 1 Sep 2025 16:16:56 +0530 Subject: [PATCH 2/2] review comments --- src/services/organization.js | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/src/services/organization.js b/src/services/organization.js index c8c14b72..c83a854b 100644 --- a/src/services/organization.js +++ b/src/services/organization.js @@ -251,24 +251,23 @@ module.exports = class OrganizationsHelper { static async list(params) { try { + const tenantCode = params?.query?.tenant_code || params?.query?.tenantCode || null // fetch orgs under tenants - if (params?.query?.tenantCode) { + if (tenantCode) { let options = { attributes: ['id', 'name', 'code', 'description'], } let filters = { - tenant_code: params?.query?.tenantCode, + tenant_code: tenantCode, status: common.ACTIVE_STATUS, } - // fetch list by org codes - if (params.body && params.body.organizationCodes) { - const orgCodes = Array.isArray(params.body.organizationCodes) - ? params.body.organizationCodes - : params.body.organizationCodes.split(',').map((code) => code.trim()) - filters.code = { - [Op.in]: orgCodes, - } - } + // filter by org codes if provided + const orgCodes = params?.query?.organization_codes || params?.query?.organizationCodes || null + orgCodes + ? (filters.code = { + [Op.in]: orgCodes.split(',').map((code) => code.toLowerCase().trim()), + }) + : null let organizations = await organizationQueries.findAll(filters, options)