From dd9cdeecef3b06d1200406ca9bb819b9ea82f5f3 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Thu, 19 Dec 2024 16:57:16 +0530 Subject: [PATCH 001/105] sunbird package update --- sunbird-mentoring/controllers/mentoring.js | 10 +++++++++- sunbird-mentoring/package.json | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/sunbird-mentoring/controllers/mentoring.js b/sunbird-mentoring/controllers/mentoring.js index d2359478..3548b490 100644 --- a/sunbird-mentoring/controllers/mentoring.js +++ b/sunbird-mentoring/controllers/mentoring.js @@ -220,7 +220,12 @@ const readUserWithToken = async (req, res, selectedConfig) => { if (token && token.toLowerCase().startsWith('bearer ')) token = token.slice(7) const tokenClaims = jwt.decode(token) - const userId = tokenClaims.sub.split(':').pop() + + let userId = tokenClaims.sub.split(':').pop() + if(req.params.id){ + userId = req.params.id + } + const userResponse = await requesters.get(req.baseUrl,targetRoute1.path, req.headers, { id: userId, @@ -348,6 +353,9 @@ const listOrganisation = async (req, res, selectedConfig) => { } } + + + mentoringController = { createProfile, // updateMentoringUser, diff --git a/sunbird-mentoring/package.json b/sunbird-mentoring/package.json index 9cf8fdee..32a0d044 100644 --- a/sunbird-mentoring/package.json +++ b/sunbird-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "sunbird-mentoring", - "version": "2.3.1", + "version": "3.1.1", "description": "Npm package for sunbird-mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 14cb76e259044dd3841249414080b87a8d00fbef Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Thu, 19 Dec 2024 16:59:41 +0530 Subject: [PATCH 002/105] adding routes --- sunbird-mentoring/constants/routes.js | 39 ++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/sunbird-mentoring/constants/routes.js b/sunbird-mentoring/constants/routes.js index fc00b30a..40d1c7e7 100644 --- a/sunbird-mentoring/constants/routes.js +++ b/sunbird-mentoring/constants/routes.js @@ -2080,6 +2080,43 @@ module.exports = { path: '/scheduler/jobs/purge', type: 'POST', }, - } + }, + { + sourceRoute: '/interface/v1/mentors/details/:id', + type: 'POST', + inSequence: true, + orchestrated: true, + targetRoute: { + paths: [ + { path: '/private/user/v1/read/:id', type: 'GET' }, + { + baseUrl: 'http://lms-service:9000', + path: '/private/v3/user/courses/list/:id', + type: 'GET', + }, + ], + functionName: 'readUserById', + }, + }, + { + sourceRoute: '/interface/v1/profile/read', + type: 'GET', + inSequence: true, + orchestrated: true, + targetRoute: { + paths: [ + { + path: '/private/user/v1/read/:id', + type: 'GET' + }, + { + baseUrl: 'http://lms-service:9000', + path: '/private/v3/user/courses/list/:id', + type: 'GET' + } + ], + functionName: 'readUserWithToken' + }, + }, ], } From 4f452355efcbc604f30152e5debe5b27b8067878 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Fri, 27 Dec 2024 16:22:21 +0530 Subject: [PATCH 003/105] merging kb and elevvate packages --- elevate-mentoring/constants/routes.js | 1117 +++++++++++++++++ elevate-mentoring/controllers/mentoring.js | 130 ++ .../controllers/orchestrationController.js | 4 + elevate-mentoring/package.json | 2 +- elevate-mentoring/utils/requester.js | 4 + sunbird-mentoring/constants/routes.js | 59 +- .../controllers/customHandler.js | 3 + sunbird-mentoring/controllers/mentoring.js | 54 +- .../controllers/orchestrationController.js | 7 + sunbird-mentoring/helpers/kafkaManager.js | 10 +- sunbird-mentoring/package.json | 2 +- sunbird-mentoring/utils/requester.js | 8 + sunbird-user/package.json | 2 +- 13 files changed, 1391 insertions(+), 11 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 1b5d6399..830205a2 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -868,6 +868,7 @@ module.exports = { inSequence: false, orchestrated: true, targetRoute: { + service: "mentoring", path: '/mentoring/v1/profile/create', type: 'POST', functionName: 'createProfile', @@ -879,6 +880,7 @@ module.exports = { inSequence: false, orchestrated: true, targetRoute: { + service: "mentoring", path: '/mentoring/v1/profile/update/', type: 'POST', functionName: 'updateUser', @@ -889,12 +891,25 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: true, + service: "mentoring", targetRoute: { path: '/mentoring/v1/entity-type/read', type: 'POST', functionName: 'entityTypeRead', }, }, + { + sourceRoute: '/interface/v1/account/login', + type: 'POST', + inSequence: true, + service: "user", + orchestrated: true, + targetRoute: { + path: '/user/v1/account/login', + type: 'POST', + functionName: 'loginUser', + }, + }, { sourceRoute: '/interface/v1/account/login', type: 'POST', @@ -1556,5 +1571,1107 @@ module.exports = { type: 'PATCH', }, }, + { + sourceRoute: '/interface/v1/account/create', + type: 'POST', + inSequence: true, + service: "user", + orchestrated: true, + targetRoute: { + path: '/user/v1/account/create', + type: 'POST', + functionName: 'createUser', + }, + }, + { + sourceRoute: '/interface/v1/account/update', + type: 'PATCH', + inSequence: false, + service: "user", + orchestrated: true, + targetRoute: { + service: "user", + path: '/user/v1/user/update', + type: 'POST', + functionName: 'updateUser', + }, + }, + { + sourceRoute: '/interface/user-signup', + type: 'POST', + inSequence: true, + service: "user", + orchestrated: true, + targetRoute: { + path: '/user/v1/account/create', + type: 'POST', + functionName: 'createUser', + }, + }, + { + sourceRoute: '/interface/v1/entity-type/read', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: true, + targetRoute: { + path: '/user/v1/entity-type/read', + type: 'POST', + functionName: 'entityTypeRead', + }, + }, + { + sourceRoute: '/user/v1/account/login', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/account/login', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/account/acceptTermsAndCondition', + type: 'PATCH', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/account/acceptTermsAndCondition', + type: 'PATCH', + }, + }, + { + sourceRoute: '/user/v1/account/resetPassword', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/account/resetPassword', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/account/generateToken', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/account/generateToken', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/account/generateOtp', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/account/generateOtp', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/account/logout', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/account/logout', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/account/list', + type: 'GET', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/account/list', + type: 'GET', + functionName: 'accountsList' + }, + }, + { + sourceRoute: '/user/v1/account/registrationOtp', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/account/registrationOtp', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/user/read/:id', + type: 'GET', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/user/read/:id', + type: 'GET', + functionName: 'readUser', + }, + }, + { + sourceRoute: '/user/v1/user/read', + type: 'GET', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/user/read', + type: 'GET', + functionName: 'readUser', + }, + }, + { + sourceRoute: '/user/v1/user/update', + type: 'PATCH', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/user/update', + type: 'PATCH', + }, + }, + { + sourceRoute: '/user/v1/user/setLanguagePreference', + type: 'PATCH', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/user/setLanguagePreference', + type: 'PATCH', + }, + }, + { + sourceRoute: '/user/v1/user/share', + type: 'GET', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/user/share', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/user/share/:id', + type: 'GET', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/user/share/:id', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/user-role/list', + type: 'GET', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/user-role/list', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/user-role/default', + type: 'GET', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/user-role/default', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/user-role/create', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/user-role/create', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/user-role/update/:id', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/user-role/update/:id', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/user-role/delete/:id', + type: 'DELETE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/user-role/delete/:id', + type: 'DELETE', + }, + }, + { + sourceRoute: '/user/v1/form/create', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/form/create', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/form/read', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/form/read', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/form/read/:id', + type: 'POST', + service: "user", + targetRoute: { + path: '/user/v1/form/read/:id', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/form/update', + type: 'PATCH', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/form/update', + type: 'PATCH', + }, + }, + { + sourceRoute: '/user/v1/cloud-services/file/getSignedUrl', + type: 'GET', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/cloud-services/file/getSignedUrl', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/cloud-services/file/getDownloadableUrl', + type: 'GET', + service: "user", + targetRoute: { + path: '/user/v1/cloud-services/file/getDownloadableUrl', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/admin/deleteUser', + type: 'DELETE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/admin/deleteUser', + type: 'DELETE', + }, + }, + { + sourceRoute: '/user/v1/admin/deleteUser/:id', + type: 'DELETE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/admin/deleteUser/:id', + type: 'DELETE', + }, + }, + { + sourceRoute: '/user/v1/admin/create', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/admin/create', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/admin/login', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/admin/login', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/organization/create', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/organization/create', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/organization/update', + type: 'PATCH', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/organization/update', + type: 'PATCH', + }, + }, + { + sourceRoute: '/user/v1/organization/update/:id', + type: 'PATCH', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/organization/update/:id', + type: 'PATCH', + }, + }, + { + sourceRoute: '/user/v1/organization/list', + type: 'GET', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/organization/list', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/entity-type/create', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/entity-type/create', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/entity-type/update', + type: 'PATCH', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/entity-type/update', + type: 'PATCH', + }, + }, + { + sourceRoute: '/user/v1/entity-type/update/:id', + type: 'PATCH', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/entity-type/update/:id', + type: 'PATCH', + }, + }, + { + sourceRoute: '/user/v1/entity-type/read', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/entity-type/read', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/entity-type/delete', + type: 'DELETE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/entity-type/delete', + type: 'DELETE', + }, + }, + { + sourceRoute: '/user/v1/entity-type/delete/:id', + type: 'DELETE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/entity-type/delete/:id', + type: 'DELETE', + }, + }, + { + sourceRoute: '/user/v1/entity/create', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/entity/create', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/entity/update', + type: 'PATCH', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/entity/update', + type: 'PATCH', + }, + }, + { + sourceRoute: '/user/v1/entity/update/:id', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/entity/update/:id', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/entity/delete/:id', + type: 'DELETE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/entity/delete/:id', + type: 'DELETE', + }, + }, + { + sourceRoute: '/user/v1/entity/read', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/entity/read', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/entity/list', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/entity/list', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/org-admin/inheritEntityType', + type: 'POST', + service: "user", + targetRoute: { + path: '/user/v1/org-admin/inheritEntityType', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/organization/read', + type: 'GET', + service: "user", + targetRoute: { + path: '/user/v1/organization/read', + type: 'GET', + functionName: 'readOrganization', + }, + }, + { + sourceRoute: '/user/v1/admin/addOrgAdmin', + type: 'POST', + service: "user", + targetRoute: { + path: '/user/v1/admin/addOrgAdmin', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/org-admin/bulkUserCreate', + type: 'POST', + service: "user", + targetRoute: { + path: '/user/v1/org-admin/bulkUserCreate', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/org-admin/getBulkInvitesFilesList', + type: 'GET', + service: "user", + targetRoute: { + path: '/user/v1/org-admin/getBulkInvitesFilesList', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/org-admin/getRequestDetails/:id', + type: 'GET', + service: "user", + targetRoute: { + path: '/user/v1/org-admin/getRequestDetails/:id', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/org-admin/deactivateUser', + type: 'POST', + service: "user", + targetRoute: { + path: '/user/v1/org-admin/deactivateUser', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/org-admin/getRequests', + type: 'POST', + service: "user", + targetRoute: { + path: '/user/v1/org-admin/getRequests', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/org-admin/updateRequestStatus', + type: 'POST', + service: "user", + targetRoute: { + path: '/user/v1/org-admin/updateRequestStatus', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/organization/requestOrgRole', + type: 'POST', + service: "user", + targetRoute: { + path: '/user/v1/organization/requestOrgRole', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/admin/deactivateOrg/:id', + type: 'POST', + service: "user", + targetRoute: { + path: '/user/v1/admin/deactivateOrg/:id', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/notification/create', + type: 'POST', + service: "user", + targetRoute: { + path: '/user/v1/notification/create', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/notification/update/:id', + type: 'PATCH', + service: "user", + targetRoute: { + path: '/user/v1/notification/update/:id', + type: 'PATCH', + }, + }, + { + sourceRoute: '/user/v1/notification/read/:id', + type: 'GET', + service: "user", + targetRoute: { + path: '/user/v1/notification/read/:id', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/notification/read', + type: 'GET', + service: "user", + targetRoute: { + path: '/user/v1/notification/read', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/cloud-services/file/getSampleCSV', + type: 'GET', + service: "user", + targetRoute: { + path: '/user/v1/cloud-services/file/getSampleCSV', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/notification/template', + type: 'POST', + service: "user", + targetRoute: { + path: '/user/v1/notification/template', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/notification/template/:id', + type: 'GET', + service: "user", + targetRoute: { + path: '/user/v1/notification/template/:id', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/notification/template', + type: 'PATCH', + service: "user", + targetRoute: { + path: '/user/v1/notification/template', + type: 'PATCH', + }, + }, + { + sourceRoute: '/user/v1/account/search', + type: 'POST', + service: "user", + targetRoute: { + path: '/user/v1/account/search', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/permissions/create', + type: 'POST', + priority: 'MUST_HAVE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/permissions/create', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/permissions/update/:id', + type: 'POST', + priority: 'MUST_HAVE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/permissions/update/:id', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/permissions/list', + type: 'GET', + priority: 'MUST_HAVE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/permissions/list', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/permissions/delete/:id', + type: 'DELETE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/permissions/delete/:id', + type: 'DELETE', + }, + }, + { + sourceRoute: '/user/v1/modules/create', + type: 'POST', + priority: 'MUST_HAVE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/modules/create', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/modules/update/:id', + type: 'POST', + priority: 'MUST_HAVE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/modules/update/:id', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/modules/list', + type: 'GET', + priority: 'MUST_HAVE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/modules/list', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/modules/delete/:id', + type: 'DELETE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/modules/delete/:id', + type: 'DELETE', + }, + }, + { + sourceRoute: '/user/v1/role-permission-mapping/delete/:role_id', + type: 'POST', + priority: 'MUST_HAVE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/role-permission-mapping/delete/:role_id', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/role-permission-mapping/create/:role_id', + type: 'POST', + priority: 'MUST_HAVE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/role-permission-mapping/create/:role_id', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/role-permission-mapping/list', + type: 'POST', + priority: 'MUST_HAVE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/role-permission-mapping/list', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/organization/addRelatedOrg/:org_id', + type: 'POST', + priority: 'MUST_HAVE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/organization/addRelatedOrg/:org_id', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/organization/removeRelatedOrg/:org_id', + type: 'POST', + priority: 'MUST_HAVE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/organization/removeRelatedOrg/:org_id', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/account/changePassword', + type: 'POST', + priority: 'MUST_HAVE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/account/changePassword', + type: 'POST', + } + }, + { + sourceRoute: '/user/v1/account/validatingEmailIds', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/account/validatingEmailIds', + type: 'POST', + functionName: 'validateEmails' + } + }, + { + sourceRoute: '/user/v1/account/sessions', + type: 'GET', + priority: 'MUST_HAVE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/account/sessions', + type: 'GET', + } + }, + { + sourceRoute: '/user/v1/account/validateUserSession', + type: 'POST', + priority: 'MUST_HAVE', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/account/validateUserSession', + type: 'POST', + } + }, + { + sourceRoute: '/interface/v2/account/create', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v2/account/create', + type: 'POST' + }, + }, + + { + sourceRoute: '/user/v1/account/create', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/account/create', + type: 'POST' + }, + }, + { + sourceRoute: '/user/v1/org-admin/updateUser/:id', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/org-admin/updateUser/:id', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/org-admin/updateUser', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/org-admin/updateUser', + type: 'POST' + }, + }, + { + sourceRoute: '/user/v1/user/read', + type: 'GET', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/user/read', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/user/read/:id', + type: 'GET', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/user/read/:id', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/account/searchByEmailIds', + type: 'POST', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/account/searchByEmailIds', + type: 'POST', + } + }, + { + sourceRoute: '/user/v1/admin/triggerViewRebuild', + type: 'GET', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/admin/triggerViewRebuild', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/admin/triggerPeriodicViewRefresh', + type: 'GET', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/admin/triggerPeriodicViewRefresh', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/admin/triggerPeriodicViewRefreshInternal', + type: 'GET', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/admin/triggerPeriodicViewRefreshInternal', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/admin/triggerViewRebuildInternal', + type: 'GET', + inSequence: false, + service: "user", + orchestrated: false, + targetRoute: { + path: '/user/v1/admin/triggerViewRebuildInternal', + type: 'GET', + }, + }, + { + sourceRoute: '/scheduler/jobs/create', + type: 'POST', + service: "scheduler", + targetRoute: { + path: '/scheduler/jobs/create', + type: 'POST', + }, + }, + { + sourceRoute: '/scheduler/jobs/updateDelay', + type: 'POST', + service: "scheduler", + targetRoute: { + path: '/scheduler/jobs/updateDelay', + type: 'POST', + }, + }, + { + sourceRoute: '/scheduler/jobs/remove', + type: 'POST', + service: "scheduler", + targetRoute: { + path: '/scheduler/jobs/remove', + type: 'POST', + }, + }, + { + sourceRoute: '/scheduler/jobs/list', + type: 'GET', + service: "scheduler", + targetRoute: { + path: '/scheduler/jobs/list', + type: 'GET', + }, + }, + { + sourceRoute: '/scheduler/jobs/purge', + type: 'POST', + service: "scheduler", + targetRoute: { + path: '/scheduler/jobs/purge', + type: 'POST', + }, + }, + { + sourceRoute: '/notification/v1/email/send', + type: 'POST', + service: "notification", + targetRoute: { + path: '/notification/v1/email/send', + type: 'POST', + }, + } ], } diff --git a/elevate-mentoring/controllers/mentoring.js b/elevate-mentoring/controllers/mentoring.js index e49a0dd8..4a5606ea 100644 --- a/elevate-mentoring/controllers/mentoring.js +++ b/elevate-mentoring/controllers/mentoring.js @@ -1,6 +1,8 @@ const requesters = require('../utils/requester') const routeConfigs = require('../constants/routes') const requestParser = require('../utils/requestParser') +const {convertIdsToString} = require('../utils/integerToStringConverter') + const createProfile = async (req, res, responses) => { const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) @@ -26,16 +28,144 @@ const entityTypeRead = async (req, res, responses) => { const rolePermissions = async (req, res, responses) => { const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + + console.log("selected config",selectedConfig); + + console.log("selected req.baseUrl",req.baseUrl); + + console.log("selected req.responses",JSON.stringify(responses)); + return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path,req.body,{ 'X-auth-token': `bearer ${responses.user.result.access_token}`, }) } +const createUser = async (req, res, responses) => { + const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body,{ + 'device-info': req.headers['device-info'], + }) +} + + +const loginUser = async (req, res, responses) => { + const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + + + let data = await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body,{ + 'captcha-token': req.headers['captcha-token'], + 'device-info': req.headers['device-info'], + }) + return data +} + +const readOrganization = async (req, res, selectedConfig) => { + try { + const parameterisedRoute = req.query.organisation_code ? selectedConfig.targetRoute.path + `?organisation_code=${req.query.organisation_code}` : selectedConfig.targetRoute.path + `?organisation_id=${req.query.organisation_id}` + let response = await requesters.get(req.baseUrl, parameterisedRoute , { + 'internal_access_token': req.headers['internal_access_token'], + 'Content-Type':'application/json' + }) + response.result = convertIdsToString(response.result) + return res.json(response) + } catch (error) { + console.error('Error fetching organization details:', error) + return res.status(500).json({ error: 'Internal Server Error' }) + } +} + +const readUser = async (req, res, selectedConfig) => { + try { + const parameterisedRoute = req.params.id ? selectedConfig.targetRoute.path.replace('/:id', `/${req.params.id}`) : selectedConfig.targetRoute.path; + let headers + + if (req.params.id) { + headers = { + 'internal_access_token': req.headers['internal_access_token'], + 'Content-Type': 'application/json', + } + } else { + headers = { + 'X-auth-token': req.headers['x-auth-token'], + 'Content-Type': 'application/json', + } + } + + let response = await requesters.get(req.baseUrl, parameterisedRoute, headers) + + console.log("===================",response); + + // Extract only the relevant data + response.result = convertIdsToString(response.result) + return res.json(response) + } catch (error) { + console.error('Error fetching user details:', error); + return res.status(500).json({ error: 'Internal Server Error' }) + } + }; + + + const accountsList = async (req, res, selectedConfig) => { + try { + const userIds = req.body.userIds // Extract userIds from the request body + const excludeDeletedRecords = req.query.exclude_deleted_records === 'true' + + const parameterisedRoute = excludeDeletedRecords + ? `${selectedConfig.targetRoute.path}?exclude_deleted_records=true` + : selectedConfig.targetRoute.path + + const headers = { + 'internal_access_token': req.headers['internal_access_token'], + 'Content-Type': 'application/json', + } + + const requestBody = { userIds } // Pass the request body + const accountsListResponse = await requesters.get(req.baseUrl, parameterisedRoute, headers, requestBody) + + accountsListResponse.result = await convertIdsToString(accountsListResponse.result) + + return res.json(accountsListResponse) + } catch (error) { + console.error('Error fetching list of user details:', error); + return res.status(500).json({ error: 'Internal Server Error' }); + } +} + + +const validateEmails = async (req, res , selectedConfig) => { + try{ + const emailIds = req.body.emailIds + + const headers = { + 'internal_access_token': req.headers['internal_access_token'], + 'Content-Type': 'application/json', + } + + const requestBody = { emailIds } // Pass the request body + + const userListResponse = await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, requestBody, headers) + userListResponse.result = await convertIdsToString(userListResponse.result) + return res.json(userListResponse) + } catch (error) { + console.error('Error fetching user details by email :', error) + return res.status(500).json({ error: 'Internal Server Error' }) + } +} + + mentoringController = { createProfile, updateUser, entityTypeRead, rolePermissions, + createUser, + updateUser, + entityTypeRead, + loginUser, + readOrganization, + readUser, + accountsList, + validateEmails } module.exports = mentoringController diff --git a/elevate-mentoring/controllers/orchestrationController.js b/elevate-mentoring/controllers/orchestrationController.js index 3135a021..ce23a1d5 100644 --- a/elevate-mentoring/controllers/orchestrationController.js +++ b/elevate-mentoring/controllers/orchestrationController.js @@ -4,6 +4,10 @@ const orchestrationHandler = async (req, res, responses) => { console.log(req.targetPackages, req.inSequence, req.orchestrated, req.sourceRoute, responses) console.log(req.body) const selectedRouteConfig = routesConfig.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + + if(selectedRouteConfig.service){ + req['baseUrl'] = process.env[`${selectedRouteConfig.service.toUpperCase()}_SERVICE_BASE_URL`] + } return await mentoringController[selectedRouteConfig.targetRoute.functionName](req, res, responses) } diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 28f75808..d7bb7a31 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.1.55", + "version": "1.1.934", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { diff --git a/elevate-mentoring/utils/requester.js b/elevate-mentoring/utils/requester.js index 78297ec1..de029fe4 100644 --- a/elevate-mentoring/utils/requester.js +++ b/elevate-mentoring/utils/requester.js @@ -17,6 +17,10 @@ const passThroughRequester = async (req, res) => { const sourceBaseUrl = req.protocol + '://' + req.headers.host + '/' const sourceUrl = new URL(req.originalUrl, sourceBaseUrl) const route = routesConfig.routes.find((route) => route.sourceRoute === req.sourceRoute) + + if(route.service){ + req['baseUrl'] = process.env[`${route.service.toUpperCase()}_SERVICE_BASE_URL`] + } const params = matchPathsAndExtractParams(route.sourceRoute, req.originalUrl) const targetRoute = pathParamSetter(route.targetRoute.path, params) const parsedUrl = new URL(targetRoute, req.baseUrl) diff --git a/sunbird-mentoring/constants/routes.js b/sunbird-mentoring/constants/routes.js index 40d1c7e7..5c9a7f0a 100644 --- a/sunbird-mentoring/constants/routes.js +++ b/sunbird-mentoring/constants/routes.js @@ -1542,6 +1542,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/account/login', type: 'POST', @@ -1552,6 +1553,7 @@ module.exports = { type: 'PATCH', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/account/acceptTermsAndCondition', type: 'PATCH', @@ -1562,6 +1564,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/account/resetPassword', type: 'POST', @@ -1572,6 +1575,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/account/generateToken', type: 'POST', @@ -1582,6 +1586,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/account/logout', type: 'POST', @@ -1592,6 +1597,7 @@ module.exports = { type: 'GET', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/private/user/v1/search', type: 'POST', @@ -1603,6 +1609,7 @@ module.exports = { type: 'GET', inSequence: false, orchestrated: false, + service: "user", targetRoute: { paths: [ { path: '/private/user/v1/read/:id', type: 'GET' }, @@ -1620,6 +1627,7 @@ module.exports = { type: 'GET', inSequence: false, orchestrated: false, + service: "user", targetRoute: { paths: [ { @@ -1640,6 +1648,7 @@ module.exports = { type: 'PATCH', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/user/update', type: 'PATCH', @@ -1650,6 +1659,7 @@ module.exports = { type: 'GET', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/user/share', type: 'GET', @@ -1660,6 +1670,7 @@ module.exports = { type: 'GET', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/user/share/:id', type: 'GET', @@ -1670,6 +1681,7 @@ module.exports = { type: 'GET', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/user-role/list', type: 'GET', @@ -1680,6 +1692,7 @@ module.exports = { type: 'GET', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/user-role/default', type: 'GET', @@ -1690,6 +1703,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/user-role/create', type: 'POST', @@ -1700,6 +1714,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/user-role/update/:id', type: 'POST', @@ -1710,6 +1725,7 @@ module.exports = { type: 'DELETE', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/user-role/delete/:id', type: 'DELETE', @@ -1720,6 +1736,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/form/create', type: 'POST', @@ -1730,6 +1747,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/form/read', type: 'POST', @@ -1738,6 +1756,7 @@ module.exports = { { sourceRoute: '/user/v1/form/read/:id', type: 'POST', + service: "user", targetRoute: { path: '/user/v1/form/read/:id', type: 'POST', @@ -1748,6 +1767,7 @@ module.exports = { type: 'PATCH', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/form/update', type: 'PATCH', @@ -1758,6 +1778,7 @@ module.exports = { type: 'GET', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/cloud-services/file/getSignedUrl', type: 'GET', @@ -1766,6 +1787,7 @@ module.exports = { { sourceRoute: '/user/v1/cloud-services/file/getDownloadableUrl', type: 'GET', + service: "user", targetRoute: { path: '/user/v1/cloud-services/file/getDownloadableUrl', type: 'GET', @@ -1776,6 +1798,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/organization/create', type: 'POST', @@ -1786,6 +1809,7 @@ module.exports = { type: 'PATCH', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/organization/update', type: 'PATCH', @@ -1795,6 +1819,7 @@ module.exports = { sourceRoute: '/user/v1/organization/update/:id', type: 'PATCH', inSequence: false, + service: "user", orchestrated: false, targetRoute: { path: '/user/v1/organization/update/:id', @@ -1806,6 +1831,7 @@ module.exports = { type: 'GET', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/v1/org/search', type: 'GET', @@ -1817,6 +1843,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/entity-type/create', type: 'POST', @@ -1827,6 +1854,7 @@ module.exports = { type: 'PATCH', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/entity-type/update', type: 'PATCH', @@ -1837,6 +1865,7 @@ module.exports = { type: 'PATCH', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/entity-type/update/:id', type: 'PATCH', @@ -1847,6 +1876,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/entity-type/read', type: 'POST', @@ -1857,6 +1887,7 @@ module.exports = { type: 'DELETE', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/entity-type/delete', type: 'DELETE', @@ -1867,6 +1898,7 @@ module.exports = { type: 'DELETE', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/entity-type/delete/:id', type: 'DELETE', @@ -1877,6 +1909,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/entity/create', type: 'POST', @@ -1887,6 +1920,7 @@ module.exports = { type: 'PATCH', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/entity/update', type: 'PATCH', @@ -1897,6 +1931,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/entity/update/:id', type: 'POST', @@ -1907,6 +1942,7 @@ module.exports = { type: 'DELETE', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/entity/delete/:id', type: 'DELETE', @@ -1917,6 +1953,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: false, + service: "user", targetRoute: { path: '/user/v1/entity/read', type: 'POST', @@ -1925,6 +1962,7 @@ module.exports = { { sourceRoute: '/user/v1/org-admin/inheritEntityType', type: 'POST', + service: "user", targetRoute: { path: '/user/v1/org-admin/inheritEntityType', type: 'POST', @@ -1933,6 +1971,7 @@ module.exports = { { sourceRoute: '/user/v1/organization/read', type: 'GET', + service: "user", targetRoute: { path: '/v1/org/read', type: 'POST', @@ -1942,6 +1981,7 @@ module.exports = { { sourceRoute: '/user/v1/admin/addOrgAdmin', type: 'POST', + service: "user", targetRoute: { path: '/user/v1/admin/addOrgAdmin', type: 'POST', @@ -1950,6 +1990,7 @@ module.exports = { { sourceRoute: '/user/v1/org-admin/bulkUserCreate', type: 'POST', + service: "user", targetRoute: { path: '/user/v1/org-admin/bulkUserCreate', type: 'POST', @@ -1958,6 +1999,7 @@ module.exports = { { sourceRoute: '/user/v1/org-admin/getBulkInvitesFilesList', type: 'GET', + service: "user", targetRoute: { path: '/user/v1/org-admin/getBulkInvitesFilesList', type: 'GET', @@ -1966,6 +2008,7 @@ module.exports = { { sourceRoute: '/user/v1/notification/read', type: 'GET', + service: "user", targetRoute: { path: '/user/v1/notification/read', type: 'GET', @@ -1974,6 +2017,7 @@ module.exports = { { sourceRoute: '/user/v1/account/search', type: 'POST', + service: "user", targetRoute: { path: '/user/v1/account/search', type: 'POST', @@ -1982,6 +2026,7 @@ module.exports = { { sourceRoute: '/user/v1/permissions/list', type: 'GET', + service: "user", priority: 'MUST_HAVE', inSequence: false, orchestrated: false, @@ -1993,6 +2038,7 @@ module.exports = { { sourceRoute: '/user/v1/account/validatingEmailIds', type: 'POST', + service: "user", inSequence: false, orchestrated: false, targetRoute: { @@ -2002,6 +2048,7 @@ module.exports = { { sourceRoute: '/user/v1/account/sessions', type: 'GET', + service: "user", priority: 'MUST_HAVE', inSequence: false, orchestrated: false, @@ -2014,6 +2061,7 @@ module.exports = { sourceRoute: '/user/v1/account/validateUserSession', type: 'POST', priority: 'MUST_HAVE', + service: "user", inSequence: false, orchestrated: false, targetRoute: { @@ -2044,6 +2092,7 @@ module.exports = { { sourceRoute: '/scheduler/jobs/create', type: 'POST', + service: "scheduler", targetRoute: { path: '/scheduler/jobs/create', type: 'POST', @@ -2052,6 +2101,7 @@ module.exports = { { sourceRoute: '/scheduler/jobs/updateDelay', type: 'POST', + service: "scheduler", targetRoute: { path: '/scheduler/jobs/updateDelay', type: 'POST', @@ -2060,6 +2110,7 @@ module.exports = { { sourceRoute: '/scheduler/jobs/remove', type: 'POST', + service: "scheduler", targetRoute: { path: '/scheduler/jobs/remove', type: 'POST', @@ -2068,6 +2119,7 @@ module.exports = { { sourceRoute: '/scheduler/jobs/list', type: 'GET', + service: "scheduler", targetRoute: { path: '/scheduler/jobs/list', type: 'GET', @@ -2076,6 +2128,7 @@ module.exports = { { sourceRoute: '/scheduler/jobs/purge', type: 'POST', + service: "scheduler", targetRoute: { path: '/scheduler/jobs/purge', type: 'POST', @@ -2106,10 +2159,12 @@ module.exports = { targetRoute: { paths: [ { - path: '/private/user/v1/read/:id', - type: 'GET' + service: "user", + path: '/private/user/v1/read/:id', + type: 'GET' }, { + service: "user", baseUrl: 'http://lms-service:9000', path: '/private/v3/user/courses/list/:id', type: 'GET' diff --git a/sunbird-mentoring/controllers/customHandler.js b/sunbird-mentoring/controllers/customHandler.js index 22421532..d40e465f 100644 --- a/sunbird-mentoring/controllers/customHandler.js +++ b/sunbird-mentoring/controllers/customHandler.js @@ -3,6 +3,9 @@ const mentoringController = require('../controllers/mentoring') const customHandler = async (req, res) => { const selectedRouteConfig = routesConfig.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + if(selectedRouteConfig.service){ + req['baseUrl'] = process.env[`${selectedRouteConfig.service.toUpperCase()}_SERVICE_BASE_URL`] + } return await mentoringController[selectedRouteConfig.targetRoute.functionName](req, res, selectedRouteConfig) } diff --git a/sunbird-mentoring/controllers/mentoring.js b/sunbird-mentoring/controllers/mentoring.js index 3548b490..9f15791c 100644 --- a/sunbird-mentoring/controllers/mentoring.js +++ b/sunbird-mentoring/controllers/mentoring.js @@ -3,6 +3,11 @@ const routeConfigs = require('../constants/routes.js') const requestParser = require('../utils/requestParser') const createProfile = async (req, res, responses, selectedConfig) => { + + await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body, { + 'X-auth-token': `bearer ${responses.user.result.access_token}`, + }) + return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body, { 'X-auth-token': `bearer ${responses.user.result.access_token}`, }) @@ -15,16 +20,26 @@ const createProfile = async (req, res, responses, selectedConfig) => { // 'X-auth-token': req.headers['x-auth-token'], // }) -const rolePermissions = async (req, res, responses, selectedConfig) => +const rolePermissions = async (req, res, responses, selectedConfig) =>{ + + if(selectedConfig.service){ + req['baseUrl'] = process.env[`${selectedConfig.service.toUpperCase()}_SERVICE_BASE_URL`] + } await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body, { 'X-auth-token': `bearer ${responses.user.result.access_token}`, }) +} + const profileRead = async (req, res, selectedConfig) => { try { const targetRoute1 = selectedConfig.targetRoute.paths[0].path const targetRoute2 = selectedConfig.targetRoute.paths[1].path + if(selectedConfig.service){ + req['baseUrl'] = process.env[`${selectedConfig.service.toUpperCase()}_SERVICE_BASE_URL`] + } + const userCreateResponse = await requesters.post(req.baseUrl, targetRoute1, {}, req.headers) if(process.env.DEBUG_MODE == "true"){ @@ -55,18 +70,32 @@ const profileRead = async (req, res, selectedConfig) => { } const createUser = async (req, res, responses, selectedConfig) => { + + if(selectedConfig.service){ + req['baseUrl'] = process.env[`${selectedConfig.service.toUpperCase()}_SERVICE_BASE_URL`] + } + return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body, { 'device-info': req.headers['device-info'], }) } const entityTypeRead = async (req, res, responses, selectedConfig) => { + if(selectedConfig.service){ + req['baseUrl'] = process.env[`${selectedConfig.service.toUpperCase()}_SERVICE_BASE_URL`] + } + return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body, { 'X-auth-token': req.headers['x-auth-token'], }) } const loginUser = async (req, res, responses, selectedConfig) => { + + if(selectedConfig.service){ + req['baseUrl'] = process.env[`${selectedConfig.service.toUpperCase()}_SERVICE_BASE_URL`] + } + return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body, { 'captcha-token': req.headers['captcha-token'], 'device-info': req.headers['device-info'], @@ -80,6 +109,10 @@ const readOrganization = async (req, res, selectedConfig) => { }, } try { + if(selectedConfig.service){ + req['baseUrl'] = process.env[`${selectedConfig.service.toUpperCase()}_SERVICE_BASE_URL`] + } + const response = await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, body, { 'device-info': req.headers['device-info'], }) @@ -156,6 +189,9 @@ const readUserById = async (req, res, selectedConfig) => { const targetRoute1 = selectedConfig.targetRoute.paths[0].path const targetRoute2 = selectedConfig.targetRoute.paths[1] + if(selectedConfig.service){ + req['baseUrl'] = process.env[`${selectedConfig.service.toUpperCase()}_SERVICE_BASE_URL`] + } const userResponse = await requesters.get(req.baseUrl, targetRoute1, req.headers, { id: userId, }) @@ -225,6 +261,9 @@ const readUserWithToken = async (req, res, selectedConfig) => { if(req.params.id){ userId = req.params.id } + if(selectedConfig.service){ + req['baseUrl'] = process.env[`${selectedConfig.service.toUpperCase()}_SERVICE_BASE_URL`] + } const userResponse = await requesters.get(req.baseUrl,targetRoute1.path, req.headers, { @@ -288,10 +327,19 @@ const accountList = async (req, res, selectedConfig) => { try { const userIds = req.body.userIds if(process.env.DEBUG_MODE == "true"){ + console.log("------------selectedConfig --------",selectedConfig); + console.log("------------req.baseUrl --------",req.baseUrl); console.log("------- ================ -------",req.body); } // if (Array.isArray(userIds)) throw Error('req.body.userIds is not an array.') body.request.filters.userId = userIds + + + if(selectedConfig.service){ + req['baseUrl'] = process.env[`${selectedConfig.service.toUpperCase()}_SERVICE_BASE_URL`] + } + + const userSearchResponse = await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, body, {}) return res.json(processUserSearchResponse(userSearchResponse.result.response.content)) } catch (error) { @@ -319,6 +367,10 @@ const listOrganisation = async (req, res, selectedConfig) => { } try { + if(selectedConfig.service){ + req['baseUrl'] = process.env[`${selectedConfig.service.toUpperCase()}_SERVICE_BASE_URL`] + } + const response = await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, body, { 'device-info': req.headers['device-info'], }) diff --git a/sunbird-mentoring/controllers/orchestrationController.js b/sunbird-mentoring/controllers/orchestrationController.js index 615ff0e5..23e53a0a 100644 --- a/sunbird-mentoring/controllers/orchestrationController.js +++ b/sunbird-mentoring/controllers/orchestrationController.js @@ -4,6 +4,13 @@ const orchestrationHandler = async (req, res, responses) => { console.log(req.targetPackages, req.inSequence, req.orchestrated, req.sourceRoute, responses) console.log(req.body) const selectedRouteConfig = routesConfig.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + + if(selectedRouteConfig.service){ + console.log("selectedRouteConfig.service" ,selectedRouteConfig.service) + req['baseUrl'] = process.env[`${selectedRouteConfig.service.toUpperCase()}_SERVICE_BASE_URL`] + console.log("orch req['baseUrl']" ,req['baseUrl']) + } + return await mentoringController[selectedRouteConfig.targetRoute.functionName]( req, res, diff --git a/sunbird-mentoring/helpers/kafkaManager.js b/sunbird-mentoring/helpers/kafkaManager.js index 31a30562..97e544c5 100644 --- a/sunbird-mentoring/helpers/kafkaManager.js +++ b/sunbird-mentoring/helpers/kafkaManager.js @@ -5,17 +5,17 @@ const kafkaManager = async (kafkaPackage, environmentVariables) => { const { ElevateKafka } = kafkaPackage const kafka = new ElevateKafka( - environmentVariables.KB_MENTORING_NOTIFICATION_KAFKA_BROKERS, - environmentVariables.KB_MENTORING_NOTIFICATION_KAFKA_BROKERS, + environmentVariables.SUNBIRD_MENTORING_NOTIFICATION_KAFKA_BROKERS, + environmentVariables.SUNBIRD_MENTORING_NOTIFICATION_KAFKA_BROKERS, { packageName: 'kb-mentoring-notification', } ) - const topics = [environmentVariables.KB_MENTORING_NOTIFICATION_KAFKA_TOPIC] - const consumer = await kafka.createConsumer(environmentVariables.KB_MENTORING_NOTIFICATION_KAFKA_GROUP_ID, topics) + const topics = [environmentVariables.SUNBIRD_MENTORING_NOTIFICATION_KAFKA_TOPIC] + const consumer = await kafka.createConsumer(environmentVariables.SUNBIRD_MENTORING_NOTIFICATION_KAFKA_GROUP_ID, topics) await kafka.runConsumer(consumer, async (topic, message) => { - if (topic == environmentVariables.KB_MENTORING_NOTIFICATION_KAFKA_TOPIC) { + if (topic == environmentVariables.SUNBIRD_MENTORING_NOTIFICATION_KAFKA_TOPIC) { if(process.env.DEBUG_MODE == "true"){ console.log("-------------------- message",message.value); diff --git a/sunbird-mentoring/package.json b/sunbird-mentoring/package.json index 32a0d044..761b1595 100644 --- a/sunbird-mentoring/package.json +++ b/sunbird-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "sunbird-mentoring", - "version": "3.1.1", + "version": "3.1.16", "description": "Npm package for sunbird-mentoring service integration with Interface service. ", "main": "index.js", "scripts": { diff --git a/sunbird-mentoring/utils/requester.js b/sunbird-mentoring/utils/requester.js index 6b4a6afb..7f88ec61 100644 --- a/sunbird-mentoring/utils/requester.js +++ b/sunbird-mentoring/utils/requester.js @@ -17,6 +17,14 @@ const passThroughRequester = async (req, res) => { const sourceBaseUrl = req.protocol + '://' + req.headers.host + '/' const sourceUrl = new URL(req.originalUrl, sourceBaseUrl) const route = routesConfig.routes.find((route) => route.sourceRoute === req.sourceRoute) + + + console.log("------------- pass through",route); + + if(route.service){ + req['baseUrl'] = process.env[`${route.service.toUpperCase()}_SERVICE_BASE_URL`] + } + const params = matchPathsAndExtractParams(route.sourceRoute, req.originalUrl) const targetRoute = pathParamSetter(route.targetRoute.path, params) const parsedUrl = new URL(targetRoute, req.baseUrl) diff --git a/sunbird-user/package.json b/sunbird-user/package.json index 38192ee0..390a8892 100644 --- a/sunbird-user/package.json +++ b/sunbird-user/package.json @@ -1,6 +1,6 @@ { "name": "sunbird-user", - "version": "1.6.3", + "version": "1.6.4", "description": "Npm package for Elevate-User service integration with Interface service. ", "main": "index.js", "scripts": { From e5fca258a46117bf75ffc57939463cad6b099a06 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Mon, 30 Dec 2024 14:08:32 +0530 Subject: [PATCH 004/105] code merge --- .../utils/integerToStringConverter.js | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 elevate-mentoring/utils/integerToStringConverter.js diff --git a/elevate-mentoring/utils/integerToStringConverter.js b/elevate-mentoring/utils/integerToStringConverter.js new file mode 100644 index 00000000..6d6746a3 --- /dev/null +++ b/elevate-mentoring/utils/integerToStringConverter.js @@ -0,0 +1,37 @@ +const convertIdsToString = (obj) => { + // Check if the input is an array of integers + if (Array.isArray(obj) && obj.every(item => typeof item === 'number')) { + return obj.map(item => item.toString()) + } + + // If not an array or not all elements are numbers, proceed with the existing logic + if (typeof obj !== 'object' || obj === null) { + return obj + } + + if (Array.isArray(obj)) { + return obj.map(convertIdsToString) + } + + const relevantKeys = ['id', 'organization_id', 'related_orgs'] + const hasRelevantKeys = relevantKeys.some(key => key in obj) + + if (!hasRelevantKeys) { + return obj + } + + return Object.keys(obj).reduce((result, key) => { + if (relevantKeys.includes(key)) { + if (key === 'related_orgs' && Array.isArray(obj[key])) { + result[key] = obj[key].map(item => typeof item === 'number' ? item.toString() : item) + } else { + result[key] = typeof obj[key] === 'number' ? obj[key].toString() : obj[key] + } + } else { + result[key] = convertIdsToString(obj[key]) + } + return result + }, {}) + }; + + exports.convertIdsToString = convertIdsToString \ No newline at end of file From 1b769c16f41169b5fee590eb640f51df343ac0bc Mon Sep 17 00:00:00 2001 From: nevil Date: Mon, 30 Dec 2024 16:31:58 +0530 Subject: [PATCH 005/105] added: connection apis --- elevate-mentoring/constants/routes.js | 318 ++++++++++++++++---------- 1 file changed, 199 insertions(+), 119 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 830205a2..4bc8634a 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -868,7 +868,7 @@ module.exports = { inSequence: false, orchestrated: true, targetRoute: { - service: "mentoring", + service: 'mentoring', path: '/mentoring/v1/profile/create', type: 'POST', functionName: 'createProfile', @@ -880,7 +880,7 @@ module.exports = { inSequence: false, orchestrated: true, targetRoute: { - service: "mentoring", + service: 'mentoring', path: '/mentoring/v1/profile/update/', type: 'POST', functionName: 'updateUser', @@ -891,7 +891,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: true, - service: "mentoring", + service: 'mentoring', targetRoute: { path: '/mentoring/v1/entity-type/read', type: 'POST', @@ -902,7 +902,7 @@ module.exports = { sourceRoute: '/interface/v1/account/login', type: 'POST', inSequence: true, - service: "user", + service: 'user', orchestrated: true, targetRoute: { path: '/user/v1/account/login', @@ -1575,7 +1575,7 @@ module.exports = { sourceRoute: '/interface/v1/account/create', type: 'POST', inSequence: true, - service: "user", + service: 'user', orchestrated: true, targetRoute: { path: '/user/v1/account/create', @@ -1587,10 +1587,10 @@ module.exports = { sourceRoute: '/interface/v1/account/update', type: 'PATCH', inSequence: false, - service: "user", + service: 'user', orchestrated: true, targetRoute: { - service: "user", + service: 'user', path: '/user/v1/user/update', type: 'POST', functionName: 'updateUser', @@ -1600,7 +1600,7 @@ module.exports = { sourceRoute: '/interface/user-signup', type: 'POST', inSequence: true, - service: "user", + service: 'user', orchestrated: true, targetRoute: { path: '/user/v1/account/create', @@ -1612,7 +1612,7 @@ module.exports = { sourceRoute: '/interface/v1/entity-type/read', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: true, targetRoute: { path: '/user/v1/entity-type/read', @@ -1624,7 +1624,7 @@ module.exports = { sourceRoute: '/user/v1/account/login', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/account/login', @@ -1635,7 +1635,7 @@ module.exports = { sourceRoute: '/user/v1/account/acceptTermsAndCondition', type: 'PATCH', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/account/acceptTermsAndCondition', @@ -1646,7 +1646,7 @@ module.exports = { sourceRoute: '/user/v1/account/resetPassword', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/account/resetPassword', @@ -1657,7 +1657,7 @@ module.exports = { sourceRoute: '/user/v1/account/generateToken', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/account/generateToken', @@ -1668,7 +1668,7 @@ module.exports = { sourceRoute: '/user/v1/account/generateOtp', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/account/generateOtp', @@ -1679,7 +1679,7 @@ module.exports = { sourceRoute: '/user/v1/account/logout', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/account/logout', @@ -1690,19 +1690,19 @@ module.exports = { sourceRoute: '/user/v1/account/list', type: 'GET', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/account/list', type: 'GET', - functionName: 'accountsList' + functionName: 'accountsList', }, }, { sourceRoute: '/user/v1/account/registrationOtp', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/account/registrationOtp', @@ -1713,7 +1713,7 @@ module.exports = { sourceRoute: '/user/v1/user/read/:id', type: 'GET', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/user/read/:id', @@ -1725,7 +1725,7 @@ module.exports = { sourceRoute: '/user/v1/user/read', type: 'GET', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/user/read', @@ -1737,7 +1737,7 @@ module.exports = { sourceRoute: '/user/v1/user/update', type: 'PATCH', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/user/update', @@ -1748,7 +1748,7 @@ module.exports = { sourceRoute: '/user/v1/user/setLanguagePreference', type: 'PATCH', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/user/setLanguagePreference', @@ -1759,7 +1759,7 @@ module.exports = { sourceRoute: '/user/v1/user/share', type: 'GET', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/user/share', @@ -1770,7 +1770,7 @@ module.exports = { sourceRoute: '/user/v1/user/share/:id', type: 'GET', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/user/share/:id', @@ -1781,7 +1781,7 @@ module.exports = { sourceRoute: '/user/v1/user-role/list', type: 'GET', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/user-role/list', @@ -1792,7 +1792,7 @@ module.exports = { sourceRoute: '/user/v1/user-role/default', type: 'GET', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/user-role/default', @@ -1803,7 +1803,7 @@ module.exports = { sourceRoute: '/user/v1/user-role/create', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/user-role/create', @@ -1814,7 +1814,7 @@ module.exports = { sourceRoute: '/user/v1/user-role/update/:id', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/user-role/update/:id', @@ -1825,7 +1825,7 @@ module.exports = { sourceRoute: '/user/v1/user-role/delete/:id', type: 'DELETE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/user-role/delete/:id', @@ -1836,7 +1836,7 @@ module.exports = { sourceRoute: '/user/v1/form/create', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/form/create', @@ -1847,7 +1847,7 @@ module.exports = { sourceRoute: '/user/v1/form/read', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/form/read', @@ -1857,7 +1857,7 @@ module.exports = { { sourceRoute: '/user/v1/form/read/:id', type: 'POST', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/form/read/:id', type: 'POST', @@ -1867,7 +1867,7 @@ module.exports = { sourceRoute: '/user/v1/form/update', type: 'PATCH', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/form/update', @@ -1878,7 +1878,7 @@ module.exports = { sourceRoute: '/user/v1/cloud-services/file/getSignedUrl', type: 'GET', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/cloud-services/file/getSignedUrl', @@ -1888,7 +1888,7 @@ module.exports = { { sourceRoute: '/user/v1/cloud-services/file/getDownloadableUrl', type: 'GET', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/cloud-services/file/getDownloadableUrl', type: 'GET', @@ -1898,7 +1898,7 @@ module.exports = { sourceRoute: '/user/v1/admin/deleteUser', type: 'DELETE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/admin/deleteUser', @@ -1909,7 +1909,7 @@ module.exports = { sourceRoute: '/user/v1/admin/deleteUser/:id', type: 'DELETE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/admin/deleteUser/:id', @@ -1920,7 +1920,7 @@ module.exports = { sourceRoute: '/user/v1/admin/create', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/admin/create', @@ -1931,7 +1931,7 @@ module.exports = { sourceRoute: '/user/v1/admin/login', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/admin/login', @@ -1942,7 +1942,7 @@ module.exports = { sourceRoute: '/user/v1/organization/create', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/organization/create', @@ -1953,7 +1953,7 @@ module.exports = { sourceRoute: '/user/v1/organization/update', type: 'PATCH', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/organization/update', @@ -1964,7 +1964,7 @@ module.exports = { sourceRoute: '/user/v1/organization/update/:id', type: 'PATCH', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/organization/update/:id', @@ -1975,7 +1975,7 @@ module.exports = { sourceRoute: '/user/v1/organization/list', type: 'GET', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/organization/list', @@ -1986,7 +1986,7 @@ module.exports = { sourceRoute: '/user/v1/entity-type/create', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/entity-type/create', @@ -1997,7 +1997,7 @@ module.exports = { sourceRoute: '/user/v1/entity-type/update', type: 'PATCH', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/entity-type/update', @@ -2008,7 +2008,7 @@ module.exports = { sourceRoute: '/user/v1/entity-type/update/:id', type: 'PATCH', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/entity-type/update/:id', @@ -2019,7 +2019,7 @@ module.exports = { sourceRoute: '/user/v1/entity-type/read', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/entity-type/read', @@ -2030,7 +2030,7 @@ module.exports = { sourceRoute: '/user/v1/entity-type/delete', type: 'DELETE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/entity-type/delete', @@ -2041,7 +2041,7 @@ module.exports = { sourceRoute: '/user/v1/entity-type/delete/:id', type: 'DELETE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/entity-type/delete/:id', @@ -2052,7 +2052,7 @@ module.exports = { sourceRoute: '/user/v1/entity/create', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/entity/create', @@ -2063,7 +2063,7 @@ module.exports = { sourceRoute: '/user/v1/entity/update', type: 'PATCH', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/entity/update', @@ -2074,7 +2074,7 @@ module.exports = { sourceRoute: '/user/v1/entity/update/:id', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/entity/update/:id', @@ -2085,7 +2085,7 @@ module.exports = { sourceRoute: '/user/v1/entity/delete/:id', type: 'DELETE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/entity/delete/:id', @@ -2096,7 +2096,7 @@ module.exports = { sourceRoute: '/user/v1/entity/read', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/entity/read', @@ -2107,7 +2107,7 @@ module.exports = { sourceRoute: '/user/v1/entity/list', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/entity/list', @@ -2117,7 +2117,7 @@ module.exports = { { sourceRoute: '/user/v1/org-admin/inheritEntityType', type: 'POST', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/org-admin/inheritEntityType', type: 'POST', @@ -2126,7 +2126,7 @@ module.exports = { { sourceRoute: '/user/v1/organization/read', type: 'GET', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/organization/read', type: 'GET', @@ -2136,7 +2136,7 @@ module.exports = { { sourceRoute: '/user/v1/admin/addOrgAdmin', type: 'POST', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/admin/addOrgAdmin', type: 'POST', @@ -2145,7 +2145,7 @@ module.exports = { { sourceRoute: '/user/v1/org-admin/bulkUserCreate', type: 'POST', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/org-admin/bulkUserCreate', type: 'POST', @@ -2154,7 +2154,7 @@ module.exports = { { sourceRoute: '/user/v1/org-admin/getBulkInvitesFilesList', type: 'GET', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/org-admin/getBulkInvitesFilesList', type: 'GET', @@ -2163,7 +2163,7 @@ module.exports = { { sourceRoute: '/user/v1/org-admin/getRequestDetails/:id', type: 'GET', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/org-admin/getRequestDetails/:id', type: 'GET', @@ -2172,7 +2172,7 @@ module.exports = { { sourceRoute: '/user/v1/org-admin/deactivateUser', type: 'POST', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/org-admin/deactivateUser', type: 'POST', @@ -2181,7 +2181,7 @@ module.exports = { { sourceRoute: '/user/v1/org-admin/getRequests', type: 'POST', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/org-admin/getRequests', type: 'POST', @@ -2190,7 +2190,7 @@ module.exports = { { sourceRoute: '/user/v1/org-admin/updateRequestStatus', type: 'POST', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/org-admin/updateRequestStatus', type: 'POST', @@ -2199,7 +2199,7 @@ module.exports = { { sourceRoute: '/user/v1/organization/requestOrgRole', type: 'POST', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/organization/requestOrgRole', type: 'POST', @@ -2208,7 +2208,7 @@ module.exports = { { sourceRoute: '/user/v1/admin/deactivateOrg/:id', type: 'POST', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/admin/deactivateOrg/:id', type: 'POST', @@ -2217,7 +2217,7 @@ module.exports = { { sourceRoute: '/user/v1/notification/create', type: 'POST', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/notification/create', type: 'POST', @@ -2226,7 +2226,7 @@ module.exports = { { sourceRoute: '/user/v1/notification/update/:id', type: 'PATCH', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/notification/update/:id', type: 'PATCH', @@ -2235,7 +2235,7 @@ module.exports = { { sourceRoute: '/user/v1/notification/read/:id', type: 'GET', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/notification/read/:id', type: 'GET', @@ -2244,7 +2244,7 @@ module.exports = { { sourceRoute: '/user/v1/notification/read', type: 'GET', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/notification/read', type: 'GET', @@ -2253,7 +2253,7 @@ module.exports = { { sourceRoute: '/user/v1/cloud-services/file/getSampleCSV', type: 'GET', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/cloud-services/file/getSampleCSV', type: 'GET', @@ -2262,7 +2262,7 @@ module.exports = { { sourceRoute: '/user/v1/notification/template', type: 'POST', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/notification/template', type: 'POST', @@ -2271,7 +2271,7 @@ module.exports = { { sourceRoute: '/user/v1/notification/template/:id', type: 'GET', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/notification/template/:id', type: 'GET', @@ -2280,7 +2280,7 @@ module.exports = { { sourceRoute: '/user/v1/notification/template', type: 'PATCH', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/notification/template', type: 'PATCH', @@ -2289,7 +2289,7 @@ module.exports = { { sourceRoute: '/user/v1/account/search', type: 'POST', - service: "user", + service: 'user', targetRoute: { path: '/user/v1/account/search', type: 'POST', @@ -2300,7 +2300,7 @@ module.exports = { type: 'POST', priority: 'MUST_HAVE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/permissions/create', @@ -2312,7 +2312,7 @@ module.exports = { type: 'POST', priority: 'MUST_HAVE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/permissions/update/:id', @@ -2324,7 +2324,7 @@ module.exports = { type: 'GET', priority: 'MUST_HAVE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/permissions/list', @@ -2335,7 +2335,7 @@ module.exports = { sourceRoute: '/user/v1/permissions/delete/:id', type: 'DELETE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/permissions/delete/:id', @@ -2347,7 +2347,7 @@ module.exports = { type: 'POST', priority: 'MUST_HAVE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/modules/create', @@ -2359,7 +2359,7 @@ module.exports = { type: 'POST', priority: 'MUST_HAVE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/modules/update/:id', @@ -2371,7 +2371,7 @@ module.exports = { type: 'GET', priority: 'MUST_HAVE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/modules/list', @@ -2382,7 +2382,7 @@ module.exports = { sourceRoute: '/user/v1/modules/delete/:id', type: 'DELETE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/modules/delete/:id', @@ -2394,7 +2394,7 @@ module.exports = { type: 'POST', priority: 'MUST_HAVE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/role-permission-mapping/delete/:role_id', @@ -2406,7 +2406,7 @@ module.exports = { type: 'POST', priority: 'MUST_HAVE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/role-permission-mapping/create/:role_id', @@ -2418,7 +2418,7 @@ module.exports = { type: 'POST', priority: 'MUST_HAVE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/role-permission-mapping/list', @@ -2430,7 +2430,7 @@ module.exports = { type: 'POST', priority: 'MUST_HAVE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/organization/addRelatedOrg/:org_id', @@ -2442,7 +2442,7 @@ module.exports = { type: 'POST', priority: 'MUST_HAVE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/organization/removeRelatedOrg/:org_id', @@ -2454,58 +2454,58 @@ module.exports = { type: 'POST', priority: 'MUST_HAVE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/account/changePassword', type: 'POST', - } + }, }, { sourceRoute: '/user/v1/account/validatingEmailIds', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/account/validatingEmailIds', type: 'POST', - functionName: 'validateEmails' - } + functionName: 'validateEmails', + }, }, { sourceRoute: '/user/v1/account/sessions', type: 'GET', priority: 'MUST_HAVE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/account/sessions', type: 'GET', - } + }, }, { sourceRoute: '/user/v1/account/validateUserSession', type: 'POST', priority: 'MUST_HAVE', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/account/validateUserSession', type: 'POST', - } + }, }, { sourceRoute: '/interface/v2/account/create', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v2/account/create', - type: 'POST' + type: 'POST', }, }, @@ -2513,18 +2513,18 @@ module.exports = { sourceRoute: '/user/v1/account/create', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/account/create', - type: 'POST' + type: 'POST', }, }, { sourceRoute: '/user/v1/org-admin/updateUser/:id', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/org-admin/updateUser/:id', @@ -2535,18 +2535,18 @@ module.exports = { sourceRoute: '/user/v1/org-admin/updateUser', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/org-admin/updateUser', - type: 'POST' + type: 'POST', }, }, { sourceRoute: '/user/v1/user/read', type: 'GET', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/user/read', @@ -2557,7 +2557,7 @@ module.exports = { sourceRoute: '/user/v1/user/read/:id', type: 'GET', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/user/read/:id', @@ -2568,18 +2568,18 @@ module.exports = { sourceRoute: '/user/v1/account/searchByEmailIds', type: 'POST', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/account/searchByEmailIds', type: 'POST', - } + }, }, { sourceRoute: '/user/v1/admin/triggerViewRebuild', type: 'GET', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/admin/triggerViewRebuild', @@ -2590,7 +2590,7 @@ module.exports = { sourceRoute: '/user/v1/admin/triggerPeriodicViewRefresh', type: 'GET', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/admin/triggerPeriodicViewRefresh', @@ -2601,7 +2601,7 @@ module.exports = { sourceRoute: '/user/v1/admin/triggerPeriodicViewRefreshInternal', type: 'GET', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/admin/triggerPeriodicViewRefreshInternal', @@ -2612,7 +2612,7 @@ module.exports = { sourceRoute: '/user/v1/admin/triggerViewRebuildInternal', type: 'GET', inSequence: false, - service: "user", + service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/admin/triggerViewRebuildInternal', @@ -2622,7 +2622,7 @@ module.exports = { { sourceRoute: '/scheduler/jobs/create', type: 'POST', - service: "scheduler", + service: 'scheduler', targetRoute: { path: '/scheduler/jobs/create', type: 'POST', @@ -2631,7 +2631,7 @@ module.exports = { { sourceRoute: '/scheduler/jobs/updateDelay', type: 'POST', - service: "scheduler", + service: 'scheduler', targetRoute: { path: '/scheduler/jobs/updateDelay', type: 'POST', @@ -2640,7 +2640,7 @@ module.exports = { { sourceRoute: '/scheduler/jobs/remove', type: 'POST', - service: "scheduler", + service: 'scheduler', targetRoute: { path: '/scheduler/jobs/remove', type: 'POST', @@ -2649,7 +2649,7 @@ module.exports = { { sourceRoute: '/scheduler/jobs/list', type: 'GET', - service: "scheduler", + service: 'scheduler', targetRoute: { path: '/scheduler/jobs/list', type: 'GET', @@ -2658,7 +2658,7 @@ module.exports = { { sourceRoute: '/scheduler/jobs/purge', type: 'POST', - service: "scheduler", + service: 'scheduler', targetRoute: { path: '/scheduler/jobs/purge', type: 'POST', @@ -2667,11 +2667,91 @@ module.exports = { { sourceRoute: '/notification/v1/email/send', type: 'POST', - service: "notification", + service: 'notification', targetRoute: { path: '/notification/v1/email/send', type: 'POST', }, - } + }, + { + sourceRoute: '/mentoring/v1/connections/initiate', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/connections/initiate', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/connections/pending', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/connections/pending', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/connections/accept', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/connections/accept', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/connections/reject', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/connections/reject', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/connections/getInfo', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/connections/getInfo', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/connections/list', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/connections/list', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/profile/getCommunicationToken', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/profile/getCommunicationToken', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/profile/logout', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/profile/logout', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/profile/details', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/profile/details', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/profile/details/:id', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/profile/details/:id', + type: 'GET', + }, + }, ], } From 094f7645ed89349fd2400c7e7b8ade06de64f84c Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Tue, 31 Dec 2024 00:58:49 +0530 Subject: [PATCH 006/105] orchastration issue fix --- elevate-mentoring/constants/routes.js | 52 +++++++++++ elevate-mentoring/controllers/mentoring.js | 93 ++++++++++++++++++- .../controllers/orchestrationController.js | 14 ++- elevate-mentoring/utils/requester.js | 17 ++++ 4 files changed, 172 insertions(+), 4 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 4bc8634a..dc8f1aca 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -867,6 +867,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: true, + service: "mentoring", targetRoute: { service: 'mentoring', path: '/mentoring/v1/profile/create', @@ -879,6 +880,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: true, + service: "mentoring", targetRoute: { service: 'mentoring', path: '/mentoring/v1/profile/update/', @@ -915,6 +917,7 @@ module.exports = { type: 'POST', inSequence: true, orchestrated: true, + service: "mentoring", targetRoute: { path: '/mentoring/v1/role-permission-mapping/list', type: 'POST', @@ -2753,5 +2756,54 @@ module.exports = { type: 'GET', }, }, + { + + sourceRoute: '/interface/v1/mentors/details/:id', + type: 'POST', + inSequence: true, + orchestrated: true, + service: "mentoring", + targetRoute: { + path: '/mentoring/v1/mentors/details/:id', + type: 'POST', + functionName: 'mentorDetails', + }, + }, + { + sourceRoute: '/interface/v1/profile/read', + type: 'GET', + inSequence: true, + orchestrated: true, + service: "mentoring", + targetRoute: { + path: '/mentoring/v1/profile/read', + type: 'GET', + functionName: 'mentoringProfile', + }, + }, + { + sourceRoute: '/interface/v1/mentors/details/:id', + type: 'POST', + inSequence: true, + orchestrated: true, + service: "user", + targetRoute: { + path: '/user/v1/user/read', + type: 'GET', + functionName: 'getUserDetailsFromExternal', + }, + }, + { + sourceRoute: '/interface/v1/profile/read', + type: 'GET', + inSequence: true, + orchestrated: true, + service: "user", + targetRoute: { + path: '/user/v1/user/read', + type: 'GET', + functionName: 'userDetails', + }, + }, ], } diff --git a/elevate-mentoring/controllers/mentoring.js b/elevate-mentoring/controllers/mentoring.js index 4a5606ea..fd77596c 100644 --- a/elevate-mentoring/controllers/mentoring.js +++ b/elevate-mentoring/controllers/mentoring.js @@ -119,6 +119,8 @@ const readUser = async (req, res, selectedConfig) => { 'Content-Type': 'application/json', } + console.log("userIds-----------",userIds); + const requestBody = { userIds } // Pass the request body const accountsListResponse = await requesters.get(req.baseUrl, parameterisedRoute, headers, requestBody) @@ -151,7 +153,92 @@ const validateEmails = async (req, res , selectedConfig) => { return res.status(500).json({ error: 'Internal Server Error' }) } } +const mentorDetails = async (req, res, responses) => { + const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + + const parameterisedRoute = req.params.id ? selectedConfig.targetRoute.path.replace('/:id', `/${req.params.id}`) : selectedConfig.targetRoute.path; + let headers + + if (req.params.id) { + headers = { + 'Content-Type': 'application/json', + 'X-auth-token': req.headers['x-auth-token'], + } + } + + console.log("response ============ headers ",headers); + + let response = await requesters.get(req.baseUrl, parameterisedRoute,headers,{}) + return response + +} + +const mentoringProfile = async (req, res, responses) => { + const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + + const parameterisedRoute = selectedConfig.targetRoute.path; + let headers + + headers = { + 'Content-Type': 'application/json', + 'X-auth-token': req.headers['x-auth-token'], + } + + console.error("------------------mentoringProfile ----------") + + let response = await requesters.get(req.baseUrl, parameterisedRoute,headers,{}) + console.error("------------------response in mentoring profile ----------",response) + return response + +} +const getUserDetailsFromExternal = async (req, res, responses) => { + const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + + let parameterisedRoute = selectedConfig.targetRoute.path; + + if(req.params.id){ + parameterisedRoute = parameterisedRoute+'/'+req.params.id; + } + let headers = { + 'Content-Type': 'application/json', + 'X-auth-token': req.headers['x-auth-token'], + } + + console.log("parameterisedRoute ---------------",parameterisedRoute); + + + let response = await requesters.get(req.baseUrl, parameterisedRoute,headers,{}) + return response + +} + +const userDetails = async (req, res, responses) => { + const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + + const parameterisedRoute = selectedConfig.targetRoute.path; + + console.error("============== cllaing user details") + let headers + if (req.params.id) { + headers = { + 'internal_access_token': req.headers['internal_access_token'], + 'Content-Type': 'application/json', + } + } else { + headers = { + 'Content-Type': 'application/json', + 'X-auth-token': req.headers['x-auth-token'], + } + } + console.log("parameterisedRoute API =========",parameterisedRoute); + console.error(" ----------- parameterisedRoute API =========",parameterisedRoute); + + let response = await requesters.get(req.baseUrl, parameterisedRoute,headers,{}) + console.log(req.baseUrl,"parameterisedRoute API =========",response); + return response + +} mentoringController = { createProfile, @@ -165,7 +252,11 @@ mentoringController = { readOrganization, readUser, accountsList, - validateEmails + validateEmails, + mentorDetails, + mentoringProfile, + userDetails, + getUserDetailsFromExternal } module.exports = mentoringController diff --git a/elevate-mentoring/controllers/orchestrationController.js b/elevate-mentoring/controllers/orchestrationController.js index ce23a1d5..59205e78 100644 --- a/elevate-mentoring/controllers/orchestrationController.js +++ b/elevate-mentoring/controllers/orchestrationController.js @@ -1,13 +1,21 @@ const routesConfig = require('../constants/routes') const mentoringController = require('../controllers/mentoring') const orchestrationHandler = async (req, res, responses) => { - console.log(req.targetPackages, req.inSequence, req.orchestrated, req.sourceRoute, responses) + + console.log(req.service,req.targetPackages, req.inSequence, req.orchestrated, req.sourceRoute, responses) console.log(req.body) - const selectedRouteConfig = routesConfig.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + + const selectedRouteConfig = routesConfig.routes.find((obj) =>{ + if (req.service === obj.service && obj.sourceRoute === req.sourceRoute) { + return obj; + } + } + ) - if(selectedRouteConfig.service){ + if(selectedRouteConfig && selectedRouteConfig.service){ req['baseUrl'] = process.env[`${selectedRouteConfig.service.toUpperCase()}_SERVICE_BASE_URL`] } + // console.error("-------- base url after ",req['baseUrl']); return await mentoringController[selectedRouteConfig.targetRoute.functionName](req, res, responses) } diff --git a/elevate-mentoring/utils/requester.js b/elevate-mentoring/utils/requester.js index de029fe4..2f9d1aff 100644 --- a/elevate-mentoring/utils/requester.js +++ b/elevate-mentoring/utils/requester.js @@ -93,11 +93,28 @@ const patch = async (baseUrl, route, requestBody, headers) => { throw error // Re-throw the error to be caught by the caller } } +const get = (baseUrl, route, headers, requestBody = {}) => { + const url = baseUrl + route + const options = { + headers + }; + return axios + .get(url, options) // Use POST to send body data + .then((response) => response.data) + .catch((error) => { + console.error('Error fetching data:', error) + if (error.response) { + return error.response + } + return error + }) +} const requesters = { passThroughRequester, post, patch, + get } module.exports = requesters From 786308c431761ec11270dfcf785d12340fca1e98 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Wed, 1 Jan 2025 11:49:44 +0530 Subject: [PATCH 007/105] fixing orchestration npm --- elevate-mentoring/controllers/orchestrationController.js | 1 - elevate-mentoring/package.json | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/elevate-mentoring/controllers/orchestrationController.js b/elevate-mentoring/controllers/orchestrationController.js index 59205e78..0a5c44e6 100644 --- a/elevate-mentoring/controllers/orchestrationController.js +++ b/elevate-mentoring/controllers/orchestrationController.js @@ -15,7 +15,6 @@ const orchestrationHandler = async (req, res, responses) => { if(selectedRouteConfig && selectedRouteConfig.service){ req['baseUrl'] = process.env[`${selectedRouteConfig.service.toUpperCase()}_SERVICE_BASE_URL`] } - // console.error("-------- base url after ",req['baseUrl']); return await mentoringController[selectedRouteConfig.targetRoute.functionName](req, res, responses) } diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index d7bb7a31..95028ff4 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.1.934", + "version": "1.2.14", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 7ba03ef11fabbd0053d5446f27a5004b264f41b7 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Wed, 1 Jan 2025 17:44:38 +0530 Subject: [PATCH 008/105] orchastration issue fix --- elevate-mentoring/constants/routes.js | 56 ++++++++++++++++++- elevate-mentoring/controllers/mentoring.js | 24 ++++---- .../controllers/orchestrationController.js | 10 ++-- elevate-mentoring/package.json | 2 +- elevate-mentoring/router/index.js | 11 +++- elevate-mentoring/utils/requester.js | 4 +- sunbird-mentoring/constants/routes.js | 9 +++ .../controllers/orchestrationController.js | 21 +++---- sunbird-mentoring/package.json | 2 +- sunbird-mentoring/utils/requester.js | 44 +++++++-------- 10 files changed, 120 insertions(+), 63 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index dc8f1aca..11a9c8d2 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -1691,13 +1691,13 @@ module.exports = { }, { sourceRoute: '/user/v1/account/list', - type: 'GET', + type: 'POST', inSequence: false, service: 'user', orchestrated: false, targetRoute: { path: '/user/v1/account/list', - type: 'GET', + type: 'POST', functionName: 'accountsList', }, }, @@ -2805,5 +2805,57 @@ module.exports = { functionName: 'userDetails', }, }, + { + + sourceRoute: '/interface/v1/profile/details/:id', + type: 'POST', + inSequence: true, + orchestrated: true, + service: "mentoring", + targetRoute: { + path: '/mentoring/v1/mentors/details/:id', + type: 'POST', + functionName: 'mentorDetails', + }, + }, + { + + sourceRoute: '/interface/v1/profile/details/:id', + type: 'POST', + inSequence: true, + orchestrated: true, + service: "mentoring", + targetRoute: { + path: '/mentoring/v1/mentors/details/:id', + type: 'POST', + functionName: 'mentorDetails', + }, + }, + { + + sourceRoute: '/interface/v1/profile/get/:id', + type: 'POST', + inSequence: true, + orchestrated: true, + service: "mentoring", + targetRoute: { + path: '/mentoring/v1/profile/details/:id', + type: 'POST', + functionName: 'mentorDetails', + }, + }, + { + + sourceRoute: '/interface/v1/profile/get/:id', + type: 'POST', + inSequence: true, + orchestrated: true, + service: "user", + targetRoute: { + path: '/user/v1/user/read', + type: 'POST', + functionName: 'getUserDetailsFromExternal', + }, + } ], } diff --git a/elevate-mentoring/controllers/mentoring.js b/elevate-mentoring/controllers/mentoring.js index fd77596c..35192307 100644 --- a/elevate-mentoring/controllers/mentoring.js +++ b/elevate-mentoring/controllers/mentoring.js @@ -5,14 +5,14 @@ const {convertIdsToString} = require('../utils/integerToStringConverter') const createProfile = async (req, res, responses) => { - const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) req.body.skipValidation = true return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body, { 'X-auth-token': `bearer ${responses.user.result.access_token}`, }) } const updateUser = async (req, res, responses) => { - const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) //const filteredRequestBody = requestParser.transformUpdateUserBody(req.body) console.log(req.baseUrl, selectedConfig.targetRoute.path, req.headers, req.body, 'mentoring request') @@ -20,14 +20,14 @@ const updateUser = async (req, res, responses) => { } const entityTypeRead = async (req, res, responses) => { - const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body, { 'X-auth-token': req.headers['x-auth-token'], }) } const rolePermissions = async (req, res, responses) => { - const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) console.log("selected config",selectedConfig); @@ -41,7 +41,7 @@ const rolePermissions = async (req, res, responses) => { } const createUser = async (req, res, responses) => { - const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body,{ 'device-info': req.headers['device-info'], }) @@ -49,7 +49,7 @@ const createUser = async (req, res, responses) => { const loginUser = async (req, res, responses) => { - const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) let data = await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body,{ @@ -93,8 +93,6 @@ const readUser = async (req, res, selectedConfig) => { let response = await requesters.get(req.baseUrl, parameterisedRoute, headers) - console.log("===================",response); - // Extract only the relevant data response.result = convertIdsToString(response.result) return res.json(response) @@ -119,8 +117,6 @@ const readUser = async (req, res, selectedConfig) => { 'Content-Type': 'application/json', } - console.log("userIds-----------",userIds); - const requestBody = { userIds } // Pass the request body const accountsListResponse = await requesters.get(req.baseUrl, parameterisedRoute, headers, requestBody) @@ -154,7 +150,7 @@ const validateEmails = async (req, res , selectedConfig) => { } } const mentorDetails = async (req, res, responses) => { - const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) const parameterisedRoute = req.params.id ? selectedConfig.targetRoute.path.replace('/:id', `/${req.params.id}`) : selectedConfig.targetRoute.path; let headers @@ -174,7 +170,7 @@ const mentorDetails = async (req, res, responses) => { } const mentoringProfile = async (req, res, responses) => { - const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) const parameterisedRoute = selectedConfig.targetRoute.path; let headers @@ -192,7 +188,7 @@ const mentoringProfile = async (req, res, responses) => { } const getUserDetailsFromExternal = async (req, res, responses) => { - const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) let parameterisedRoute = selectedConfig.targetRoute.path; @@ -213,7 +209,7 @@ const getUserDetailsFromExternal = async (req, res, responses) => { } const userDetails = async (req, res, responses) => { - const selectedConfig = routeConfigs.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) const parameterisedRoute = selectedConfig.targetRoute.path; diff --git a/elevate-mentoring/controllers/orchestrationController.js b/elevate-mentoring/controllers/orchestrationController.js index 0a5c44e6..fa19a997 100644 --- a/elevate-mentoring/controllers/orchestrationController.js +++ b/elevate-mentoring/controllers/orchestrationController.js @@ -5,12 +5,10 @@ const orchestrationHandler = async (req, res, responses) => { console.log(req.service,req.targetPackages, req.inSequence, req.orchestrated, req.sourceRoute, responses) console.log(req.body) - const selectedRouteConfig = routesConfig.routes.find((obj) =>{ - if (req.service === obj.service && obj.sourceRoute === req.sourceRoute) { - return obj; - } - } - ) + const selectedRouteConfig = routesConfig.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) + + + console.log(" selectedRouteConfig ---------- ",selectedRouteConfig); if(selectedRouteConfig && selectedRouteConfig.service){ req['baseUrl'] = process.env[`${selectedRouteConfig.service.toUpperCase()}_SERVICE_BASE_URL`] diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 95028ff4..c616585b 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.14", + "version": "1.2.25", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { diff --git a/elevate-mentoring/router/index.js b/elevate-mentoring/router/index.js index a8b43a85..c2f4bc55 100644 --- a/elevate-mentoring/router/index.js +++ b/elevate-mentoring/router/index.js @@ -1,10 +1,15 @@ const { passThroughRequester } = require('../utils/requester') const { orchestrationHandler } = require('../controllers/orchestrationController') + +const { customHandler } = require('../controllers/customHandler') const packageRouter = async (req, res, responses) => { - const response = req.orchestrated - ? await orchestrationHandler(req, res, responses) - : await passThroughRequester(req, res) + let response + if (req.orchestrated) response = await orchestrationHandler(req, res, responses) + else if (req.requiresCustomHandling) { + response = await customHandler(req, res) + } else response = await passThroughRequester(req, res) return response } + module.exports = packageRouter diff --git a/elevate-mentoring/utils/requester.js b/elevate-mentoring/utils/requester.js index 2f9d1aff..934d3aae 100644 --- a/elevate-mentoring/utils/requester.js +++ b/elevate-mentoring/utils/requester.js @@ -49,6 +49,7 @@ const passThroughRequester = async (req, res) => { }) req.pipe(proxyReq, { end: true }) } catch (err) { + console.log() handleInterfaceError(res, err) } } @@ -96,7 +97,8 @@ const patch = async (baseUrl, route, requestBody, headers) => { const get = (baseUrl, route, headers, requestBody = {}) => { const url = baseUrl + route const options = { - headers + headers, + data: requestBody }; return axios diff --git a/sunbird-mentoring/constants/routes.js b/sunbird-mentoring/constants/routes.js index 5c9a7f0a..6bf2cecd 100644 --- a/sunbird-mentoring/constants/routes.js +++ b/sunbird-mentoring/constants/routes.js @@ -867,6 +867,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: true, + service:"mentoring", targetRoute: { path: '/mentoring/v1/profile/create', type: 'POST', @@ -878,6 +879,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: true, + service:"mentoring", targetRoute: { path: '/mentoring/v1/entity-type/read', type: 'POST', @@ -889,6 +891,7 @@ module.exports = { type: 'POST', inSequence: true, orchestrated: true, + service:"mentoring", targetRoute: { path: '/mentoring/v1/role-permission-mapping/list', type: 'POST', @@ -900,6 +903,7 @@ module.exports = { type: 'POST', inSequence: true, orchestrated: true, + service:"mentoring", targetRoute: { paths: [ { path: '/mentoring/v1/users/create', type: 'POST' }, @@ -1509,6 +1513,7 @@ module.exports = { type: 'POST', inSequence: true, orchestrated: true, + service:"user", targetRoute: { path: '/user/v1/account/create', type: 'POST', @@ -1520,6 +1525,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: true, + service:"user", targetRoute: { path: '/user/v1/entity-type/read', type: 'POST', @@ -1531,6 +1537,7 @@ module.exports = { type: 'POST', inSequence: true, orchestrated: true, + service:"user", targetRoute: { path: '/user/v1/account/login', type: 'POST', @@ -2139,6 +2146,7 @@ module.exports = { type: 'POST', inSequence: true, orchestrated: true, + service:"user", targetRoute: { paths: [ { path: '/private/user/v1/read/:id', type: 'GET' }, @@ -2156,6 +2164,7 @@ module.exports = { type: 'GET', inSequence: true, orchestrated: true, + service:"user", targetRoute: { paths: [ { diff --git a/sunbird-mentoring/controllers/orchestrationController.js b/sunbird-mentoring/controllers/orchestrationController.js index 23e53a0a..fa19a997 100644 --- a/sunbird-mentoring/controllers/orchestrationController.js +++ b/sunbird-mentoring/controllers/orchestrationController.js @@ -1,22 +1,19 @@ const routesConfig = require('../constants/routes') const mentoringController = require('../controllers/mentoring') const orchestrationHandler = async (req, res, responses) => { - console.log(req.targetPackages, req.inSequence, req.orchestrated, req.sourceRoute, responses) + + console.log(req.service,req.targetPackages, req.inSequence, req.orchestrated, req.sourceRoute, responses) console.log(req.body) - const selectedRouteConfig = routesConfig.routes.find((obj) => obj.sourceRoute === req.sourceRoute) - if(selectedRouteConfig.service){ - console.log("selectedRouteConfig.service" ,selectedRouteConfig.service) + const selectedRouteConfig = routesConfig.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) + + + console.log(" selectedRouteConfig ---------- ",selectedRouteConfig); + + if(selectedRouteConfig && selectedRouteConfig.service){ req['baseUrl'] = process.env[`${selectedRouteConfig.service.toUpperCase()}_SERVICE_BASE_URL`] - console.log("orch req['baseUrl']" ,req['baseUrl']) } - - return await mentoringController[selectedRouteConfig.targetRoute.functionName]( - req, - res, - responses, - selectedRouteConfig - ) + return await mentoringController[selectedRouteConfig.targetRoute.functionName](req, res, responses) } const orchestrationController = { diff --git a/sunbird-mentoring/package.json b/sunbird-mentoring/package.json index 761b1595..28e84372 100644 --- a/sunbird-mentoring/package.json +++ b/sunbird-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "sunbird-mentoring", - "version": "3.1.16", + "version": "3.1.17", "description": "Npm package for sunbird-mentoring service integration with Interface service. ", "main": "index.js", "scripts": { diff --git a/sunbird-mentoring/utils/requester.js b/sunbird-mentoring/utils/requester.js index 7f88ec61..58db913f 100644 --- a/sunbird-mentoring/utils/requester.js +++ b/sunbird-mentoring/utils/requester.js @@ -18,9 +18,6 @@ const passThroughRequester = async (req, res) => { const sourceUrl = new URL(req.originalUrl, sourceBaseUrl) const route = routesConfig.routes.find((route) => route.sourceRoute === req.sourceRoute) - - console.log("------------- pass through",route); - if(route.service){ req['baseUrl'] = process.env[`${route.service.toUpperCase()}_SERVICE_BASE_URL`] } @@ -132,27 +129,28 @@ const patch = async (baseUrl, route, requestBody, headers) => { } } -const get = async (baseUrl, route, headers) => { - try { - const url = baseUrl + route - if(process.env.DEBUG_MODE == "true"){ - console.log('__GET REQUEST__') - console.log('REQUEST URL: ', url) - console.log('REQUEST HEADERS: ', headers) - } - return axios - .get(url, { headers }) - .then((response) => response.data) - .catch((error) => { - if (error.response) { - return error.response.data - } - return error - }) - } catch (error) { - console.error(error) - throw error // Re-throw the error to be caught by the caller +const get = (baseUrl, route, headers, requestBody = {}) => { + const url = baseUrl + route + if(process.env.DEBUG_MODE == "true"){ + console.log('__GET REQUEST__') + console.log('REQUEST URL: ', url) + console.log('REQUEST HEADERS: ', headers) } + const options = { + headers, + data: requestBody + }; + + return axios + .get(url, options) // Use POST to send body data + .then((response) => response.data) + .catch((error) => { + console.error('Error fetching data:', error) + if (error.response) { + return error.response + } + return error + }) } const requesters = { From cc72dc003e360abd150e692cba31bb4ee249da98 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Fri, 10 Jan 2025 18:57:40 +0530 Subject: [PATCH 009/105] routes for mentor details --- sunbird-mentoring/constants/routes.js | 16 +++- sunbird-mentoring/controllers/mentoring.js | 90 +++++++++++++++++++++- sunbird-mentoring/package.json | 2 +- 3 files changed, 105 insertions(+), 3 deletions(-) diff --git a/sunbird-mentoring/constants/routes.js b/sunbird-mentoring/constants/routes.js index 6bf2cecd..9886e087 100644 --- a/sunbird-mentoring/constants/routes.js +++ b/sunbird-mentoring/constants/routes.js @@ -2141,6 +2141,20 @@ module.exports = { type: 'POST', }, }, + { + sourceRoute: '/interface/v1/mentors/details/:id', + type: 'GET', + priority: 'MUST_HAVE', + inSequence: false, + orchestrated: false, + service:"mentoring", + targetRoute: { + path: '/mentoring/v1/mentors/details/:id', + type: 'GET', + functionName:'mentorDetails' + + }, + }, { sourceRoute: '/interface/v1/mentors/details/:id', type: 'POST', @@ -2156,7 +2170,7 @@ module.exports = { type: 'GET', }, ], - functionName: 'readUserById', + functionName: 'readUserOrchastration', }, }, { diff --git a/sunbird-mentoring/controllers/mentoring.js b/sunbird-mentoring/controllers/mentoring.js index 9f15791c..325c758a 100644 --- a/sunbird-mentoring/controllers/mentoring.js +++ b/sunbird-mentoring/controllers/mentoring.js @@ -404,6 +404,92 @@ const listOrganisation = async (req, res, selectedConfig) => { return res.status(500).json({ error: 'Internal Server Error' }) } } +const mentorDetails = async (req, res, responses) => { + const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) + + const parameterisedRoute = req.params.id ? selectedConfig.targetRoute.path.replace('/:id', `/${req.params.id}`) : selectedConfig.targetRoute.path; + let headers + + if (req.params.id) { + headers = { + 'Content-Type': 'application/json', + // 'X-auth-token': req.headers['x-authenticated-user-token'], + 'x-authenticated-user-token': req.headers['x-authenticated-user-token'], + } + } + + console.log("response ============ headers ",headers); + + let response = await requesters.get(req.baseUrl, parameterisedRoute,headers,{}) + return response + +} + + +const readUserOrchastration = async (req, res, response) => { + + const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) + + const userId = req.params.id + try { + console.log('read by readUserOrchastration'); + const targetRoute1 = selectedConfig.targetRoute.paths[0].path + const targetRoute2 = selectedConfig.targetRoute.paths[1] + + if(selectedConfig.service){ + req['baseUrl'] = process.env[`${selectedConfig.service.toUpperCase()}_SERVICE_BASE_URL`] + } + const userResponse = await requesters.get(req.baseUrl, targetRoute1, req.headers, { + id: userId, + }) + + if(process.env.DEBUG_MODE == "true"){ + console.log("READ API response status:",userResponse.params.status); + console.log(" user read API resp == ",JSON.stringify(userResponse)); + console.log(" API Response",JSON.stringify(userResponse)); + } + if (userResponse.params.status == 'FAILED') { + + if(process.env.DEBUG_MODE == "true"){ + console.log("userResponse.params.status ",userResponse.params.status); + console.log("userResponse.params.status ",JSON.stringify(userResponse)); + } + return res.send(userResponse) + } + const enrollmentResponse = await requesters.get(targetRoute2.baseUrl, targetRoute2.path, req.headers, { + id: userId, + }) + + if(process.env.DEBUG_MODE == "true"){ + console.log('CALLING COMPETENCY ') + } + + let competencyIds = [] + if(enrollmentResponse.result && enrollmentResponse.result.courses){ + competencyIds = getCompetencyIds(enrollmentResponse.result.courses || []) + + } + + if(process.env.DEBUG_MODE == "true"){ + console.log('competencyIds ==',competencyIds) + console.log("userResponse profile response ",userResponse); + } + const responseData = processUserResponse(userResponse) + responseData.result.competency = competencyIds + + if(process.env.DEBUG_MODE == "true"){ + console.log('RESPONSE DATA: ', JSON.stringify(responseData, null, 3)) + } + // responseData.responseCode = 'OK' + return (responseData) + } catch (error) { + if(process.env.DEBUG_MODE == "true"){ + console.error('Error fetching user details:', error) + } + return ({ error: 'Internal Server Error' }) + } +} + @@ -421,7 +507,9 @@ mentoringController = { readUserById, readUserWithToken, accountList, - listOrganisation + listOrganisation, + mentorDetails, + readUserOrchastration } module.exports = mentoringController diff --git a/sunbird-mentoring/package.json b/sunbird-mentoring/package.json index 28e84372..b1c3f5c9 100644 --- a/sunbird-mentoring/package.json +++ b/sunbird-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "sunbird-mentoring", - "version": "3.1.17", + "version": "3.1.24", "description": "Npm package for sunbird-mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 5f2d3257ce6e17a0ff33c6f0f22489c304a02a05 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Mon, 20 Jan 2025 17:29:22 +0530 Subject: [PATCH 010/105] ready user function fix --- sunbird-mentoring/controllers/mentoring.js | 22 +++++++++++--- .../helpers/dependencyManager.js | 2 ++ sunbird-mentoring/index.js | 30 ++++++++++++++++++- sunbird-mentoring/package.json | 2 +- 4 files changed, 50 insertions(+), 6 deletions(-) diff --git a/sunbird-mentoring/controllers/mentoring.js b/sunbird-mentoring/controllers/mentoring.js index 325c758a..2b7d2548 100644 --- a/sunbird-mentoring/controllers/mentoring.js +++ b/sunbird-mentoring/controllers/mentoring.js @@ -186,9 +186,14 @@ const readUserById = async (req, res, selectedConfig) => { const userId = req.params.id try { console.log('read by userid'); - const targetRoute1 = selectedConfig.targetRoute.paths[0].path + let targetRoute1 = selectedConfig.targetRoute.paths[0].path const targetRoute2 = selectedConfig.targetRoute.paths[1] + + targetRoute1 = req.params.id ? targetRoute1.replace('/:id', `/${req.params.id}`) : targetRoute1; + + console.log("-------------- targetRoute1 -------",targetRoute1); + if(selectedConfig.service){ req['baseUrl'] = process.env[`${selectedConfig.service.toUpperCase()}_SERVICE_BASE_URL`] } @@ -228,6 +233,8 @@ const readUserById = async (req, res, selectedConfig) => { console.log("userResponse profile response ",userResponse); } const responseData = processUserResponse(userResponse) + + console.log("responseDataresponseDataresponseDataresponseData responseData -------",responseData); responseData.result.competency = competencyIds if(process.env.DEBUG_MODE == "true"){ @@ -247,7 +254,7 @@ const readUserWithToken = async (req, res, selectedConfig) => { try { if(process.env.DEBUG_MODE == "true"){ - console.log("================== readUserWithToken =======") + console.log("================== readUserWithToken =======") } const targetRoute1 = selectedConfig.targetRoute.paths[0].path const targetRoute2 = selectedConfig.targetRoute.paths[1] @@ -265,7 +272,10 @@ const readUserWithToken = async (req, res, selectedConfig) => { req['baseUrl'] = process.env[`${selectedConfig.service.toUpperCase()}_SERVICE_BASE_URL`] } + console.log("----- req - header",req.headers['x-auth-token']); + console.log("req.baseUrl of" ,targetRoute1.path) + console.log("targetRoute1.pathtargetRoute1.pathtargetRoute1.path ========= " ,targetRoute1.path) const userResponse = await requesters.get(req.baseUrl,targetRoute1.path, req.headers, { id: userId, }) @@ -432,10 +442,14 @@ const readUserOrchastration = async (req, res, response) => { const userId = req.params.id try { - console.log('read by readUserOrchastration'); - const targetRoute1 = selectedConfig.targetRoute.paths[0].path + // console.log('read by readUserOrchastration'); + let targetRoute1 = selectedConfig.targetRoute.paths[0].path const targetRoute2 = selectedConfig.targetRoute.paths[1] + + targetRoute1 = req.params.id ? targetRoute1.replace('/:id', `/${req.params.id}`) : targetRoute1; + + if(selectedConfig.service){ req['baseUrl'] = process.env[`${selectedConfig.service.toUpperCase()}_SERVICE_BASE_URL`] } diff --git a/sunbird-mentoring/helpers/dependencyManager.js b/sunbird-mentoring/helpers/dependencyManager.js index 475476dc..baf29266 100644 --- a/sunbird-mentoring/helpers/dependencyManager.js +++ b/sunbird-mentoring/helpers/dependencyManager.js @@ -1,7 +1,9 @@ const kafkaManager = require('./kafkaManager') +const kafkaUserManager = require('./userKafkaManager') const dependencyManager = (dependencyMap, environmentVariables) =>{ try{ + kafkaUserManager(dependencyMap.get('kafka'),environmentVariables) kafkaManager(dependencyMap.get('kafka'),environmentVariables) }catch(error){ console.log(error) diff --git a/sunbird-mentoring/index.js b/sunbird-mentoring/index.js index 07cd2a87..1aac3916 100644 --- a/sunbird-mentoring/index.js +++ b/sunbird-mentoring/index.js @@ -92,7 +92,35 @@ const requiredEnvs = { SUNBIRD_AUTHORIZATION_TOKEN : { message: `[${kafkaPackageName}] Required authorization token with bearer`, optional: false, - } + }, + [`SUNBIRD_USER_KAFKA_CLIENT_ID`]: { + message: `[SUNBIRD_USER_KAFKA_CLIENT_ID] Required Kafka Brokers Hosts`, + optional: false, + }, + [`SUNBIRD_USER_KAFKA_BROKERS`]: { + message: `[SUNBIRD_USER_KAFKA_BROKERS] Required Kafka Brokers Hosts`, + optional: false, + }, + [`SUNBIRD_USER_KAFKA_GROUP_ID`]: { + message: `[SUNBIRD_USER_KAFKA_GROUP_ID] Required Kafka Group ID`, + optional: false, + }, + [`SUNBIRD_USER_USER_UPDATE_KAFKA_TOPIC`]: { + message: `[SUNBIRD_USER_USER_UPDATE_KAFKA_TOPIC] Required Kafka Topics`, + optional: false, + }, + MENTORING_SERVICE_BASE_URL: { + message: `[MENTORING_SERVICE_BASE_URL] Required Base URL for the Mentoring Service`, + optional: false, + }, + MENTORING_SERVICE_USER_UPDATE_ROUTE: { + message: `[MENTORING_SERVICE_USER_UPDATE_ROUTE] Required Route for User Update in the Mentoring Service`, + optional: false, + }, + MENTORING_INTERNAL_ACCESS_TOKEN: { + message: `[MENTORING_INTERNAL_ACCESS_TOKEN] Required Internal Access Token of the Mentoring Service`, + optional: false, + }, } diff --git a/sunbird-mentoring/package.json b/sunbird-mentoring/package.json index b1c3f5c9..d78d260e 100644 --- a/sunbird-mentoring/package.json +++ b/sunbird-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "sunbird-mentoring", - "version": "3.1.24", + "version": "3.1.29", "description": "Npm package for sunbird-mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 5108b7b19156333458a4b88b150273ae91aaddc8 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Thu, 23 Jan 2025 13:29:56 +0530 Subject: [PATCH 011/105] sunbird package fix --- sunbird-mentoring/helpers/userKafkaManager.js | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 sunbird-mentoring/helpers/userKafkaManager.js diff --git a/sunbird-mentoring/helpers/userKafkaManager.js b/sunbird-mentoring/helpers/userKafkaManager.js new file mode 100644 index 00000000..50e3cc83 --- /dev/null +++ b/sunbird-mentoring/helpers/userKafkaManager.js @@ -0,0 +1,45 @@ +const { post } = require('../utils/requester') + +const kafkaManager = async (kafkaPackage, environmentVariables) => { + try { + const { ElevateKafka } = kafkaPackage + + const kafka = new ElevateKafka( + environmentVariables.SUNBIRD_USER_KAFKA_BROKERS, + environmentVariables.SUNBIRD_USER_KAFKA_BROKERS, + { + packageName: 'sunbird-user', + } + ) + + const topics = [environmentVariables.SUNBIRD_USER_USER_UPDATE_KAFKA_TOPIC] + const consumer = await kafka.createConsumer(environmentVariables.SUNBIRD_USER_KAFKA_GROUP_ID, topics) + await kafka.runConsumer(consumer, async (topic, message) => { + if (topic == environmentVariables.SUNBIRD_USER_USER_UPDATE_KAFKA_TOPIC) { + + if(process.env.DEBUG_MODE == "true"){ + console.log(" user kafka -------------------- message",message.value); + } + + let body = (JSON.parse(message.value)); + if(process.env.DEBUG_MODE == "true"){ + console.log(" user kafka -------------------- body ",body); + } + + post( + environmentVariables.MENTORING_SERVICE_BASE_URL, + environmentVariables.MENTORING_SERVICE_USER_UPDATE_ROUTE, + JSON.parse(message.value), + { + INTERNAL_ACCESS_TOKEN: environmentVariables.MENTORING_INTERNAL_ACCESS_TOKEN, + } + ) + } + }) + } catch (error) { + console.log(error) + throw error + } +} + +module.exports = kafkaManager From c28a10ce5fb7a5a8db42dbc0d82fc05471bccb5f Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Mon, 17 Feb 2025 15:35:30 +0530 Subject: [PATCH 012/105] sunbird package changes --- sunbird-mentoring/constants/routes.js | 194 +++++++++++++++++++++++--- sunbird-mentoring/package.json | 2 +- 2 files changed, 177 insertions(+), 19 deletions(-) diff --git a/sunbird-mentoring/constants/routes.js b/sunbird-mentoring/constants/routes.js index 9886e087..95f54f19 100644 --- a/sunbird-mentoring/constants/routes.js +++ b/sunbird-mentoring/constants/routes.js @@ -2155,24 +2155,6 @@ module.exports = { }, }, - { - sourceRoute: '/interface/v1/mentors/details/:id', - type: 'POST', - inSequence: true, - orchestrated: true, - service:"user", - targetRoute: { - paths: [ - { path: '/private/user/v1/read/:id', type: 'GET' }, - { - baseUrl: 'http://lms-service:9000', - path: '/private/v3/user/courses/list/:id', - type: 'GET', - }, - ], - functionName: 'readUserOrchastration', - }, - }, { sourceRoute: '/interface/v1/profile/read', type: 'GET', @@ -2196,5 +2178,181 @@ module.exports = { functionName: 'readUserWithToken' }, }, + { + sourceRoute: '/mentoring/v1/reports/reportData', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/reports/reportData ', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/reports/create', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/reports/create', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/reports/read', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/reports/read', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/reports/update', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/reports/update', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/reports/delete', + type: 'DELETE', + targetRoute: { + path: '/mentoring/v1/reports/delete', + type: 'DELETE', + }, + }, + { + sourceRoute: '/mentoring/v1/report-type/create', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/report-type/create', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/report-type/read', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/report-type/read', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/report-type/update', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/report-type/update', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/report-type/delete', + type: 'DELETE', + targetRoute: { + path: '/mentoring/v1/report-type/delete', + type: 'DELETE', + }, + }, + { + sourceRoute: '/mentoring/v1/report-mapping/create', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/report-mapping/create', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/report-mapping/read', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/report-mapping/read', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/report-mapping/update', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/report-mapping/update', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/report-mapping/delete', + type: 'DELETE', + targetRoute: { + path: '/mentoring/v1/report-mapping/delete', + type: 'DELETE', + }, + }, + { + sourceRoute: '/mentoring/v1/report-queries/create', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/report-queries/create', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/report-queries/read', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/report-queries/read', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/report-queries/update', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/report-queries/update', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/report-queries/delete', + type: 'DELETE', + targetRoute: { + path: '/mentoring/v1/report-queries/delete', + type: 'DELETE', + }, + }, + { + sourceRoute: '/mentoring/v1/role-extension/create', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/role-extension/create', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/role-extension/read', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/role-extension/read', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/role-extension/update', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/role-extension/update', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/role-extensions/delete', + type: 'DELETE', + targetRoute: { + path: '/mentoring/v1/role-extension/delete', + type: 'DELETE', + }, + }, + { + sourceRoute: '/mentoring/v1/reports/filterList', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/reports/filterList ', + type: 'GET', + }, + } ], } diff --git a/sunbird-mentoring/package.json b/sunbird-mentoring/package.json index d78d260e..5978afd5 100644 --- a/sunbird-mentoring/package.json +++ b/sunbird-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "sunbird-mentoring", - "version": "3.1.29", + "version": "3.1.32", "description": "Npm package for sunbird-mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From a1ecf0088a55e86b426e24a5c5f1a3a36f0898ac Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Mon, 17 Feb 2025 15:38:06 +0530 Subject: [PATCH 013/105] adding custom addler --- elevate-mentoring/controllers/customHandler.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 elevate-mentoring/controllers/customHandler.js diff --git a/elevate-mentoring/controllers/customHandler.js b/elevate-mentoring/controllers/customHandler.js new file mode 100644 index 00000000..441b378a --- /dev/null +++ b/elevate-mentoring/controllers/customHandler.js @@ -0,0 +1,16 @@ +const routesConfig = require('../constants/routes') +const mentorController = require('./mentoring') + +const customHandler = async (req, res) => { + const selectedRouteConfig = routesConfig.routes.find((obj) => obj.sourceRoute === req.sourceRoute) + + if(selectedRouteConfig && selectedRouteConfig.service){ + req['baseUrl'] = process.env[`${selectedRouteConfig.service.toUpperCase()}_SERVICE_BASE_URL`] + } + return await mentorController[selectedRouteConfig.targetRoute.functionName](req, res, selectedRouteConfig) +} + +const customHandlerController = { + customHandler, +} +module.exports = customHandlerController \ No newline at end of file From 4e4b7ee2641173512b26d211aa8cddb2eed93080 Mon Sep 17 00:00:00 2001 From: nevil Date: Mon, 17 Feb 2025 15:42:29 +0530 Subject: [PATCH 014/105] added: report apis --- elevate-mentoring/constants/routes.js | 199 +++++++++++++++++++++++--- 1 file changed, 181 insertions(+), 18 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 11a9c8d2..7d8a0d83 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -867,7 +867,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: true, - service: "mentoring", + service: 'mentoring', targetRoute: { service: 'mentoring', path: '/mentoring/v1/profile/create', @@ -880,7 +880,7 @@ module.exports = { type: 'POST', inSequence: false, orchestrated: true, - service: "mentoring", + service: 'mentoring', targetRoute: { service: 'mentoring', path: '/mentoring/v1/profile/update/', @@ -917,7 +917,7 @@ module.exports = { type: 'POST', inSequence: true, orchestrated: true, - service: "mentoring", + service: 'mentoring', targetRoute: { path: '/mentoring/v1/role-permission-mapping/list', type: 'POST', @@ -2757,12 +2757,11 @@ module.exports = { }, }, { - sourceRoute: '/interface/v1/mentors/details/:id', type: 'POST', inSequence: true, orchestrated: true, - service: "mentoring", + service: 'mentoring', targetRoute: { path: '/mentoring/v1/mentors/details/:id', type: 'POST', @@ -2774,7 +2773,7 @@ module.exports = { type: 'GET', inSequence: true, orchestrated: true, - service: "mentoring", + service: 'mentoring', targetRoute: { path: '/mentoring/v1/profile/read', type: 'GET', @@ -2786,11 +2785,11 @@ module.exports = { type: 'POST', inSequence: true, orchestrated: true, - service: "user", + service: 'user', targetRoute: { path: '/user/v1/user/read', type: 'GET', - functionName: 'getUserDetailsFromExternal', + functionName: 'getUserDetailsFromExternal', }, }, { @@ -2798,7 +2797,7 @@ module.exports = { type: 'GET', inSequence: true, orchestrated: true, - service: "user", + service: 'user', targetRoute: { path: '/user/v1/user/read', type: 'GET', @@ -2806,12 +2805,11 @@ module.exports = { }, }, { - sourceRoute: '/interface/v1/profile/details/:id', type: 'POST', inSequence: true, orchestrated: true, - service: "mentoring", + service: 'mentoring', targetRoute: { path: '/mentoring/v1/mentors/details/:id', type: 'POST', @@ -2819,12 +2817,11 @@ module.exports = { }, }, { - sourceRoute: '/interface/v1/profile/details/:id', type: 'POST', inSequence: true, orchestrated: true, - service: "mentoring", + service: 'mentoring', targetRoute: { path: '/mentoring/v1/mentors/details/:id', type: 'POST', @@ -2832,12 +2829,11 @@ module.exports = { }, }, { - sourceRoute: '/interface/v1/profile/get/:id', type: 'POST', inSequence: true, orchestrated: true, - service: "mentoring", + service: 'mentoring', targetRoute: { path: '/mentoring/v1/profile/details/:id', type: 'POST', @@ -2845,17 +2841,184 @@ module.exports = { }, }, { - sourceRoute: '/interface/v1/profile/get/:id', type: 'POST', inSequence: true, orchestrated: true, - service: "user", + service: 'user', targetRoute: { path: '/user/v1/user/read', type: 'POST', functionName: 'getUserDetailsFromExternal', }, - } + }, + { + sourceRoute: '/mentoring/v1/reports/reportData', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/reports/reportData ', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/reports/create', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/reports/create', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/reports/read', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/reports/read', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/reports/update', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/reports/update', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/reports/delete', + type: 'DELETE', + targetRoute: { + path: '/mentoring/v1/reports/delete', + type: 'DELETE', + }, + }, + { + sourceRoute: '/mentoring/v1/report-type/create', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/report-type/create', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/report-type/read', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/report-type/read', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/report-type/update', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/report-type/update', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/report-type/delete', + type: 'DELETE', + targetRoute: { + path: '/mentoring/v1/report-type/delete', + type: 'DELETE', + }, + }, + { + sourceRoute: '/mentoring/v1/report-mapping/create', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/report-mapping/create', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/report-mapping/read', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/report-mapping/read', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/report-mapping/update', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/report-mapping/update', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/report-mapping/delete', + type: 'DELETE', + targetRoute: { + path: '/mentoring/v1/report-mapping/delete', + type: 'DELETE', + }, + }, + { + sourceRoute: '/mentoring/v1/report-queries/create', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/report-queries/create', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/report-queries/read', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/report-queries/read', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/report-queries/update', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/report-queries/update', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/report-queries/delete', + type: 'DELETE', + targetRoute: { + path: '/mentoring/v1/report-queries/delete', + type: 'DELETE', + }, + }, + { + sourceRoute: '/mentoring/v1/role-extension/create', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/role-extension/create', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/role-extension/read', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/role-extension/read', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/role-extension/update', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/role-extension/update', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/role-extensions/delete', + type: 'DELETE', + targetRoute: { + path: '/mentoring/v1/role-extension/delete', + type: 'DELETE', + }, + }, ], } From 27b452603539470c1112cc152c306163ace7c064 Mon Sep 17 00:00:00 2001 From: nevil Date: Mon, 17 Feb 2025 17:22:23 +0530 Subject: [PATCH 015/105] added: reports filterList api --- elevate-mentoring/constants/routes.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 7d8a0d83..3ad5f19c 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -2892,6 +2892,14 @@ module.exports = { type: 'DELETE', }, }, + { + sourceRoute: '/mentoring/v1/reports/filterList', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/reports/filterList ', + type: 'GET', + }, + }, { sourceRoute: '/mentoring/v1/report-type/create', type: 'POST', From 772865c0a3780dd12edf1560e0b08f50ca3a7356 Mon Sep 17 00:00:00 2001 From: Nevil Date: Tue, 8 Apr 2025 15:00:30 +0530 Subject: [PATCH 016/105] added: new api --- elevate-mentoring/constants/routes.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 3ad5f19c..1b38a650 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -2724,6 +2724,14 @@ module.exports = { type: 'GET', }, }, + { + sourceRoute: '/mentoring/v1/profile/externalIdMapping', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/profile/externalIdMapping', + type: 'POST', + }, + }, { sourceRoute: '/mentoring/v1/profile/getCommunicationToken', type: 'GET', From f9691739b0440fedf5507f3a2b2acdcfd5a38e26 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Tue, 8 Apr 2025 15:09:11 +0530 Subject: [PATCH 017/105] sunbird package changes for performance change --- sunbird-mentoring/controllers/mentoring.js | 43 +++++++++++++++------- 1 file changed, 29 insertions(+), 14 deletions(-) diff --git a/sunbird-mentoring/controllers/mentoring.js b/sunbird-mentoring/controllers/mentoring.js index 2b7d2548..af5c90c0 100644 --- a/sunbird-mentoring/controllers/mentoring.js +++ b/sunbird-mentoring/controllers/mentoring.js @@ -40,25 +40,40 @@ const profileRead = async (req, res, selectedConfig) => { req['baseUrl'] = process.env[`${selectedConfig.service.toUpperCase()}_SERVICE_BASE_URL`] } - const userCreateResponse = await requesters.post(req.baseUrl, targetRoute1, {}, req.headers) - + const mentoringResponse = await requesters.get(req.baseUrl, targetRoute2, { + 'x-authenticated-user-token': req.headers['x-authenticated-user-token'], + }) if(process.env.DEBUG_MODE == "true"){ - - console.log("userCreateResponse api respo",userCreateResponse); - console.log("profileRead create json",JSON.stringify(userCreateResponse)); + + console.log("mentoringResponse api respo",mentoringResponse); + console.log("mentoringResponse read json",JSON.stringify(mentoringResponse)); } - if (userCreateResponse.responseCode == 'OK') { - const mentoringResponse = await requesters.get(req.baseUrl, targetRoute2, { - 'x-authenticated-user-token': req.headers['x-authenticated-user-token'], - }) + if(mentoringResponse && mentoringResponse.result['id']){ + + mentoringResponse.result['id'] = mentoringResponse.result?.user_id; res.json(mentoringResponse) + } else { - if(process.env.DEBUG_MODE == "true"){ - console.log("profileRead error create",JSON.stringify(userCreateResponse)); - } - res.json(userCreateResponse) - + const userCreateResponse = await requesters.post(req.baseUrl, targetRoute1, {}, req.headers) + if(process.env.DEBUG_MODE == "true"){ + + console.log("userCreateResponse api respo",userCreateResponse); + console.log("profileRead create json",JSON.stringify(userCreateResponse)); + } + if (userCreateResponse.responseCode == 'OK') { + let profleResponse = await requesters.get(req.baseUrl, targetRoute2, { + 'x-authenticated-user-token': req.headers['x-authenticated-user-token'], + }) + profleResponse.result['id'] = userCreateResponse.result?.user_id; + res.json(profleResponse) + } else { + + if(process.env.DEBUG_MODE == "true"){ + console.log("profileRead error create",JSON.stringify(userCreateResponse)); + } + res.json(userCreateResponse) + } } } catch (error) { From 54ef0c7853b65a84c77751f10ad9aa8ecd5ccd56 Mon Sep 17 00:00:00 2001 From: sumanvpacewisdom Date: Tue, 29 Apr 2025 12:27:28 +0530 Subject: [PATCH 018/105] Mentee intiative api's --- elevate-mentoring/constants/routes.js | 48 ++++++++++++++++++++++++ elevate-mentoring/package-lock.json | 54 ++++++++++++++++++++++++++- 2 files changed, 100 insertions(+), 2 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 1b38a650..1760d28c 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3036,5 +3036,53 @@ module.exports = { type: 'DELETE', }, }, + { + sourceRoute: '/mentoring/v1/requestSessions/create', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/requestSessions/', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/requestSessions/list', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/requestSessions/list', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/requestSessions/getDetails', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/requestSessions/getDetails', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/requestSessions/userAvailability', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/requestSessions/userAvailability', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/requestSessions/accept', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/requestSessions/accept', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/requestSessions/reject', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/requestSessions/reject', + type: 'POST', + }, + } ], } diff --git a/elevate-mentoring/package-lock.json b/elevate-mentoring/package-lock.json index 12d56c81..556d4be0 100644 --- a/elevate-mentoring/package-lock.json +++ b/elevate-mentoring/package-lock.json @@ -1,16 +1,18 @@ { "name": "elevate-mentoring", - "version": "1.0.13", + "version": "1.1.95257", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "elevate-mentoring", - "version": "1.0.13", + "version": "1.1.95257", "license": "ISC", "dependencies": { "axios": "^1.4.0", "express": "^4.18.2", + "lodash": "^4.17.21", + "node-fetch": "^2.7.0", "path-to-regexp": "^6.2.1" } }, @@ -393,6 +395,12 @@ "node": ">= 0.10" } }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "license": "MIT" + }, "node_modules/media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -457,6 +465,26 @@ "node": ">= 0.6" } }, + "node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "license": "MIT", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, "node_modules/object-inspect": { "version": "1.12.3", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", @@ -642,6 +670,12 @@ "node": ">=0.6" } }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "license": "MIT" + }, "node_modules/type-is": { "version": "1.6.18", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", @@ -677,6 +711,22 @@ "engines": { "node": ">= 0.8" } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "license": "BSD-2-Clause" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "license": "MIT", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } } } } From 46796ff64ce7cbfac4bc952eac7c35c23d829e56 Mon Sep 17 00:00:00 2001 From: sumanvpacewisdom Date: Tue, 29 Apr 2025 12:43:58 +0530 Subject: [PATCH 019/105] mentee iniate api's --- elevate-mentoring/constants/routes.js | 48 +++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 1760d28c..ad150ee6 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3076,6 +3076,54 @@ module.exports = { type: 'POST', }, }, + { + sourceRoute: '/mentoring/v1/requestSessions/reject', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/requestSessions/reject', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/requestSessions/create', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/requestSessions/', + type: 'POST', + }, + }, + { + sourceRoute: '/mentoring/v1/requestSessions/list', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/requestSessions/list', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/requestSessions/getDetails', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/requestSessions/getDetails', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/requestSessions/userAvailability', + type: 'GET', + targetRoute: { + path: '/mentoring/v1/requestSessions/userAvailability', + type: 'GET', + }, + }, + { + sourceRoute: '/mentoring/v1/requestSessions/accept', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/requestSessions/accept', + type: 'POST', + }, + }, { sourceRoute: '/mentoring/v1/requestSessions/reject', type: 'POST', From 1389cad6d8b7032c7db0e86d169cf81c30d2cf14 Mon Sep 17 00:00:00 2001 From: sumanvpacewisdom Date: Tue, 29 Apr 2025 16:57:43 +0530 Subject: [PATCH 020/105] mentee api issue --- elevate-mentoring/constants/routes.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index ad150ee6..8d71b3bf 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3088,7 +3088,7 @@ module.exports = { sourceRoute: '/mentoring/v1/requestSessions/create', type: 'POST', targetRoute: { - path: '/mentoring/v1/requestSessions/', + path: '/mentoring/v1/requestSessions/create', type: 'POST', }, }, From 4c1870e836480db879717c28a44e88ecf8b0d639 Mon Sep 17 00:00:00 2001 From: sumanvpacewisdom Date: Tue, 29 Apr 2025 17:21:19 +0530 Subject: [PATCH 021/105] crreate api issue request session --- elevate-mentoring/constants/routes.js | 48 --------------------------- 1 file changed, 48 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 8d71b3bf..05ac86ee 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3036,54 +3036,6 @@ module.exports = { type: 'DELETE', }, }, - { - sourceRoute: '/mentoring/v1/requestSessions/create', - type: 'POST', - targetRoute: { - path: '/mentoring/v1/requestSessions/', - type: 'POST', - }, - }, - { - sourceRoute: '/mentoring/v1/requestSessions/list', - type: 'GET', - targetRoute: { - path: '/mentoring/v1/requestSessions/list', - type: 'GET', - }, - }, - { - sourceRoute: '/mentoring/v1/requestSessions/getDetails', - type: 'GET', - targetRoute: { - path: '/mentoring/v1/requestSessions/getDetails', - type: 'GET', - }, - }, - { - sourceRoute: '/mentoring/v1/requestSessions/userAvailability', - type: 'GET', - targetRoute: { - path: '/mentoring/v1/requestSessions/userAvailability', - type: 'GET', - }, - }, - { - sourceRoute: '/mentoring/v1/requestSessions/accept', - type: 'POST', - targetRoute: { - path: '/mentoring/v1/requestSessions/accept', - type: 'POST', - }, - }, - { - sourceRoute: '/mentoring/v1/requestSessions/reject', - type: 'POST', - targetRoute: { - path: '/mentoring/v1/requestSessions/reject', - type: 'POST', - }, - }, { sourceRoute: '/mentoring/v1/requestSessions/create', type: 'POST', From d7e5f8ce4fb90da13ee0c3754da2ba7bc41cad67 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Wed, 30 Apr 2025 16:36:20 +0530 Subject: [PATCH 022/105] theme api added --- elevate-mentoring/constants/routes.js | 16 ++++++++++++++++ elevate-mentoring/package.json | 2 +- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 05ac86ee..4b594d22 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3083,6 +3083,22 @@ module.exports = { path: '/mentoring/v1/requestSessions/reject', type: 'POST', }, + }, + { + "sourceRoute": "/mentoring/v1/org-admin/themeDetails", + "type": "GET", + targetRoute: { + path: '/mentoring/v1/org-admin/themeDetails', + type: 'GET' + } + }, + { + "sourceRoute": "/mentoring/v1/org-admin/updateTheme", + "type": "POST", + targetRoute: { + path: '/mentoring/v1/org-admin/updateTheme', + type: 'POST' + } } ], } diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index c616585b..d7bcd7f2 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.25", + "version": "1.2.33", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 9f802839f7145dc9ba25f1ba8e6baf9cc6fbfa9f Mon Sep 17 00:00:00 2001 From: Nevil Date: Fri, 9 May 2025 13:26:20 +0530 Subject: [PATCH 023/105] added: branding API --- elevate-mentoring/constants/routes.js | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 4b594d22..c6c0f129 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3090,7 +3090,7 @@ module.exports = { targetRoute: { path: '/mentoring/v1/org-admin/themeDetails', type: 'GET' - } + } }, { "sourceRoute": "/mentoring/v1/org-admin/updateTheme", @@ -3099,6 +3099,18 @@ module.exports = { path: '/mentoring/v1/org-admin/updateTheme', type: 'POST' } - } + }, + { + sourceRoute: '/user/v1/public/branding', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/public/branding', + type: 'GET', + }, + }, + ], } From 85e7c19da8b8a6e5440cfdefdbfe16c6c1db7863 Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Sat, 10 May 2025 11:06:39 +0530 Subject: [PATCH 024/105] tenant manage apis added --- elevate-mentoring/constants/routes.js | 99 +++++++++++++++++++++++++++ elevate-mentoring/package.json | 2 +- 2 files changed, 100 insertions(+), 1 deletion(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index c6c0f129..47ea3004 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3111,6 +3111,105 @@ module.exports = { type: 'GET', }, }, + { + sourceRoute: '/user/v1/tenant/update', + type: 'POST', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/tenant/update', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/tenant/update/:id', + type: 'POST', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/tenant/update/:id', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/tenant/addDomain', + type: 'POST', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/tenant/addDomain', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/tenant/addDomain/:id', + type: 'POST', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/tenant/addDomain/:id', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/tenant/removeDomain', + type: 'POST', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/tenant/removeDomain', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/tenant/removeDomain/:id', + type: 'POST', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/tenant/removeDomain/:id', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/tenant/read', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/tenant/read', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/tenant/read/:id', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/tenant/read/:id', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/tenant/list', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/tenant/list', + type: 'GET', + }, + }, ], } diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index d7bcd7f2..61ab4cb8 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.33", + "version": "1.2.34", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From e2c3cbfa2d9819e4fb72c616ee2cbe9d4af66da3 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Tue, 13 May 2025 18:15:46 +0530 Subject: [PATCH 025/105] added resource routes --- elevate-mentoring/constants/routes.js | 11 +++++++++++ elevate-mentoring/package.json | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 47ea3004..b9addcc9 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3210,6 +3210,17 @@ module.exports = { type: 'GET', }, }, + { + sourceRoute: '/mentoring/v1/resources/delete/:id', + type: 'GET', + inSequence: false, + service: 'mentoring', + orchestrated: false, + targetRoute: { + path: '/mentoring/v1/resources/delete/:id', + type: 'GET', + }, + } ], } diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 61ab4cb8..c149fdd9 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.34", + "version": "1.2.36", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 65222f6a3667a038b3829f6ca8e52341dfc76a35 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Wed, 14 May 2025 16:42:06 +0530 Subject: [PATCH 026/105] controller fix for user read API --- elevate-mentoring/controllers/mentoring.js | 18 ++++++++++++++++-- elevate-mentoring/package.json | 2 +- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/elevate-mentoring/controllers/mentoring.js b/elevate-mentoring/controllers/mentoring.js index 35192307..06671bfd 100644 --- a/elevate-mentoring/controllers/mentoring.js +++ b/elevate-mentoring/controllers/mentoring.js @@ -93,9 +93,23 @@ const readUser = async (req, res, selectedConfig) => { let response = await requesters.get(req.baseUrl, parameterisedRoute, headers) + + if(response && response.result){ + response.result = convertIdsToString(response.result) + return res.json(response) + } else { + + let data ={ + error: 'Internal Server Error' + } + + return res.status(response.status? response.status: 500).json(response.data ? response.data : data) + // return res.json(response); + } + // Extract only the relevant data - response.result = convertIdsToString(response.result) - return res.json(response) + + // return res.json(return) } catch (error) { console.error('Error fetching user details:', error); return res.status(500).json({ error: 'Internal Server Error' }) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index c149fdd9..a169a1b3 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.36", + "version": "1.2.40", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From c44f0e25eac1c2a850968fc737827a64f6053c82 Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Wed, 14 May 2025 20:46:19 +0530 Subject: [PATCH 027/105] org details api added --- elevate-mentoring/constants/routes.js | 22 ++++++++++++++++++++++ elevate-mentoring/package.json | 2 +- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index b9addcc9..cad612c0 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -1985,6 +1985,28 @@ module.exports = { type: 'GET', }, }, + { + sourceRoute: '/user/v1/organization/details', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/organization/details', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/organization/details/:id', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/organization/details/:id', + type: 'GET', + }, + }, { sourceRoute: '/user/v1/entity-type/create', type: 'POST', diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index a169a1b3..ae081de0 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.40", + "version": "1.2.41", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 7a47f57162cd3e00ffb528b38735a2716acfad5f Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Wed, 14 May 2025 21:52:30 +0530 Subject: [PATCH 028/105] mentoring version corrected --- elevate-mentoring/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index ae081de0..8f026422 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.41", + "version": "1.2.42", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From a324b3e59bc87da1fe0fbdcb3b63cdb032562e5d Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Wed, 14 May 2025 23:41:17 +0530 Subject: [PATCH 029/105] user read API --- elevate-mentoring/controllers/mentoring.js | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/elevate-mentoring/controllers/mentoring.js b/elevate-mentoring/controllers/mentoring.js index 06671bfd..1c55635d 100644 --- a/elevate-mentoring/controllers/mentoring.js +++ b/elevate-mentoring/controllers/mentoring.js @@ -80,10 +80,19 @@ const readUser = async (req, res, selectedConfig) => { let headers if (req.params.id) { - headers = { - 'internal_access_token': req.headers['internal_access_token'], - 'Content-Type': 'application/json', + + if(req.headers['x-auth-token']){ + headers = { + 'Content-Type': 'application/json', + 'X-auth-token': req.headers['x-auth-token'], + } + } else { + headers = { + 'internal_access_token': req.headers['internal_access_token'], + 'Content-Type': 'application/json', + } } + } else { headers = { 'X-auth-token': req.headers['x-auth-token'], From d384da88daeaa271b7d7de086eb786406eb9e101 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Wed, 14 May 2025 23:42:05 +0530 Subject: [PATCH 030/105] package update --- elevate-mentoring/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 8f026422..d259ca8c 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.42", + "version": "1.2.44", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 05b191b8bae0ec6440f059e72d2e63806ea43ba7 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Thu, 15 May 2025 23:49:15 +0530 Subject: [PATCH 031/105] create account header add --- elevate-mentoring/constants/routes.js | 11 +++++++++++ elevate-mentoring/controllers/mentoring.js | 8 +++++++- elevate-mentoring/package.json | 2 +- 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index cad612c0..bfcce9b7 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3242,6 +3242,17 @@ module.exports = { path: '/mentoring/v1/resources/delete/:id', type: 'GET', }, + }, + { + sourceRoute: '/user/v1/public/checkUsername', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/public/checkUsername', + type: 'GET', + }, } ], diff --git a/elevate-mentoring/controllers/mentoring.js b/elevate-mentoring/controllers/mentoring.js index 1c55635d..a2a68ef4 100644 --- a/elevate-mentoring/controllers/mentoring.js +++ b/elevate-mentoring/controllers/mentoring.js @@ -7,8 +7,11 @@ const {convertIdsToString} = require('../utils/integerToStringConverter') const createProfile = async (req, res, responses) => { const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) req.body.skipValidation = true + + console.log("--------- createProfile -------",req.headers); return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body, { - 'X-auth-token': `bearer ${responses.user.result.access_token}`, + 'origin': req.headers['origin'], + 'X-auth-token': `bearer ${responses.user.result.access_token}`, // override or add this header }) } const updateUser = async (req, res, responses) => { @@ -42,7 +45,10 @@ const rolePermissions = async (req, res, responses) => { const createUser = async (req, res, responses) => { const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) + + console.log("--------- createUser -------",req.headers); return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body,{ + 'origin': req.headers['origin'], 'device-info': req.headers['device-info'], }) } diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index d259ca8c..cea1da05 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.44", + "version": "1.2.50", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 0dc5251668db381d42b882fe4c3466ef907dcc1b Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Fri, 16 May 2025 15:16:49 +0530 Subject: [PATCH 032/105] tenant user bulk upload apis added --- elevate-mentoring/constants/routes.js | 11 +++++++++++ elevate-mentoring/package.json | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index bfcce9b7..80ab084f 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3155,6 +3155,17 @@ module.exports = { type: 'POST', }, }, + { + sourceRoute: '/user/v1/tenant/userBulkUpload', + type: 'POST', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/tenant/userBulkUpload', + type: 'POST', + }, + }, { sourceRoute: '/user/v1/tenant/addDomain', type: 'POST', diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index cea1da05..a4b8bbc3 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.50", + "version": "1.2.51", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From a0f4bd68f686557152b3c692d5c2a36dcca0ac0e Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Fri, 16 May 2025 15:26:34 +0530 Subject: [PATCH 033/105] notification changes --- elevate-mentoring/controllers/mentoring.js | 4 +- .../helpers/dependencyManager.js | 13 ++++ elevate-mentoring/helpers/kafkaManager.js | 69 +++++++++++++++++++ elevate-mentoring/index.js | 39 +++++++++++ 4 files changed, 123 insertions(+), 2 deletions(-) create mode 100644 elevate-mentoring/helpers/dependencyManager.js create mode 100644 elevate-mentoring/helpers/kafkaManager.js diff --git a/elevate-mentoring/controllers/mentoring.js b/elevate-mentoring/controllers/mentoring.js index a2a68ef4..928b9278 100644 --- a/elevate-mentoring/controllers/mentoring.js +++ b/elevate-mentoring/controllers/mentoring.js @@ -11,7 +11,7 @@ const createProfile = async (req, res, responses) => { console.log("--------- createProfile -------",req.headers); return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body, { 'origin': req.headers['origin'], - 'X-auth-token': `bearer ${responses.user.result.access_token}`, // override or add this header + 'X-auth-token': `${responses.user.result.access_token}`, // override or add this header }) } const updateUser = async (req, res, responses) => { @@ -39,7 +39,7 @@ const rolePermissions = async (req, res, responses) => { console.log("selected req.responses",JSON.stringify(responses)); return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path,req.body,{ - 'X-auth-token': `bearer ${responses.user.result.access_token}`, + 'X-auth-token': `${responses.user.result.access_token}`, }) } diff --git a/elevate-mentoring/helpers/dependencyManager.js b/elevate-mentoring/helpers/dependencyManager.js new file mode 100644 index 00000000..d2f97ec7 --- /dev/null +++ b/elevate-mentoring/helpers/dependencyManager.js @@ -0,0 +1,13 @@ +const kafkaManager = require('./kafkaManager') + +const dependencyManager = (dependencyMap, environmentVariables) =>{ + try{ + console.log("--------------- dependencyManager elevate-kafka-- "); + kafkaManager(dependencyMap.get('kafka'),environmentVariables) + }catch(error){ + console.log(error) + throw error + } +} + +module.exports = dependencyManager \ No newline at end of file diff --git a/elevate-mentoring/helpers/kafkaManager.js b/elevate-mentoring/helpers/kafkaManager.js new file mode 100644 index 00000000..572acdef --- /dev/null +++ b/elevate-mentoring/helpers/kafkaManager.js @@ -0,0 +1,69 @@ +const { post } = require('../utils/requester') + +const kafkaManager = async (kafkaPackage, environmentVariables) => { + try { + + console.log("--------------- elevate-kafka-- "); + const { ElevateKafka } = kafkaPackage + + const kafka = new ElevateKafka( + environmentVariables.MENTORING_NOTIFICATION_KAFKA_BROKERS, + environmentVariables.MENTORING_NOTIFICATION_KAFKA_BROKERS, + { + packageName: 'elevate-mentoring', + } + ) + + const topics = [environmentVariables.MENTORING_NOTIFICATION_KAFKA_TOPIC] + const consumer = await kafka.createConsumer(environmentVariables.MENTORING_NOTIFICATION_KAFKA_GROUP_ID, topics) + await kafka.runConsumer(consumer, async (topic, message) => { + if (topic == environmentVariables.MENTORING_NOTIFICATION_KAFKA_TOPIC) { + + if(process.env.DEBUG_MODE == "true"){ + console.log("-------------------- message",message.value); + } + const body = (JSON.parse(message.value)); + if(process.env.DEBUG_MODE == "true"){ + console.log("-------------------- body ",body); + } + if(body && body.type=="email"){ + + const emailContent = body.email; + const to = emailContent.to.split(',') + + if(process.env.DEBUG_MODE == "true"){ + console.log("---------- API request header",JSON.stringify(headers)); + } + const requestBody = { + email: { + to: to, + // email : emailContent.cc ? emailContent.cc.split(',') : null, + // sender: environmentVariables.SUNBIRD_NOTIFICATION_SENDER_EMAIL, + subject: emailContent.subject, + body: emailContent.body + } + } + + if(process.env.DEBUG_MODE == "true"){ + console.log("---------- API request",JSON.stringify(requestBody)); + } + post( + environmentVariables.SAAS_NOTIFICATION_BASE_URL, + environmentVariables.SAAS_NOTIFICATION_SEND_EMAIL_ROUTE, + requestBody, + {} + + ) + + } + + } + }) + } catch (error) { + console.log("=========== kfak-error ==========") + console.log(error) + throw error + } +} + +module.exports = kafkaManager diff --git a/elevate-mentoring/index.js b/elevate-mentoring/index.js index 2796c86f..4f440e4d 100644 --- a/elevate-mentoring/index.js +++ b/elevate-mentoring/index.js @@ -1,6 +1,7 @@ const express = require('express') const routes = require('./constants/routes') const packageRouter = require('./router') +const dependencyManager = require('./helpers/dependencyManager') const getDependencies = () => { return ['kafka', 'kafka-connect', 'redis'] @@ -12,6 +13,14 @@ const getPackageMeta = () => { packageName: 'elevate-mentoring', } } +const getRequiredDependencies = () => { + return [ + { + "packageName": 'elevate-mentoring', + "dependencies": [{ "name": "kafka" }] + } + ] +} const createPackage = (options) => { const { kafkaClient, redisClient } = options @@ -39,11 +48,41 @@ const createPackage = (options) => { router, } } +const kafkaPackageName = "MENTORING NOTIFICATION" + +const environmentVariablePrefix = "MENTORING_NOTIFICATION"; +const requiredEnvs = { + [`${environmentVariablePrefix}_KAFKA_BROKERS`]: { + message: `[${kafkaPackageName}] Required Kafka Brokers Hosts`, + optional: false, + }, + [`${environmentVariablePrefix}_KAFKA_GROUP_ID`]: { + message: `[${kafkaPackageName}] Required Kafka Group ID`, + optional: false, + }, + [`${environmentVariablePrefix}_KAFKA_TOPIC`]: { + message: `[${kafkaPackageName}] Required Kafka Topics`, + optional: false, + }, + SAAS_NOTIFICATION_BASE_URL: { + message: `[${kafkaPackageName}] Saas Notification Service Base Required`, + optional: false, + }, + SAAS_NOTIFICATION_SEND_EMAIL_ROUTE: { + message: `[${kafkaPackageName}] Saas Notification Send Email Route Required`, + optional: false, + } +} module.exports = { dependencies: getDependencies(), routes, createPackage, + requiredEnvs, packageMeta: getPackageMeta(), packageRouter, + dependencyManager, + requiredDependencies:getRequiredDependencies } + + From 694b5031009fd4fab16de35a815d345f523a909d Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Fri, 16 May 2025 15:28:38 +0530 Subject: [PATCH 034/105] updated version --- elevate-mentoring/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index a4b8bbc3..a8c7af2d 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.51", + "version": "1.2.55", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From eed36fb4edd1fd62672018e2f23956b1c42a657b Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Fri, 16 May 2025 22:42:00 +0530 Subject: [PATCH 035/105] kafka integration changes: --- elevate-mentoring/helpers/kafkaManager.js | 22 ++++++++++++++++++---- elevate-mentoring/package.json | 2 +- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/elevate-mentoring/helpers/kafkaManager.js b/elevate-mentoring/helpers/kafkaManager.js index 572acdef..7476ddef 100644 --- a/elevate-mentoring/helpers/kafkaManager.js +++ b/elevate-mentoring/helpers/kafkaManager.js @@ -3,7 +3,7 @@ const { post } = require('../utils/requester') const kafkaManager = async (kafkaPackage, environmentVariables) => { try { - console.log("--------------- elevate-kafka-- "); + console.log(kafkaPackage,"--------------- elevate-kafka-- ",environmentVariables); const { ElevateKafka } = kafkaPackage const kafka = new ElevateKafka( @@ -13,10 +13,13 @@ const kafkaManager = async (kafkaPackage, environmentVariables) => { packageName: 'elevate-mentoring', } ) + console.log(" ----------- elevate-kafka-2",kafka); const topics = [environmentVariables.MENTORING_NOTIFICATION_KAFKA_TOPIC] const consumer = await kafka.createConsumer(environmentVariables.MENTORING_NOTIFICATION_KAFKA_GROUP_ID, topics) await kafka.runConsumer(consumer, async (topic, message) => { + + console.log(topic," ------------- kafka-message ------",message) if (topic == environmentVariables.MENTORING_NOTIFICATION_KAFKA_TOPIC) { if(process.env.DEBUG_MODE == "true"){ @@ -26,13 +29,16 @@ const kafkaManager = async (kafkaPackage, environmentVariables) => { if(process.env.DEBUG_MODE == "true"){ console.log("-------------------- body ",body); } + console.log("-------------------- kafka-body ",body); if(body && body.type=="email"){ - + try { + + const emailContent = body.email; const to = emailContent.to.split(',') if(process.env.DEBUG_MODE == "true"){ - console.log("---------- API request header",JSON.stringify(headers)); + // console.log("---------- API request header",JSON.stringify(headers)); } const requestBody = { email: { @@ -47,13 +53,21 @@ const kafkaManager = async (kafkaPackage, environmentVariables) => { if(process.env.DEBUG_MODE == "true"){ console.log("---------- API request",JSON.stringify(requestBody)); } + post( environmentVariables.SAAS_NOTIFICATION_BASE_URL, environmentVariables.SAAS_NOTIFICATION_SEND_EMAIL_ROUTE, requestBody, {} - ) + + } catch (error) { + + console.log("------------- kafka-error --",error) + + } + + } diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index a8c7af2d..28b2ef56 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.55", + "version": "1.2.59", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 19ec54494b75e7e467a645bd82347584b0622226 Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Sat, 17 May 2025 23:52:03 +0530 Subject: [PATCH 036/105] mentoring user add added --- elevate-mentoring/constants/routes.js | 10 ++++++++++ elevate-mentoring/package.json | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 80ab084f..d5849cf7 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -1802,6 +1802,16 @@ module.exports = { type: 'GET', }, }, + { + sourceRoute: '/mentoring/v1/users/add', + type: 'POST', + inSequence: false, + orchestrated: false, + targetRoute: { + path: '/mentoring/v1/users/add', + type: 'POST', + }, + }, { sourceRoute: '/user/v1/user-role/create', type: 'POST', diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 28b2ef56..655ca30c 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.59", + "version": "1.2.61", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 4fd8401b2be9043e0d5e0bd0d24452449b6ad2d3 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Sun, 18 May 2025 11:40:49 +0530 Subject: [PATCH 037/105] package env change --- elevate-mentoring/helpers/kafkaManager.js | 70 ++++++++++------------- elevate-mentoring/index.js | 2 +- elevate-mentoring/package.json | 2 +- 3 files changed, 33 insertions(+), 41 deletions(-) diff --git a/elevate-mentoring/helpers/kafkaManager.js b/elevate-mentoring/helpers/kafkaManager.js index 7476ddef..d533fb5b 100644 --- a/elevate-mentoring/helpers/kafkaManager.js +++ b/elevate-mentoring/helpers/kafkaManager.js @@ -3,24 +3,26 @@ const { post } = require('../utils/requester') const kafkaManager = async (kafkaPackage, environmentVariables) => { try { - console.log(kafkaPackage,"--------------- elevate-kafka-- ",environmentVariables); const { ElevateKafka } = kafkaPackage const kafka = new ElevateKafka( - environmentVariables.MENTORING_NOTIFICATION_KAFKA_BROKERS, - environmentVariables.MENTORING_NOTIFICATION_KAFKA_BROKERS, + environmentVariables.ELEVATE_NOTIFICATION_KAFKA_BROKERS, + environmentVariables.ELEVATE_NOTIFICATION_KAFKA_BROKERS, { packageName: 'elevate-mentoring', } ) - console.log(" ----------- elevate-kafka-2",kafka); + - const topics = [environmentVariables.MENTORING_NOTIFICATION_KAFKA_TOPIC] - const consumer = await kafka.createConsumer(environmentVariables.MENTORING_NOTIFICATION_KAFKA_GROUP_ID, topics) + const topics = [environmentVariables.ELEVATE_NOTIFICATION_KAFKA_TOPIC] + const consumer = await kafka.createConsumer(environmentVariables.ELEVATE_NOTIFICATION_KAFKA_GROUP_ID, topics) await kafka.runConsumer(consumer, async (topic, message) => { - console.log(topic," ------------- kafka-message ------",message) - if (topic == environmentVariables.MENTORING_NOTIFICATION_KAFKA_TOPIC) { + if(process.env.DEBUG_MODE == "true"){ + console.log(topic," ------------- kafka-message ------",message) + } + + if (topic == environmentVariables.ELEVATE_NOTIFICATION_KAFKA_TOPIC) { if(process.env.DEBUG_MODE == "true"){ console.log("-------------------- message",message.value); @@ -29,46 +31,36 @@ const kafkaManager = async (kafkaPackage, environmentVariables) => { if(process.env.DEBUG_MODE == "true"){ console.log("-------------------- body ",body); } - console.log("-------------------- kafka-body ",body); if(body && body.type=="email"){ try { - - const emailContent = body.email; - const to = emailContent.to.split(',') - - if(process.env.DEBUG_MODE == "true"){ - // console.log("---------- API request header",JSON.stringify(headers)); - } - const requestBody = { - email: { - to: to, - // email : emailContent.cc ? emailContent.cc.split(',') : null, - // sender: environmentVariables.SUNBIRD_NOTIFICATION_SENDER_EMAIL, - subject: emailContent.subject, - body: emailContent.body + const emailContent = body.email; + const to = emailContent.to.split(',') + const requestBody = { + email: { + to: to, + // email : emailContent.cc ? emailContent.cc.split(',') : null, + // sender: environmentVariables.SUNBIRD_NOTIFICATION_SENDER_EMAIL, + subject: emailContent.subject, + body: emailContent.body + } } - } - if(process.env.DEBUG_MODE == "true"){ - console.log("---------- API request",JSON.stringify(requestBody)); - } - - post( - environmentVariables.SAAS_NOTIFICATION_BASE_URL, - environmentVariables.SAAS_NOTIFICATION_SEND_EMAIL_ROUTE, - requestBody, - {} - ) + if(process.env.DEBUG_MODE == "true"){ + console.log("---------- API request",JSON.stringify(requestBody)); + } + post( + environmentVariables.SAAS_NOTIFICATION_BASE_URL, + environmentVariables.SAAS_NOTIFICATION_SEND_EMAIL_ROUTE, + requestBody, + {} + ) + } catch (error) { - - console.log("------------- kafka-error --",error) - + console.log("------------- kafka-error --",error) } - - } } diff --git a/elevate-mentoring/index.js b/elevate-mentoring/index.js index 4f440e4d..8d245176 100644 --- a/elevate-mentoring/index.js +++ b/elevate-mentoring/index.js @@ -50,7 +50,7 @@ const createPackage = (options) => { } const kafkaPackageName = "MENTORING NOTIFICATION" -const environmentVariablePrefix = "MENTORING_NOTIFICATION"; +const environmentVariablePrefix = "ELEVATE_NOTIFICATION"; const requiredEnvs = { [`${environmentVariablePrefix}_KAFKA_BROKERS`]: { message: `[${kafkaPackageName}] Required Kafka Brokers Hosts`, diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 28b2ef56..35b35cc6 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.59", + "version": "1.2.60", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 6ac36d44f888a4d0d1431960ec64ad81caf99de4 Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Mon, 19 May 2025 19:17:27 +0530 Subject: [PATCH 038/105] added costum handler in mentoring --- elevate-mentoring/constants/routes.js | 1 + elevate-mentoring/controllers/mentoring.js | 21 ++++++++++++++++++++- elevate-mentoring/package.json | 2 +- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index d5849cf7..d8bd4272 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -1810,6 +1810,7 @@ module.exports = { targetRoute: { path: '/mentoring/v1/users/add', type: 'POST', + functionName: 'userAddEvent', }, }, { diff --git a/elevate-mentoring/controllers/mentoring.js b/elevate-mentoring/controllers/mentoring.js index 928b9278..8741be3f 100644 --- a/elevate-mentoring/controllers/mentoring.js +++ b/elevate-mentoring/controllers/mentoring.js @@ -29,6 +29,24 @@ const entityTypeRead = async (req, res, responses) => { }) } +const userAddEvent = async (req, res, responses) => { + const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) + const allowedEventTypes = ['bulk-create'] + if(allowedEventTypes.includes(req.body.eventType)){ + return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body, { + 'internal_access_token': req.headers['internal_access_token'], + }) + } else { + // Return a resolved Promise with a success response + return Promise.resolve({ + success: true, + message: 'No Action taken.', + data: {}, + }); + } + +} + const rolePermissions = async (req, res, responses) => { const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) @@ -281,7 +299,8 @@ mentoringController = { mentorDetails, mentoringProfile, userDetails, - getUserDetailsFromExternal + getUserDetailsFromExternal, + userAddEvent } module.exports = mentoringController diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 655ca30c..1e8be1d2 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.61", + "version": "1.2.63", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 651b7f1c7a110e868c4f494fdb03ea3d1c38f7ec Mon Sep 17 00:00:00 2001 From: Nevil Date: Wed, 21 May 2025 00:34:08 +0530 Subject: [PATCH 039/105] added: delete api --- elevate-mentoring/constants/routes.js | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index d8bd4272..aefd4d2e 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -1689,6 +1689,17 @@ module.exports = { type: 'POST', }, }, + { + sourceRoute: '/user/v1/account/delete', + type: 'DELETE', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/account/delete', + type: 'DELETE', + }, + }, { sourceRoute: '/user/v1/account/list', type: 'POST', From 92d8111923159e8000226192c56a5685cb3509f3 Mon Sep 17 00:00:00 2001 From: Nevil Date: Wed, 21 May 2025 00:36:25 +0530 Subject: [PATCH 040/105] updated: package version --- elevate-mentoring/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 1e8be1d2..fb3b410e 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.63", + "version": "1.2.64", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From a7d9bf88fa3f4bb96297e482fd1a265f7edb6671 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Thu, 22 May 2025 16:03:09 +0530 Subject: [PATCH 041/105] removed unused code and log --- sunbird-mentoring/constants/routes.js | 23 ---------------------- sunbird-mentoring/controllers/mentoring.js | 6 +++++- sunbird-mentoring/package.json | 2 +- 3 files changed, 6 insertions(+), 25 deletions(-) diff --git a/sunbird-mentoring/constants/routes.js b/sunbird-mentoring/constants/routes.js index 95f54f19..16b4ccc5 100644 --- a/sunbird-mentoring/constants/routes.js +++ b/sunbird-mentoring/constants/routes.js @@ -2155,29 +2155,6 @@ module.exports = { }, }, - { - sourceRoute: '/interface/v1/profile/read', - type: 'GET', - inSequence: true, - orchestrated: true, - service:"user", - targetRoute: { - paths: [ - { - service: "user", - path: '/private/user/v1/read/:id', - type: 'GET' - }, - { - service: "user", - baseUrl: 'http://lms-service:9000', - path: '/private/v3/user/courses/list/:id', - type: 'GET' - } - ], - functionName: 'readUserWithToken' - }, - }, { sourceRoute: '/mentoring/v1/reports/reportData', type: 'POST', diff --git a/sunbird-mentoring/controllers/mentoring.js b/sunbird-mentoring/controllers/mentoring.js index af5c90c0..b132c5b3 100644 --- a/sunbird-mentoring/controllers/mentoring.js +++ b/sunbird-mentoring/controllers/mentoring.js @@ -48,7 +48,9 @@ const profileRead = async (req, res, selectedConfig) => { console.log("mentoringResponse api respo",mentoringResponse); console.log("mentoringResponse read json",JSON.stringify(mentoringResponse)); } - if(mentoringResponse && mentoringResponse.result['id']){ + if(mentoringResponse && mentoringResponse.result['user_id']){ + + console.log("mentoringResponse return userId",mentoringResponse.result['user_id']); mentoringResponse.result['id'] = mentoringResponse.result?.user_id; res.json(mentoringResponse) @@ -118,6 +120,8 @@ const loginUser = async (req, res, responses, selectedConfig) => { } const readOrganization = async (req, res, selectedConfig) => { + + console.log("------- org read config -------",selectedConfig); const body = { request: { organisationId: req.query.organisation_id || req.query.organisation_code, diff --git a/sunbird-mentoring/package.json b/sunbird-mentoring/package.json index 5978afd5..1657f2df 100644 --- a/sunbird-mentoring/package.json +++ b/sunbird-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "sunbird-mentoring", - "version": "3.1.32", + "version": "3.1.33.2", "description": "Npm package for sunbird-mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 6fcb92d525d2fd41a7421f000af220d9449a2a6a Mon Sep 17 00:00:00 2001 From: Nevil Date: Mon, 26 May 2025 22:45:01 +0530 Subject: [PATCH 042/105] add: profiel api --- elevate-mentoring/constants/routes.js | 22 ++++++++++++++++++++++ elevate-mentoring/package.json | 2 +- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index aefd4d2e..6128f031 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -1747,6 +1747,28 @@ module.exports = { functionName: 'readUser', }, }, + { + sourceRoute: '/user/v1/user/profileById/:id', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/user/profileById/:id', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/user/profileById', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/user/profileById', + type: 'GET', + }, + }, { sourceRoute: '/user/v1/user/update', type: 'PATCH', diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index fb3b410e..e5699779 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.64", + "version": "1.2.65", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From ffa01e1059f40958f3e61022705ba9dca020cd5c Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Wed, 28 May 2025 19:00:53 +0530 Subject: [PATCH 043/105] added role changes to mentoring package --- elevate-mentoring/controllers/mentoring.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/elevate-mentoring/controllers/mentoring.js b/elevate-mentoring/controllers/mentoring.js index 8741be3f..dd39610b 100644 --- a/elevate-mentoring/controllers/mentoring.js +++ b/elevate-mentoring/controllers/mentoring.js @@ -33,6 +33,12 @@ const userAddEvent = async (req, res, responses) => { const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) const allowedEventTypes = ['bulk-create'] if(allowedEventTypes.includes(req.body.eventType)){ + req.body.organization_id = req.body.organizations[0].id + req.body.roles = req.body.organizations[0].roles.map((role) => { + return { + title : role.title + } + }) return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body, { 'internal_access_token': req.headers['internal_access_token'], }) From f99039bc354a14ae0297290f6cc66ed6c25832f0 Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Wed, 28 May 2025 19:13:53 +0530 Subject: [PATCH 044/105] package update --- elevate-mentoring/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index e5699779..585cadeb 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.65", + "version": "1.2.66", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From c1375767b916ad3b24396e9ded071deee0e41b56 Mon Sep 17 00:00:00 2001 From: Nevil Date: Wed, 4 Jun 2025 15:36:04 +0530 Subject: [PATCH 045/105] add: delete api --- elevate-mentoring/constants/routes.js | 13 ++++++++++++- elevate-mentoring/package.json | 2 +- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 6128f031..b2c64fc4 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3308,7 +3308,18 @@ module.exports = { path: '/user/v1/public/checkUsername', type: 'GET', }, - } + }, + { + sourceRoute: '/mentoring/v1/users/delete', + type: 'POST', + inSequence: false, + service: 'mentoring', + orchestrated: false, + targetRoute: { + path: '/mentoring/v1/users/delete', + type: 'POST', + }, + }, ], } diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 585cadeb..19d2a574 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.66", + "version": "1.2.67", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From ebde59b9a0a0a5c2db6ecc2cc3a2c01683d6ed15 Mon Sep 17 00:00:00 2001 From: priyanka-TL Date: Tue, 17 Jun 2025 14:33:45 +0530 Subject: [PATCH 046/105] feature route added --- elevate-mentoring/constants/routes.js | 143 ++++++++++++++++++++++++++ 1 file changed, 143 insertions(+) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index b2c64fc4..b37d739f 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3320,6 +3320,149 @@ module.exports = { type: 'POST', }, }, + { + sourceRoute: '/user/v1/organization-feature/create', + type: 'POST', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/organization-feature/create', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/organization-feature/read', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/organization-feature/read', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/organization-feature/read/:id', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/organization-feature/read/:id', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/organization-feature/update', + type: 'PATCH', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/organization-feature/update', + type: 'PATCH', + }, + }, + { + sourceRoute: '/user/v1/organization-feature/update/:id', + type: 'PATCH', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/organization-feature/update/:id', + type: 'PATCH', + }, + }, + { + sourceRoute: '/user/v1/organization-feature/update', + type: 'DELETE', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/organization-feature/update', + type: 'DELETE', + }, + }, + { + sourceRoute: '/user/v1/organization-feature/update/:id', + type: 'DELETE', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/organization-feature/update/:id', + type: 'DELETE', + }, + }, + { + sourceRoute: '/user/v1/feature/update', + type: 'POST', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/feature/update', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/feature/update/:id', + type: 'POST', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/feature/update/:id', + type: 'POST', + }, + }, + { + sourceRoute: '/user/v1/feature/list', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/feature/list', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/feature/list/:id', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/feature/list/:id', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/feature/delete', + type: 'DELETE', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/feature/delete', + type: 'DELETE', + }, + }, + { + sourceRoute: '/user/v1/feature/delete/:id', + type: 'DELETE', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/feature/delete/:id', + type: 'DELETE', + }, + } ], } From 53490571a76ee7b4d519412dfd8c4f0625919e65 Mon Sep 17 00:00:00 2001 From: priyanka-TL Date: Tue, 17 Jun 2025 14:34:46 +0530 Subject: [PATCH 047/105] package version update --- elevate-mentoring/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 19d2a574..dc99be93 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.67", + "version": "1.2.68", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 83ab41a932d0f2dba2ba350017e885d5dd2d0a4e Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Thu, 19 Jun 2025 12:43:41 +0530 Subject: [PATCH 048/105] updated bulkUserCreate end-point --- elevate-mentoring/constants/routes.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 6128f031..101ca2c7 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3200,13 +3200,13 @@ module.exports = { }, }, { - sourceRoute: '/user/v1/tenant/userBulkUpload', + sourceRoute: '/user/v1/tenant/bulkUserCreate', type: 'POST', inSequence: false, service: 'user', orchestrated: false, targetRoute: { - path: '/user/v1/tenant/userBulkUpload', + path: '/user/v1/tenant/bulkUserCreate', type: 'POST', }, }, From 69767133d7447d066ddd91f000a9f331c3bdfe75 Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Thu, 19 Jun 2025 12:45:07 +0530 Subject: [PATCH 049/105] updated mentoring package version --- elevate-mentoring/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index dc99be93..d7c390b4 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.68", + "version": "1.2.69", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 1133979f03d1ead08db2ed4a1a11c4b9852c6a51 Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Thu, 19 Jun 2025 16:51:52 +0530 Subject: [PATCH 050/105] updated mentoring package version --- elevate-mentoring/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index d7c390b4..60268504 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.69", + "version": "1.2.70", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 162dc6128ab07e95cbb68b6db4af2b138552ecf7 Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Thu, 19 Jun 2025 16:55:42 +0530 Subject: [PATCH 051/105] updated mentoring package version --- elevate-mentoring/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 60268504..91dc6f2d 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.70", + "version": "1.2.71", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From f74dd8c6211361c3efda7c6f789c20ab9af56d2d Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Fri, 20 Jun 2025 15:33:40 +0530 Subject: [PATCH 052/105] user invites api added --- elevate-mentoring/constants/routes.js | 11 +++++++++++ elevate-mentoring/package.json | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 4ebd28e7..55d9a590 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3462,6 +3462,17 @@ module.exports = { path: '/user/v1/feature/delete/:id', type: 'DELETE', }, + }, + { + sourceRoute: '/user/v1/public/userInvites', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/public/userInvites', + type: 'GET', + }, } ], diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 91dc6f2d..0226668d 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.71", + "version": "1.2.72", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 956d76a3120de98befc40e788d22e20e39084798 Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Mon, 30 Jun 2025 18:07:01 +0530 Subject: [PATCH 053/105] org registration code add / remove apis added --- elevate-mentoring/constants/routes.js | 44 +++++++++++++++++++++++++++ elevate-mentoring/package.json | 2 +- 2 files changed, 45 insertions(+), 1 deletion(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 55d9a590..7378fae3 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -2018,6 +2018,50 @@ module.exports = { type: 'PATCH', }, }, + { + sourceRoute: '/user/v1/organization/addRelatedOrg/:id', + type: 'PATCH', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/organization/addRelatedOrg/:id', + type: 'PATCH', + }, + }, + { + sourceRoute: '/user/v1/organization/addRelatedOrg', + type: 'PATCH', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/organization/addRelatedOrg', + type: 'PATCH', + }, + }, + { + sourceRoute: '/user/v1/organization/removeRelatedOrg/:id', + type: 'PATCH', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/organization/removeRelatedOrg/:id', + type: 'PATCH', + }, + }, + { + sourceRoute: '/user/v1/organization/removeRelatedOrg', + type: 'PATCH', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/organization/removeRelatedOrg', + type: 'PATCH', + }, + }, { sourceRoute: '/user/v1/organization/list', type: 'GET', diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 0226668d..bb46d1a1 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.72", + "version": "1.2.73", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 54c6d2a2ae8dbe180187ecdf9c492b2bd29666f6 Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Mon, 30 Jun 2025 18:50:17 +0530 Subject: [PATCH 054/105] org registration code add / remove apis added --- elevate-mentoring/constants/routes.js | 16 ++++++++-------- elevate-mentoring/package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 7378fae3..aedcf94f 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -2019,46 +2019,46 @@ module.exports = { }, }, { - sourceRoute: '/user/v1/organization/addRelatedOrg/:id', + sourceRoute: '/user/v1/organization/addRegistrationCode/:id', type: 'PATCH', inSequence: false, service: 'user', orchestrated: false, targetRoute: { - path: '/user/v1/organization/addRelatedOrg/:id', + path: '/user/v1/organization/addRegistrationCode/:id', type: 'PATCH', }, }, { - sourceRoute: '/user/v1/organization/addRelatedOrg', + sourceRoute: '/user/v1/organization/addRegistrationCode', type: 'PATCH', inSequence: false, service: 'user', orchestrated: false, targetRoute: { - path: '/user/v1/organization/addRelatedOrg', + path: '/user/v1/organization/addRegistrationCode', type: 'PATCH', }, }, { - sourceRoute: '/user/v1/organization/removeRelatedOrg/:id', + sourceRoute: '/user/v1/organization/removeRegistrationCode/:id', type: 'PATCH', inSequence: false, service: 'user', orchestrated: false, targetRoute: { - path: '/user/v1/organization/removeRelatedOrg/:id', + path: '/user/v1/organization/removeRegistrationCode/:id', type: 'PATCH', }, }, { - sourceRoute: '/user/v1/organization/removeRelatedOrg', + sourceRoute: '/user/v1/organization/removeRegistrationCode', type: 'PATCH', inSequence: false, service: 'user', orchestrated: false, targetRoute: { - path: '/user/v1/organization/removeRelatedOrg', + path: '/user/v1/organization/removeRegistrationCode', type: 'PATCH', }, }, diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index bb46d1a1..8b2fbb2b 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.73", + "version": "1.2.74", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From f35549cefcf6bd6e083d3610536b2eafaac63f23 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Mon, 7 Jul 2025 13:56:53 +0530 Subject: [PATCH 055/105] routes path changed for read API --- elevate-mentoring/constants/routes.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index aedcf94f..4d4a692a 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -2965,9 +2965,9 @@ module.exports = { orchestrated: true, service: 'user', targetRoute: { - path: '/user/v1/user/read', + path: '/user/v1/user/read/:id', type: 'POST', - functionName: 'getUserDetailsFromExternal', + functionName: 'read', }, }, { From bbca31c4d23a7a7759d4fc24f9db4d040c817747 Mon Sep 17 00:00:00 2001 From: rakeshSgr Date: Mon, 7 Jul 2025 16:22:57 +0530 Subject: [PATCH 056/105] reverting read API changes --- elevate-mentoring/constants/routes.js | 4 ++-- elevate-mentoring/controllers/mentoring.js | 6 ------ elevate-mentoring/package.json | 2 +- 3 files changed, 3 insertions(+), 9 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 4d4a692a..aedcf94f 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -2965,9 +2965,9 @@ module.exports = { orchestrated: true, service: 'user', targetRoute: { - path: '/user/v1/user/read/:id', + path: '/user/v1/user/read', type: 'POST', - functionName: 'read', + functionName: 'getUserDetailsFromExternal', }, }, { diff --git a/elevate-mentoring/controllers/mentoring.js b/elevate-mentoring/controllers/mentoring.js index dd39610b..8741be3f 100644 --- a/elevate-mentoring/controllers/mentoring.js +++ b/elevate-mentoring/controllers/mentoring.js @@ -33,12 +33,6 @@ const userAddEvent = async (req, res, responses) => { const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) const allowedEventTypes = ['bulk-create'] if(allowedEventTypes.includes(req.body.eventType)){ - req.body.organization_id = req.body.organizations[0].id - req.body.roles = req.body.organizations[0].roles.map((role) => { - return { - title : role.title - } - }) return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body, { 'internal_access_token': req.headers['internal_access_token'], }) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 8b2fbb2b..00af287d 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.74", + "version": "1.2.78", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 2dd370e6f36c565ff2d3e61f2554efdfbc401ace Mon Sep 17 00:00:00 2001 From: MallanagoudaB Date: Mon, 14 Jul 2025 22:15:28 +0530 Subject: [PATCH 057/105] routes-for-user-mentoring --- elevate-mentoring/constants/routes.js | 23 ++++++++++++++++++++++- elevate-mentoring/package.json | 2 +- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index aedcf94f..c1137922 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3517,7 +3517,28 @@ module.exports = { path: '/user/v1/public/userInvites', type: 'GET', }, - } + }, + { + sourceRoute: '/mentoring/health', + type: 'GET', + inSequence: false, + orchestrated: false, + targetRoute: { + path: '/health', + type: 'GET', + }, + }, + { + sourceRoute: '/user/health', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/health', + type: 'GET', + }, + }, ], } diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 00af287d..8550cc65 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.78", + "version": "1.2.79", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 0cb87eb9b19186bf9a0d963c8d4e9aa153b6b157 Mon Sep 17 00:00:00 2001 From: MallanagoudaB Date: Tue, 15 Jul 2025 16:51:42 +0530 Subject: [PATCH 058/105] added-sch-service --- elevate-mentoring/constants/routes.js | 9 +++++++++ elevate-mentoring/package.json | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index c1137922..88da4b16 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3539,6 +3539,15 @@ module.exports = { type: 'GET', }, }, + { + sourceRoute: '/scheduler/health', + type: 'GET', + service: 'scheduler', + targetRoute: { + path: '/health', + type: 'GET', + }, + }, ], } diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 8550cc65..618433ea 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.79", + "version": "1.2.80", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 07a19de5224206dea4c32dfad90a3b4150aef207 Mon Sep 17 00:00:00 2001 From: MallanagoudaB Date: Wed, 16 Jul 2025 12:11:09 +0530 Subject: [PATCH 059/105] QaCheck --- elevate-mentoring/constants/routes.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 88da4b16..5ee45007 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3548,6 +3548,15 @@ module.exports = { type: 'GET', }, }, + { + sourceRoute: '/interface/scheduler/health', + type: 'GET', + service: 'scheduler', + targetRoute: { + path: '/health', + type: 'GET', + }, + }, ], } From 3b693ed662a539a234abd28caf457ff660384409 Mon Sep 17 00:00:00 2001 From: MallanagoudaB Date: Wed, 16 Jul 2025 12:14:45 +0530 Subject: [PATCH 060/105] change-package-name --- elevate-mentoring/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 618433ea..f964f821 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.80", + "version": "1.2.81", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 844f6eaaa2a50ce618cca1a6caf20f530f1dcceb Mon Sep 17 00:00:00 2001 From: Rocky Date: Fri, 18 Jul 2025 13:19:25 +0530 Subject: [PATCH 061/105] adding events code changes --- elevate-mentoring/controllers/mentoring.js | 8 ++++++++ elevate-mentoring/package.json | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/elevate-mentoring/controllers/mentoring.js b/elevate-mentoring/controllers/mentoring.js index 8741be3f..b41d9e20 100644 --- a/elevate-mentoring/controllers/mentoring.js +++ b/elevate-mentoring/controllers/mentoring.js @@ -33,6 +33,14 @@ const userAddEvent = async (req, res, responses) => { const selectedConfig = routeConfigs.routes.find((obj) => req.service === obj.service && obj.sourceRoute === req.sourceRoute) const allowedEventTypes = ['bulk-create'] if(allowedEventTypes.includes(req.body.eventType)){ + + req.body.organization_id = req.body.organizations[0].id + req.body.roles = req.body.organizations[0].roles.map((role) => { + return { + title : role.title + } + }) + return await requesters.post(req.baseUrl, selectedConfig.targetRoute.path, req.body, { 'internal_access_token': req.headers['internal_access_token'], }) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index f964f821..0fcecaf4 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.81", + "version": "1.2.82", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 801263e61ad2515c9e5990a9b38be7f2f954d078 Mon Sep 17 00:00:00 2001 From: Rocky Date: Fri, 18 Jul 2025 13:20:58 +0530 Subject: [PATCH 062/105] package version update --- elevate-mentoring/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 0fcecaf4..f6246266 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.82", + "version": "1.2.83", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 5a40e5852e13b68d87d787619b73e6ae98b35e4b Mon Sep 17 00:00:00 2001 From: Rocky Date: Tue, 5 Aug 2025 18:54:45 +0530 Subject: [PATCH 063/105] requestCountAPi added --- elevate-mentoring/constants/routes.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 5ee45007..5e73d9a3 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3557,6 +3557,15 @@ module.exports = { type: 'GET', }, }, + { + sourceRoute: '/mentoring/v1/users/requestCount', + type: 'GET', + service: 'mentoring', + targetRoute: { + path: '/mentoring/v1/users/requestCount', + type: 'GET', + }, + } ], } From 3f7c015c179b6aed5125db64a187bde7750a78b3 Mon Sep 17 00:00:00 2001 From: Rocky Date: Tue, 5 Aug 2025 18:58:06 +0530 Subject: [PATCH 064/105] package version updated --- elevate-mentoring/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index f6246266..1b049c8e 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.83", + "version": "1.2.84", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 64cf8cb8056b78881feb6bfe3ae939ad9f75be52 Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Mon, 1 Sep 2025 15:59:26 +0530 Subject: [PATCH 065/105] Updated Organization list route to accept post method also --- elevate-mentoring/constants/routes.js | 11 +++++++++++ elevate-mentoring/package.json | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 5e73d9a3..fbefc237 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -2073,6 +2073,17 @@ module.exports = { type: 'GET', }, }, + { + sourceRoute: '/user/v1/organization/list', + type: 'POST', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/organization/list', + type: 'POST', + }, + }, { sourceRoute: '/user/v1/organization/details', type: 'GET', diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 1b049c8e..c3741717 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.84", + "version": "1.2.85", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 9d0b8eca196b2665c9b5f083e9d95e7eb223af1a Mon Sep 17 00:00:00 2001 From: Nevil Date: Tue, 16 Sep 2025 16:08:07 +0530 Subject: [PATCH 066/105] add: tenant/readInternal for user service --- elevate-mentoring/constants/routes.js | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index fbefc237..817b55a2 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -3331,6 +3331,28 @@ module.exports = { type: 'GET', }, }, + { + sourceRoute: '/user/v1/tenant/readInternal', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/tenant/readInternal', + type: 'GET', + }, + }, + { + sourceRoute: '/user/v1/tenant/readInternal/:id', + type: 'GET', + inSequence: false, + service: 'user', + orchestrated: false, + targetRoute: { + path: '/user/v1/tenant/readInternal/:id', + type: 'GET', + }, + }, { sourceRoute: '/user/v1/tenant/list', type: 'GET', From eafad734dfe0901a21d640f3a809eef3da6f7afb Mon Sep 17 00:00:00 2001 From: Nevil Date: Tue, 16 Sep 2025 16:09:36 +0530 Subject: [PATCH 067/105] update: package version --- elevate-mentoring/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index c3741717..5aea5e5d 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.85", + "version": "1.2.86", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From b90204654f3c5c13d9d9bcef22c8d2f0669f16b2 Mon Sep 17 00:00:00 2001 From: prajwal Date: Thu, 9 Oct 2025 17:52:26 +0530 Subject: [PATCH 068/105] elevate-project routes updated --- elevate-project/constants/routes.js | 13 ++++++++++++- elevate-project/package.json | 2 +- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/elevate-project/constants/routes.js b/elevate-project/constants/routes.js index 09b696c1..d7f527ee 100644 --- a/elevate-project/constants/routes.js +++ b/elevate-project/constants/routes.js @@ -3270,6 +3270,17 @@ module.exports = { type: "POST" }, service: "project" - } + }, + { + sourceRoute: "/project/v1/userExtension/update", + type: "POST", + inSequence: false, + orchestrated: false, + targetRoute: { + path: "/project/v1/userExtension/update", + type: "POST" + }, + service: "project" + } ] } \ No newline at end of file diff --git a/elevate-project/package.json b/elevate-project/package.json index 9c1c8c76..02c59b7c 100644 --- a/elevate-project/package.json +++ b/elevate-project/package.json @@ -1,6 +1,6 @@ { "name": "elevate-project", - "version": "1.1.49", + "version": "1.1.50", "description": "Npm package for Elevate-Project service integration with Interface service", "main": "index.js", "scripts": { From f9fa27dda653923b06ca38e268e9334baeb13107 Mon Sep 17 00:00:00 2001 From: prajwal Date: Fri, 10 Oct 2025 15:10:40 +0530 Subject: [PATCH 069/105] elevate-survey-observation npm package updated --- elevate-survey/constants/routes.js | 10 ++++++++++ elevate-survey/package.json | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/elevate-survey/constants/routes.js b/elevate-survey/constants/routes.js index 10a324af..8da5fabf 100644 --- a/elevate-survey/constants/routes.js +++ b/elevate-survey/constants/routes.js @@ -3130,6 +3130,16 @@ module.exports = { }, service: "survey" }, + { + sourceRoute: "/survey/v1/userExtension/mapUsersToPrograms", + type: "POST", + inSequence: false, + targetRoute: { + path: "/survey/v1/userExtension/mapUsersToPrograms", + type: "POST" + }, + service: "survey" + } ], } diff --git a/elevate-survey/package.json b/elevate-survey/package.json index 0426c2b8..2be6728b 100644 --- a/elevate-survey/package.json +++ b/elevate-survey/package.json @@ -1,6 +1,6 @@ { "name": "elevate-survey-observation", - "version": "1.0.18", + "version": "1.0.19", "description": "Npm package for Elevate-survey-observation service integration with Interface service", "main": "index.js", "scripts": { From 5ba16c94ca5d4d52d96ee5d76aefccb79796cf5e Mon Sep 17 00:00:00 2001 From: MallanagoudaB Date: Mon, 13 Oct 2025 17:06:56 +0530 Subject: [PATCH 070/105] routes-for-library-flow --- elevate-project/constants/routes.js | 44 +++++++++++++++++++++++++++++ elevate-project/package.json | 2 +- elevate-survey/constants/routes.js | 11 ++++++++ elevate-survey/package.json | 2 +- 4 files changed, 57 insertions(+), 2 deletions(-) diff --git a/elevate-project/constants/routes.js b/elevate-project/constants/routes.js index d7f527ee..a52661fd 100644 --- a/elevate-project/constants/routes.js +++ b/elevate-project/constants/routes.js @@ -474,6 +474,17 @@ module.exports = { }, service: "project" }, + { + sourceRoute: "/project/v1/project/templates/createChildProjectTemplate", + type: "POST", + inSequence: false, + orchestrated: false, + targetRoute: { + path: "/project/v1/project/templates/createChildProjectTemplate", + type: "POST" + }, + service: "project" + }, { sourceRoute: "/project/v1/project/templates/bulkUpdate", type: "POST", @@ -705,6 +716,39 @@ module.exports = { }, service: "project" }, + { + sourceRoute: "/project/v1/programs/publishToLibrary", + type: "POST", + inSequence: false, + orchestrated: false, + targetRoute: { + path: "/project/v1/programs/publishToLibrary", + type: "POST" + }, + service: "project" + }, + { + sourceRoute: "/project/v1/programs/ProgramUpdateForLibrary", + type: "POST", + inSequence: false, + orchestrated: false, + targetRoute: { + path: "/project/v1/programs/ProgramUpdateForLibrary", + type: "POST" + }, + service: "project" + }, + { + sourceRoute: "/project/v1/programs/ProgramUpdateForLibrary/:id", + type: "POST", + inSequence: false, + orchestrated: false, + targetRoute: { + path: "/project/v1/programs/ProgramUpdateForLibrary/:id", + type: "POST" + }, + service: "project" + }, { sourceRoute: "/project/v1/programs/update", type: "POST", diff --git a/elevate-project/package.json b/elevate-project/package.json index 02c59b7c..c997450e 100644 --- a/elevate-project/package.json +++ b/elevate-project/package.json @@ -1,6 +1,6 @@ { "name": "elevate-project", - "version": "1.1.50", + "version": "1.1.51", "description": "Npm package for Elevate-Project service integration with Interface service", "main": "index.js", "scripts": { diff --git a/elevate-survey/constants/routes.js b/elevate-survey/constants/routes.js index 8da5fabf..59889614 100644 --- a/elevate-survey/constants/routes.js +++ b/elevate-survey/constants/routes.js @@ -418,6 +418,17 @@ module.exports = { }, service:"survey" }, + { + sourceRoute: '/survey/v1/programs/fetchProgramDetails', + type: 'POST', + inSequence: false, + orchestrated: false, + targetRoute: { + path: '/survey/v1/programs/fetchProgramDetails', + type: 'POST' + }, + service:"survey" + }, { sourceRoute: '/survey/v1/programs/addEntitiesInScope/:id', type: 'POST', diff --git a/elevate-survey/package.json b/elevate-survey/package.json index 2be6728b..519e0bf6 100644 --- a/elevate-survey/package.json +++ b/elevate-survey/package.json @@ -1,6 +1,6 @@ { "name": "elevate-survey-observation", - "version": "1.0.19", + "version": "1.0.20", "description": "Npm package for Elevate-survey-observation service integration with Interface service", "main": "index.js", "scripts": { From f4ca7a7419fe507117f72097feb0f3606fa7aa31 Mon Sep 17 00:00:00 2001 From: Nevil Date: Wed, 15 Oct 2025 20:03:30 +0530 Subject: [PATCH 071/105] add: executeRawQuery admin api --- elevate-mentoring/constants/routes.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 817b55a2..31a2a581 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -2338,6 +2338,15 @@ module.exports = { type: 'POST', }, }, + { + sourceRoute: '/user/v1/admin/executeRawQuery', + type: 'POST', + service: 'user', + targetRoute: { + path: '/user/v1/admin/executeRawQuery', + type: 'POST', + }, + }, { sourceRoute: '/user/v1/notification/create', type: 'POST', From 4c1d23f2fa53ec08c071aacaa2e9e82a7d9b0d90 Mon Sep 17 00:00:00 2001 From: Nevil Date: Wed, 15 Oct 2025 20:09:31 +0530 Subject: [PATCH 072/105] update: package version --- elevate-mentoring/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 5aea5e5d..72a43300 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.86", + "version": "1.2.87", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 57318557ea52801be512f78aba922b10dcb2369a Mon Sep 17 00:00:00 2001 From: Nevil Date: Thu, 16 Oct 2025 17:36:56 +0530 Subject: [PATCH 073/105] add: get user/v1/notification/template --- elevate-mentoring/constants/routes.js | 9 +++++++++ elevate-mentoring/package.json | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 31a2a581..2dac034b 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -2410,6 +2410,15 @@ module.exports = { type: 'GET', }, }, + { + sourceRoute: '/user/v1/notification/template', + type: 'GET', + service: 'user', + targetRoute: { + path: '/user/v1/notification/template', + type: 'GET', + }, + }, { sourceRoute: '/user/v1/notification/template', type: 'PATCH', diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 72a43300..9d32c771 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.87", + "version": "1.2.88", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 20afc4b9e732eaa1db2d3e3520f06cda00f0d129 Mon Sep 17 00:00:00 2001 From: PraveenDass Date: Thu, 16 Oct 2025 20:27:03 +0530 Subject: [PATCH 074/105] fetch --- elevate-project/constants/routes.js | 22 ++++++++++++++++++++++ elevate-project/package.json | 2 +- elevate-survey/constants/routes.js | 22 ++++++++++++++++++++++ elevate-survey/package.json | 2 +- 4 files changed, 46 insertions(+), 2 deletions(-) diff --git a/elevate-project/constants/routes.js b/elevate-project/constants/routes.js index a52661fd..0445028f 100644 --- a/elevate-project/constants/routes.js +++ b/elevate-project/constants/routes.js @@ -1123,6 +1123,28 @@ module.exports = { }, service: "project" }, + { + sourceRoute: "/project/v1/solutions/fetchLinkInternal", + type: "GET", + inSequence: false, + orchestrated: false, + targetRoute: { + path: "/project/v1/solutions/fetchLinkInternal", + type: "GET" + }, + service: "project" + }, + { + sourceRoute: "/project/v1/solutions/fetchLinkInternal/:id", + type: "GET", + inSequence: false, + orchestrated: false, + targetRoute: { + path: "/project/v1/solutions/fetchLinkInternal/:id", + type: "GET" + }, + service: "project" + }, { sourceRoute: "/project/v1/solutions/verifyLink", type: "POST", diff --git a/elevate-project/package.json b/elevate-project/package.json index c997450e..0815b5fb 100644 --- a/elevate-project/package.json +++ b/elevate-project/package.json @@ -1,6 +1,6 @@ { "name": "elevate-project", - "version": "1.1.51", + "version": "1.1.52", "description": "Npm package for Elevate-Project service integration with Interface service", "main": "index.js", "scripts": { diff --git a/elevate-survey/constants/routes.js b/elevate-survey/constants/routes.js index 59889614..4a0849a5 100644 --- a/elevate-survey/constants/routes.js +++ b/elevate-survey/constants/routes.js @@ -198,6 +198,28 @@ module.exports = { }, service:"survey" }, + { + sourceRoute: '/survey/v1/solutions/fetchLinkInternal', + type: 'GET', + inSequence: false, + orchestrated: false, + targetRoute: { + path: '/survey/v1/solutions/fetchLinkInternal', + type: 'GET' + }, + service:"survey" + }, + { + sourceRoute: '/survey/v1/solutions/fetchLinkInternal/:id', + type: 'GET', + inSequence: false, + orchestrated: false, + targetRoute: { + path: '/survey/v1/solutions/fetchLinkInternal/:id', + type: 'GET' + }, + service:"survey" + }, { sourceRoute: '/survey/v1/solutions/update', type: 'POST', diff --git a/elevate-survey/package.json b/elevate-survey/package.json index 519e0bf6..476d9405 100644 --- a/elevate-survey/package.json +++ b/elevate-survey/package.json @@ -1,6 +1,6 @@ { "name": "elevate-survey-observation", - "version": "1.0.20", + "version": "1.0.21", "description": "Npm package for Elevate-survey-observation service integration with Interface service", "main": "index.js", "scripts": { From bef54eaf4d9465e4b1cab71a1403a2bd1a623229 Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Fri, 24 Oct 2025 09:46:33 +0530 Subject: [PATCH 075/105] Deep link API added for SCP --- sunbird-self-creation-portal/constants/routes.js | 11 +++++++++++ sunbird-self-creation-portal/package.json | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/sunbird-self-creation-portal/constants/routes.js b/sunbird-self-creation-portal/constants/routes.js index 995b19e8..656dce24 100644 --- a/sunbird-self-creation-portal/constants/routes.js +++ b/sunbird-self-creation-portal/constants/routes.js @@ -1106,5 +1106,16 @@ module.exports = { }, service: 'user', }, + { + sourceRoute: '/scp/v1/resource/getDeepLink', + type: 'GET', + inSequence: false, + orchestrated: false, + targetRoute: { + path: '/scp/v1/resource/getDeepLink', + type: 'GET', + }, + service: 'scp', + }, ], } diff --git a/sunbird-self-creation-portal/package.json b/sunbird-self-creation-portal/package.json index 83490c28..66f8e706 100644 --- a/sunbird-self-creation-portal/package.json +++ b/sunbird-self-creation-portal/package.json @@ -1,6 +1,6 @@ { "name": "sunbird-self-creation-portal", - "version": "1.0.5", + "version": "1.0.6", "description": "Sunbird Self Creation Portal Package", "main": "index.js", "scripts": { From 2b7cee86477daac0f8981edf95c94cc17d2558e3 Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Fri, 24 Oct 2025 09:47:52 +0530 Subject: [PATCH 076/105] Deep link API added for SCP --- elevate-self-creation-portal/constants/routes.js | 11 +++++++++++ elevate-self-creation-portal/package.json | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/elevate-self-creation-portal/constants/routes.js b/elevate-self-creation-portal/constants/routes.js index 08016c70..4f7862f1 100644 --- a/elevate-self-creation-portal/constants/routes.js +++ b/elevate-self-creation-portal/constants/routes.js @@ -802,5 +802,16 @@ module.exports = { }, service:"scp" }, + { + sourceRoute: '/scp/v1/resource/getDeepLink', + type: 'GET', + inSequence: false, + orchestrated: false, + targetRoute: { + path: '/scp/v1/resource/getDeepLink', + type: 'GET', + }, + service: 'scp', + }, ], } diff --git a/elevate-self-creation-portal/package.json b/elevate-self-creation-portal/package.json index 87996184..23b30d18 100644 --- a/elevate-self-creation-portal/package.json +++ b/elevate-self-creation-portal/package.json @@ -1,6 +1,6 @@ { "name": "elevate-self-creation-portal", - "version": "1.0.63", + "version": "1.0.64", "description": "Npm package for Elevate-self-creation-portal service integration with Interface service", "main": "index.js", "dependencies": { From 71dc90cff1c3219e6227c785766296c1cc727284 Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Fri, 24 Oct 2025 11:22:13 +0530 Subject: [PATCH 077/105] Deep link API added for SCP --- elevate-self-creation-portal/constants/routes.js | 1 - elevate-self-creation-portal/package.json | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/elevate-self-creation-portal/constants/routes.js b/elevate-self-creation-portal/constants/routes.js index 4f7862f1..3df9242c 100644 --- a/elevate-self-creation-portal/constants/routes.js +++ b/elevate-self-creation-portal/constants/routes.js @@ -811,7 +811,6 @@ module.exports = { path: '/scp/v1/resource/getDeepLink', type: 'GET', }, - service: 'scp', }, ], } diff --git a/elevate-self-creation-portal/package.json b/elevate-self-creation-portal/package.json index 23b30d18..bea60f5d 100644 --- a/elevate-self-creation-portal/package.json +++ b/elevate-self-creation-portal/package.json @@ -1,6 +1,6 @@ { "name": "elevate-self-creation-portal", - "version": "1.0.64", + "version": "1.0.65", "description": "Npm package for Elevate-self-creation-portal service integration with Interface service", "main": "index.js", "dependencies": { From 59d55034bd610c34705ba90cb8e27c3c476c1bca Mon Sep 17 00:00:00 2001 From: MallanagoudaB Date: Sat, 25 Oct 2025 15:03:47 +0530 Subject: [PATCH 078/105] kafka-fix --- health-check/services/kafka.js | 210 ++++++++++++++++----------------- 1 file changed, 103 insertions(+), 107 deletions(-) diff --git a/health-check/services/kafka.js b/health-check/services/kafka.js index f1728ac7..e830739e 100644 --- a/health-check/services/kafka.js +++ b/health-check/services/kafka.js @@ -8,130 +8,126 @@ const kafka = require('kafka-node'); const { v4: uuidv4 } = require('uuid'); -function ensureTopicExists(client, topicName) { +/** + * Ensure the given Kafka topic exists or create it. + */ +async function ensureTopicExists(client, topicName) { return new Promise((resolve, reject) => { client.loadMetadataForTopics([], (error, results) => { if (error) { - console.error('[Kafka Health Check] Failed to load topic metadata:', error); - return reject(error); + console.error('[Kafka Health Check] Metadata load error:', error) + return reject(error) } - const topics = results[1]?.metadata || {}; - const existingTopics = Object.keys(topics); - - if (existingTopics.includes(topicName)) { - console.log(`[Kafka Health Check] Topic '${topicName}' already exists.`); - return resolve(); + const topics = results?.[1]?.metadata || {} + if (topics[topicName]) { + console.log(`[Kafka Health Check] Topic '${topicName}' exists ✅`) + return resolve(true) } - console.log(`[Kafka Health Check] Topic '${topicName}' not found. Creating...`); - client.createTopics( - [ - { - topic: topicName, - partitions: 1, - replicationFactor: 1, - }, - ], - (error, result) => { - if (error) { - console.error('[Kafka Health Check] Topic creation failed:', error); - return reject(error); - } - console.log('[Kafka Health Check] Topic created:', result); - resolve(); - } - ); - }); - }); + console.log(`[Kafka Health Check] Topic '${topicName}' not found. Creating... ⏳`) + client.createTopics([{ topic: topicName, partitions: 1, replicationFactor: 1 }], (err) => { + if (err) return reject(err) + console.log(`[Kafka Health Check] Topic '${topicName}' created ✅`) + resolve(true) + }) + }) + }) } -async function check(kafkaUrl,topicName,groupId) { +/** + * Kafka health check + * @param {string} kafkaUrl Kafka bootstrap server + * @param {string} topicName Topic to check/create + * @param {string} groupId Consumer group (used if sendReceive=true) + * @param {boolean} sendReceive Optional: send and receive a message + */ +async function check(kafkaUrl, topicName, groupId, sendReceive = false) { return new Promise(async (resolve) => { - const pidSuffix = `-${process.pid}`; - const uniqueTopicName = `${topicName}${pidSuffix}`; - const uniqueGroupId = `${groupId}${pidSuffix}`; - console.log(`[Kafka Health Check] Connecting to Kafka at ${kafkaUrl}`); - const client = new kafka.KafkaClient({ kafkaHost: kafkaUrl }); + const pidSuffix = `-${process.pid}` + const uniqueTopicName = `${topicName}${pidSuffix}` + const uniqueGroupId = `${groupId}${pidSuffix}` + + let client + let producer + let consumer + let resolved = false + + const cleanup = (val) => { + if (resolved) return + resolved = true + try { + if (consumer) consumer.close(true) + if (client) client.close() + } catch (e) { + console.error('[Kafka Health Check] Cleanup error:', e.message) + } + resolve(val) + } try { - await ensureTopicExists(client, uniqueTopicName); - } catch (err) { - client.close(); - return resolve(false); - } + console.log(`[Kafka Health Check] Connecting to Kafka at ${kafkaUrl}`) + client = new kafka.KafkaClient({ kafkaHost: kafkaUrl }) - const messageId = `health-check-${uuidv4()}`; - const payloads = [ - { - topic: uniqueTopicName, - messages: messageId, - }, - ]; + // Step 1: Ensure topic exists + await ensureTopicExists(client, uniqueTopicName) - const producer = new kafka.Producer(client); + if (!sendReceive) { + console.log('[Kafka Health Check] Topic check complete.') + return cleanup(true) + } - producer.on('ready', () => { - console.log(`[Kafka Health Check] Producer ready. Sending message: ${messageId}`); + // Step 2: Setup producer + producer = new kafka.Producer(client) + await new Promise((res, rej) => { + producer.on('ready', res) + producer.on('error', rej) + }) + + // Step 3: Send message + const messageId = `health-check-${uuidv4()}` + const payloads = [{ topic: uniqueTopicName, messages: messageId }] + await new Promise((res, rej) => { + producer.send(payloads, (err) => { + if (err) return rej(err) + console.log(`[Kafka Health Check] Sent message: ${messageId}`) + res() + }) + }) + + // Step 4: Setup consumer and receive + consumer = new kafka.Consumer(client, [{ topic: uniqueTopicName, partition: 0 }], { + groupId: uniqueGroupId, + autoCommit: true, + fromOffset: false, + }) + + let received = false + const receiveTimeout = setTimeout(() => { + if (!received) { + console.error('[Kafka Health Check] Message not received in time') + cleanup(false) + } + }, 5000) - producer.send(payloads, (err, data) => { - if (err) { - console.error('[Kafka Health Check] Error sending message:', err); - client.close(); - return resolve(false); + consumer.on('message', (message) => { + if (message.value === messageId) { + clearTimeout(receiveTimeout) + console.log('[Kafka Health Check] Message received') + cleanup(true) } + }) - console.log('[Kafka Health Check] Message sent:', data); - - const consumer = new kafka.Consumer( - client, - [{ topic: uniqueTopicName, partition: 0 }], - { - groupId: uniqueGroupId, - fromOffset: false, - } - ); - - const timeout = setTimeout(() => { - console.error('[Kafka Health Check] Timed out waiting for message'); - consumer.close(true, () => { - client.close(); - resolve(false); - }); - }, 10000); - - consumer.on('message', (message) => { - console.log('[Kafka Health Check] Received message:', message.value); - if (message.value === messageId) { - clearTimeout(timeout); - consumer.close(true, () => { - client.close(); - resolve(true); - }); - } - }); - - consumer.on('error', (err) => { - console.error('[Kafka Health Check] Consumer error:', err); - clearTimeout(timeout); - consumer.close(true, () => { - client.close(); - resolve(false); - }); - }); - }); - }); - - producer.on('error', (err) => { - console.error('[Kafka Health Check] Producer error:', err); - client.close(); - return resolve(false); - }); - }); + consumer.on('error', (err) => { + console.error('[Kafka Health Check] Consumer error:', err.message) + clearTimeout(receiveTimeout) + cleanup(false) + }) + } catch (err) { + console.error('[Kafka Health Check] Health check failed:', err.message) + cleanup(false) + } + }) } -module.exports = { - check, -}; - - +module.exports = { check } From 01c8969af1e1da4ac57e4e68b61063a13066f245 Mon Sep 17 00:00:00 2001 From: MallanagoudaB Date: Sat, 25 Oct 2025 15:05:06 +0530 Subject: [PATCH 079/105] kafka-fix --- health-check/services/kafka.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/health-check/services/kafka.js b/health-check/services/kafka.js index e830739e..92f44d82 100644 --- a/health-check/services/kafka.js +++ b/health-check/services/kafka.js @@ -5,8 +5,8 @@ * Description : Kafka health check functionality (send + receive). */ -const kafka = require('kafka-node'); -const { v4: uuidv4 } = require('uuid'); +const kafka = require('kafka-node') +const { v4: uuidv4 } = require('uuid') /** * Ensure the given Kafka topic exists or create it. From f00bc08a058080e3c5d538250e9c3ad353d53823 Mon Sep 17 00:00:00 2001 From: MallanagoudaB Date: Sat, 25 Oct 2025 15:06:41 +0530 Subject: [PATCH 080/105] kafka-fix --- health-check/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/health-check/package.json b/health-check/package.json index e496d08e..affb5376 100644 --- a/health-check/package.json +++ b/health-check/package.json @@ -1,6 +1,6 @@ { "name": "elevate-services-health-check", - "version": "0.0.5", + "version": "0.0.6", "description": "Package that can be used for service health check", "main": "index.js", "scripts": { From 0c9a1926cc348ee08b6a8493e91559fc791eeca3 Mon Sep 17 00:00:00 2001 From: Nevil Date: Mon, 27 Oct 2025 23:26:15 +0530 Subject: [PATCH 081/105] add: assignRole endpoint --- elevate-mentoring/constants/routes.js | 9 +++++++++ elevate-mentoring/package.json | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 2dac034b..455c8024 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -2266,6 +2266,15 @@ module.exports = { type: 'POST', }, }, + { + sourceRoute: '/user/v1/admin/assignRole', + type: 'POST', + service: 'user', + targetRoute: { + path: '/user/v1/admin/assignRole', + type: 'POST', + }, + }, { sourceRoute: '/user/v1/org-admin/bulkUserCreate', type: 'POST', diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 9d32c771..e541e17e 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.88", + "version": "1.2.89", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 6c928dcd5a57cb23f250f5298694872539f792ad Mon Sep 17 00:00:00 2001 From: Rocky Date: Wed, 29 Oct 2025 16:41:17 +0530 Subject: [PATCH 082/105] removing unused menroring routes --- elevate-mentoring/constants/routes.js | 26 -------------------------- 1 file changed, 26 deletions(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 455c8024..3aa8efb3 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -862,32 +862,6 @@ module.exports = { type: 'DELETE', }, }, - { - sourceRoute: '/interface/v1/account/create', - type: 'POST', - inSequence: false, - orchestrated: true, - service: 'mentoring', - targetRoute: { - service: 'mentoring', - path: '/mentoring/v1/profile/create', - type: 'POST', - functionName: 'createProfile', - }, - }, - { - sourceRoute: '/interface/v1/account/update', - type: 'POST', - inSequence: false, - orchestrated: true, - service: 'mentoring', - targetRoute: { - service: 'mentoring', - path: '/mentoring/v1/profile/update/', - type: 'POST', - functionName: 'updateUser', - }, - }, { sourceRoute: '/interface/v1/entity-type/read', type: 'POST', From 8a54e9541173fb6a3b9b5b4e67be4d117a7dfc28 Mon Sep 17 00:00:00 2001 From: Rocky Date: Wed, 29 Oct 2025 16:42:15 +0530 Subject: [PATCH 083/105] package verion change --- elevate-mentoring/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index e541e17e..9ea520c8 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.89", + "version": "1.2.91", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 1d4baf105028d4010bbd0260b31a3949d0242098 Mon Sep 17 00:00:00 2001 From: Rocky <49852443+rakeshSgr@users.noreply.github.com> Date: Wed, 29 Oct 2025 16:54:57 +0530 Subject: [PATCH 084/105] Update elevate-qa-routes.json --- interface-routes/elevate-qa-routes.json | 44 ++----------------------- 1 file changed, 3 insertions(+), 41 deletions(-) diff --git a/interface-routes/elevate-qa-routes.json b/interface-routes/elevate-qa-routes.json index 701e789c..5034e475 100644 --- a/interface-routes/elevate-qa-routes.json +++ b/interface-routes/elevate-qa-routes.json @@ -11531,23 +11531,8 @@ "targetField": "user.user_updated_at" } ] - }, - { - "service": "mentoring", - "basePackageName": "mentoring", - "packageName": "elevate-mentoring", - "targetBody": [], - "responseBody": [ - { - "sourceField": "created_at", - "targetField": "profile_created_at" - }, - { - "sourceField": "updated_at", - "targetField": "profile_updated_at" - } - ] } + ] }, { @@ -11581,31 +11566,8 @@ "targetField": "user_deleted_at" } ] - }, - { - "service": "mentoring", - "basePackageName": "mentoring", - "packageName": "elevate-mentoring", - "targetBody": [], - "responseBody": [ - { - "sourceField": "created_at", - "targetField": "profile_created_at" - }, - { - "sourceField": "updated_at", - "targetField": "profile_updated_at" - }, - { - "sourceField": "meta", - "targetField": "profile_meta" - }, - { - "sourceField": "deleted_at", - "targetField": "profile_deleted_at" - } - ] } + ] }, { @@ -12660,4 +12622,4 @@ ] } ] -} \ No newline at end of file +} From dea7f9ca0c8f268afbe5c86bb6b7be1c0b7c6427 Mon Sep 17 00:00:00 2001 From: Rocky <49852443+rakeshSgr@users.noreply.github.com> Date: Wed, 29 Oct 2025 17:57:41 +0530 Subject: [PATCH 085/105] Update elevate-routes.json --- interface-routes/elevate-routes.json | 42 +--------------------------- 1 file changed, 1 insertion(+), 41 deletions(-) diff --git a/interface-routes/elevate-routes.json b/interface-routes/elevate-routes.json index 3cdf208e..6681c9c5 100644 --- a/interface-routes/elevate-routes.json +++ b/interface-routes/elevate-routes.json @@ -11696,22 +11696,6 @@ "targetField": "user.user_updated_at" } ] - }, - { - "service": "mentoring", - "basePackageName": "mentoring", - "packageName": "elevate-mentoring", - "targetBody": [], - "responseBody": [ - { - "sourceField": "created_at", - "targetField": "profile_created_at" - }, - { - "sourceField": "updated_at", - "targetField": "profile_updated_at" - } - ] } ] }, @@ -11746,30 +11730,6 @@ "targetField": "user_deleted_at" } ] - }, - { - "service": "mentoring", - "basePackageName": "mentoring", - "packageName": "elevate-mentoring", - "targetBody": [], - "responseBody": [ - { - "sourceField": "created_at", - "targetField": "profile_created_at" - }, - { - "sourceField": "updated_at", - "targetField": "profile_updated_at" - }, - { - "sourceField": "meta", - "targetField": "profile_meta" - }, - { - "sourceField": "deleted_at", - "targetField": "profile_deleted_at" - } - ] } ] }, @@ -14166,4 +14126,4 @@ ] } ] -} \ No newline at end of file +} From f78fb7a13236f5f7e6de50a607d1076897620dc7 Mon Sep 17 00:00:00 2001 From: Rocky <49852443+rakeshSgr@users.noreply.github.com> Date: Thu, 30 Oct 2025 10:16:53 +0530 Subject: [PATCH 086/105] Update elevate-routes.json --- interface-routes/elevate-routes.json | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/interface-routes/elevate-routes.json b/interface-routes/elevate-routes.json index 6681c9c5..e7f498cb 100644 --- a/interface-routes/elevate-routes.json +++ b/interface-routes/elevate-routes.json @@ -11730,6 +11730,30 @@ "targetField": "user_deleted_at" } ] + }, + { + "service": "mentoring", + "basePackageName": "mentoring", + "packageName": "elevate-mentoring", + "targetBody": [], + "responseBody": [ + { + "sourceField": "created_at", + "targetField": "profile_created_at" + }, + { + "sourceField": "updated_at", + "targetField": "profile_updated_at" + }, + { + "sourceField": "meta", + "targetField": "profile_meta" + }, + { + "sourceField": "deleted_at", + "targetField": "profile_deleted_at" + } + ] } ] }, From 4b27b574fde39713b957b8b1d92bb59fe8df95c5 Mon Sep 17 00:00:00 2001 From: Rocky <49852443+rakeshSgr@users.noreply.github.com> Date: Thu, 30 Oct 2025 10:18:13 +0530 Subject: [PATCH 087/105] Update elevate-qa-routes.json --- interface-routes/elevate-qa-routes.json | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/interface-routes/elevate-qa-routes.json b/interface-routes/elevate-qa-routes.json index 5034e475..37d57c30 100644 --- a/interface-routes/elevate-qa-routes.json +++ b/interface-routes/elevate-qa-routes.json @@ -11566,6 +11566,30 @@ "targetField": "user_deleted_at" } ] + }, + { + "service": "mentoring", + "basePackageName": "mentoring", + "packageName": "elevate-mentoring", + "targetBody": [], + "responseBody": [ + { + "sourceField": "created_at", + "targetField": "profile_created_at" + }, + { + "sourceField": "updated_at", + "targetField": "profile_updated_at" + }, + { + "sourceField": "meta", + "targetField": "profile_meta" + }, + { + "sourceField": "deleted_at", + "targetField": "profile_deleted_at" + } + ] } ] From ea73e2b20a312c9cd451c424702f7457c7f3a67f Mon Sep 17 00:00:00 2001 From: Rocky Date: Thu, 30 Oct 2025 10:31:46 +0530 Subject: [PATCH 088/105] package changes --- elevate-mentoring/constants/routes.js | 13 +++++++++++++ elevate-mentoring/package.json | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 3aa8efb3..4566082a 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -1573,6 +1573,19 @@ module.exports = { functionName: 'updateUser', }, }, + { + sourceRoute: '/interface/v1/account/update', + type: 'POST', + inSequence: false, + orchestrated: true, + service: 'mentoring', + targetRoute: { + service: 'mentoring', + path: '/mentoring/v1/profile/update/', + type: 'POST', + functionName: 'updateUser', + }, + }, { sourceRoute: '/interface/user-signup', type: 'POST', diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index 9ea520c8..eacf4d1e 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.91", + "version": "1.2.92", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From dacd6546e7de2c057e4d3aed2fdc0220d95162c7 Mon Sep 17 00:00:00 2001 From: MallanagoudaB Date: Thu, 30 Oct 2025 15:43:43 +0530 Subject: [PATCH 089/105] added-debug-for-logs --- health-check/services/kafka.js | 44 +++++++++++++++++++++++++--------- 1 file changed, 33 insertions(+), 11 deletions(-) diff --git a/health-check/services/kafka.js b/health-check/services/kafka.js index 92f44d82..b737f06a 100644 --- a/health-check/services/kafka.js +++ b/health-check/services/kafka.js @@ -15,7 +15,9 @@ async function ensureTopicExists(client, topicName) { return new Promise((resolve, reject) => { client.loadMetadataForTopics([], (error, results) => { if (error) { - console.error('[Kafka Health Check] Metadata load error:', error) + if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + console.error('[Kafka Health Check] Metadata load error:', error) + } return reject(error) } @@ -25,10 +27,14 @@ async function ensureTopicExists(client, topicName) { return resolve(true) } - console.log(`[Kafka Health Check] Topic '${topicName}' not found. Creating... ⏳`) + if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + console.log(`[Kafka Health Check] Topic '${topicName}' not found. Creating... ⏳`) + } client.createTopics([{ topic: topicName, partitions: 1, replicationFactor: 1 }], (err) => { if (err) return reject(err) - console.log(`[Kafka Health Check] Topic '${topicName}' created ✅`) + if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + console.log(`[Kafka Health Check] Topic '${topicName}' created ✅`) + } resolve(true) }) }) @@ -60,20 +66,26 @@ async function check(kafkaUrl, topicName, groupId, sendReceive = false) { if (consumer) consumer.close(true) if (client) client.close() } catch (e) { - console.error('[Kafka Health Check] Cleanup error:', e.message) + if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + console.error('[Kafka Health Check] Cleanup error:', e.message) + } } resolve(val) } try { - console.log(`[Kafka Health Check] Connecting to Kafka at ${kafkaUrl}`) + if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + console.log(`[Kafka Health Check] Connecting to Kafka at ${kafkaUrl}`) + } client = new kafka.KafkaClient({ kafkaHost: kafkaUrl }) // Step 1: Ensure topic exists await ensureTopicExists(client, uniqueTopicName) if (!sendReceive) { - console.log('[Kafka Health Check] Topic check complete.') + if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + console.log('[Kafka Health Check] Topic check complete.') + } return cleanup(true) } @@ -90,7 +102,9 @@ async function check(kafkaUrl, topicName, groupId, sendReceive = false) { await new Promise((res, rej) => { producer.send(payloads, (err) => { if (err) return rej(err) - console.log(`[Kafka Health Check] Sent message: ${messageId}`) + if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + console.log(`[Kafka Health Check] Sent message: ${messageId}`) + } res() }) }) @@ -105,7 +119,9 @@ async function check(kafkaUrl, topicName, groupId, sendReceive = false) { let received = false const receiveTimeout = setTimeout(() => { if (!received) { - console.error('[Kafka Health Check] Message not received in time') + if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + console.error('[Kafka Health Check] Message not received in time') + } cleanup(false) } }, 5000) @@ -113,18 +129,24 @@ async function check(kafkaUrl, topicName, groupId, sendReceive = false) { consumer.on('message', (message) => { if (message.value === messageId) { clearTimeout(receiveTimeout) - console.log('[Kafka Health Check] Message received') + if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + console.log('[Kafka Health Check] Message received') + } cleanup(true) } }) consumer.on('error', (err) => { - console.error('[Kafka Health Check] Consumer error:', err.message) + if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + console.error('[Kafka Health Check] Consumer error:', err.message) + } clearTimeout(receiveTimeout) cleanup(false) }) } catch (err) { - console.error('[Kafka Health Check] Health check failed:', err.message) + if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + console.error('[Kafka Health Check] Health check failed:', err.message) + } cleanup(false) } }) From 4fd302be2c6114e0b75f51f167bd2bf4399c88b0 Mon Sep 17 00:00:00 2001 From: MallanagoudaB Date: Thu, 30 Oct 2025 16:01:08 +0530 Subject: [PATCH 090/105] fix-for-kafka --- health-check/services/kafka.js | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/health-check/services/kafka.js b/health-check/services/kafka.js index b737f06a..ac0db3d1 100644 --- a/health-check/services/kafka.js +++ b/health-check/services/kafka.js @@ -8,6 +8,9 @@ const kafka = require('kafka-node') const { v4: uuidv4 } = require('uuid') +// Use environment variable or default to false +const DEBUG_MODE = process.env.HEALTH_CHECK_DEBUG_MODE + /** * Ensure the given Kafka topic exists or create it. */ @@ -15,7 +18,7 @@ async function ensureTopicExists(client, topicName) { return new Promise((resolve, reject) => { client.loadMetadataForTopics([], (error, results) => { if (error) { - if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + if (DEBUG_MODE) { console.error('[Kafka Health Check] Metadata load error:', error) } return reject(error) @@ -23,16 +26,18 @@ async function ensureTopicExists(client, topicName) { const topics = results?.[1]?.metadata || {} if (topics[topicName]) { - console.log(`[Kafka Health Check] Topic '${topicName}' exists ✅`) + if (DEBUG_MODE) { + console.log(`[Kafka Health Check] Topic '${topicName}' exists ✅`) + } return resolve(true) } - if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + if (DEBUG_MODE) { console.log(`[Kafka Health Check] Topic '${topicName}' not found. Creating... ⏳`) } client.createTopics([{ topic: topicName, partitions: 1, replicationFactor: 1 }], (err) => { if (err) return reject(err) - if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + if (DEBUG_MODE) { console.log(`[Kafka Health Check] Topic '${topicName}' created ✅`) } resolve(true) @@ -66,7 +71,7 @@ async function check(kafkaUrl, topicName, groupId, sendReceive = false) { if (consumer) consumer.close(true) if (client) client.close() } catch (e) { - if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + if (DEBUG_MODE) { console.error('[Kafka Health Check] Cleanup error:', e.message) } } @@ -74,7 +79,7 @@ async function check(kafkaUrl, topicName, groupId, sendReceive = false) { } try { - if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + if (DEBUG_MODE) { console.log(`[Kafka Health Check] Connecting to Kafka at ${kafkaUrl}`) } client = new kafka.KafkaClient({ kafkaHost: kafkaUrl }) @@ -83,7 +88,7 @@ async function check(kafkaUrl, topicName, groupId, sendReceive = false) { await ensureTopicExists(client, uniqueTopicName) if (!sendReceive) { - if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + if (DEBUG_MODE) { console.log('[Kafka Health Check] Topic check complete.') } return cleanup(true) @@ -102,7 +107,7 @@ async function check(kafkaUrl, topicName, groupId, sendReceive = false) { await new Promise((res, rej) => { producer.send(payloads, (err) => { if (err) return rej(err) - if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + if (DEBUG_MODE) { console.log(`[Kafka Health Check] Sent message: ${messageId}`) } res() @@ -119,7 +124,7 @@ async function check(kafkaUrl, topicName, groupId, sendReceive = false) { let received = false const receiveTimeout = setTimeout(() => { if (!received) { - if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + if (DEBUG_MODE) { console.error('[Kafka Health Check] Message not received in time') } cleanup(false) @@ -129,7 +134,7 @@ async function check(kafkaUrl, topicName, groupId, sendReceive = false) { consumer.on('message', (message) => { if (message.value === messageId) { clearTimeout(receiveTimeout) - if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + if (DEBUG_MODE) { console.log('[Kafka Health Check] Message received') } cleanup(true) @@ -137,14 +142,14 @@ async function check(kafkaUrl, topicName, groupId, sendReceive = false) { }) consumer.on('error', (err) => { - if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + if (DEBUG_MODE) { console.error('[Kafka Health Check] Consumer error:', err.message) } clearTimeout(receiveTimeout) cleanup(false) }) } catch (err) { - if (process.env.HEALTH_CHECK_DEBUG_MODE == 'true') { + if (DEBUG_MODE) { console.error('[Kafka Health Check] Health check failed:', err.message) } cleanup(false) From bc6caf5a96b7bd6b099550d86e931b4296b8cb24 Mon Sep 17 00:00:00 2001 From: MallanagoudaB Date: Thu, 30 Oct 2025 16:01:34 +0530 Subject: [PATCH 091/105] fix-for-kafka --- health-check/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/health-check/package.json b/health-check/package.json index affb5376..338b5e0f 100644 --- a/health-check/package.json +++ b/health-check/package.json @@ -1,6 +1,6 @@ { "name": "elevate-services-health-check", - "version": "0.0.6", + "version": "0.0.7", "description": "Package that can be used for service health check", "main": "index.js", "scripts": { From c0a948e37036e492096ba2672ca9394cfc70b096 Mon Sep 17 00:00:00 2001 From: MallanagoudaB Date: Thu, 30 Oct 2025 16:08:45 +0530 Subject: [PATCH 092/105] fix-for-kafka --- health-check/services/kafka.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/health-check/services/kafka.js b/health-check/services/kafka.js index ac0db3d1..b9c4e6c7 100644 --- a/health-check/services/kafka.js +++ b/health-check/services/kafka.js @@ -9,7 +9,7 @@ const kafka = require('kafka-node') const { v4: uuidv4 } = require('uuid') // Use environment variable or default to false -const DEBUG_MODE = process.env.HEALTH_CHECK_DEBUG_MODE +const DEBUG_MODE = process.env.HEALTH_CHECK_DEBUG_MODE === 'true' ? true : false /** * Ensure the given Kafka topic exists or create it. From c54f1d8f3ac90925fc623d252a4ba3bcf7bb9fc3 Mon Sep 17 00:00:00 2001 From: PraveenDass Date: Fri, 31 Oct 2025 01:34:45 +0530 Subject: [PATCH 093/105] scp packages version changes --- .../constants/routes.js | 20 +++++++++++++++++++ elevate-self-creation-portal/package.json | 2 +- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/elevate-self-creation-portal/constants/routes.js b/elevate-self-creation-portal/constants/routes.js index 3df9242c..5b723d76 100644 --- a/elevate-self-creation-portal/constants/routes.js +++ b/elevate-self-creation-portal/constants/routes.js @@ -812,5 +812,25 @@ module.exports = { type: 'GET', }, }, + { + sourceRoute: '/scp/v1/config/createOrUpdate', + type: 'POST', + inSequence: false, + orchestrated: false, + targetRoute: { + path: '/scp/v1/resource/getDeepLink', + type: 'GET', + }, + }, + { + sourceRoute: '/scp/v1/config/updateRelatedOrgs', + type: 'POST', + inSequence: false, + orchestrated: false, + targetRoute: { + path: '/scp/v1/resource/getDeepLink', + type: 'GET', + }, + }, ], } diff --git a/elevate-self-creation-portal/package.json b/elevate-self-creation-portal/package.json index bea60f5d..d3a84c14 100644 --- a/elevate-self-creation-portal/package.json +++ b/elevate-self-creation-portal/package.json @@ -1,6 +1,6 @@ { "name": "elevate-self-creation-portal", - "version": "1.0.65", + "version": "1.0.66", "description": "Npm package for Elevate-self-creation-portal service integration with Interface service", "main": "index.js", "dependencies": { From 178e86a56d1994e6c4d9c9c3380da6384c618e71 Mon Sep 17 00:00:00 2001 From: priyanka-TL Date: Tue, 4 Nov 2025 00:40:21 +0530 Subject: [PATCH 094/105] add republish route for project with POST method --- elevate-self-creation-portal/constants/routes.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/elevate-self-creation-portal/constants/routes.js b/elevate-self-creation-portal/constants/routes.js index 3df9242c..ff76d698 100644 --- a/elevate-self-creation-portal/constants/routes.js +++ b/elevate-self-creation-portal/constants/routes.js @@ -812,5 +812,15 @@ module.exports = { type: 'GET', }, }, + { + sourceRoute: '/scp/v1/projects/republish/:id', + type: 'POST', + inSequence: false, + orchestrated: false, + targetRoute: { + path: '/scp/v1/projects/republish/:id', + type: 'POST', + }, + } ], } From bc8f2365947f4e2d491dea24ad12d584f0bceaf3 Mon Sep 17 00:00:00 2001 From: priyanka-TL Date: Tue, 4 Nov 2025 00:43:34 +0530 Subject: [PATCH 095/105] bump version to 1.0.66 in package.json --- elevate-self-creation-portal/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-self-creation-portal/package.json b/elevate-self-creation-portal/package.json index bea60f5d..d3a84c14 100644 --- a/elevate-self-creation-portal/package.json +++ b/elevate-self-creation-portal/package.json @@ -1,6 +1,6 @@ { "name": "elevate-self-creation-portal", - "version": "1.0.65", + "version": "1.0.66", "description": "Npm package for Elevate-self-creation-portal service integration with Interface service", "main": "index.js", "dependencies": { From c7a00ca80a6d7b08b3092e1722a2c1a9327a4b8f Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Tue, 4 Nov 2025 16:59:21 +0530 Subject: [PATCH 096/105] SCP - Entity management related APIs added --- .../constants/routes.js | 22 ++++++++++++++++++- elevate-self-creation-portal/package.json | 2 +- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/elevate-self-creation-portal/constants/routes.js b/elevate-self-creation-portal/constants/routes.js index ff76d698..5f784d44 100644 --- a/elevate-self-creation-portal/constants/routes.js +++ b/elevate-self-creation-portal/constants/routes.js @@ -821,6 +821,26 @@ module.exports = { path: '/scp/v1/projects/republish/:id', type: 'POST', }, - } + }, + { + sourceRoute: '/scp/v1/targeting/hierarchy/:id', + type: 'GET', + inSequence: false, + orchestrated: false, + targetRoute: { + path: '/scp/v1/targeting/hierarchy/:id', + type: 'GET', + }, + }, + { + sourceRoute: '/scp/v1/targeting/subEntityList', + type: 'POST', + inSequence: false, + orchestrated: false, + targetRoute: { + path: '/scp/v1/targeting/subEntityList', + type: 'POST', + }, + }, ], } diff --git a/elevate-self-creation-portal/package.json b/elevate-self-creation-portal/package.json index d3a84c14..db7bb85e 100644 --- a/elevate-self-creation-portal/package.json +++ b/elevate-self-creation-portal/package.json @@ -1,6 +1,6 @@ { "name": "elevate-self-creation-portal", - "version": "1.0.66", + "version": "1.0.67", "description": "Npm package for Elevate-self-creation-portal service integration with Interface service", "main": "index.js", "dependencies": { From 21b5dcf29d8b98c2b0a25fcb97911bb98a7ded64 Mon Sep 17 00:00:00 2001 From: borkarsaish65 Date: Tue, 4 Nov 2025 20:43:43 +0530 Subject: [PATCH 097/105] feat:new route added --- interface-routes/elevate-qa-routes.json | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/interface-routes/elevate-qa-routes.json b/interface-routes/elevate-qa-routes.json index 701e789c..97600248 100644 --- a/interface-routes/elevate-qa-routes.json +++ b/interface-routes/elevate-qa-routes.json @@ -3477,6 +3477,19 @@ } ] }, + { + "sourceRoute": "/mentoring/v1/connections/checkConnection", + "type": "POST", + "priority": "MUST_HAVE", + "inSequence": false, + "orchestrated": false, + "targetPackages": [ + { + "basePackageName": "mentoring", + "packageName": "elevate-mentoring" + } + ] + }, { "sourceRoute": "/mentoring/v1/profile/externalIdMapping", "type": "POST", From 37256e5a0e29cd5cfc34f17c28206e6b95247488 Mon Sep 17 00:00:00 2001 From: borkarsaish65 Date: Tue, 4 Nov 2025 20:50:06 +0530 Subject: [PATCH 098/105] savepoint --- elevate-mentoring/constants/routes.js | 8 ++++++++ elevate-mentoring/package.json | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/elevate-mentoring/constants/routes.js b/elevate-mentoring/constants/routes.js index 4566082a..958c12d9 100644 --- a/elevate-mentoring/constants/routes.js +++ b/elevate-mentoring/constants/routes.js @@ -2851,6 +2851,14 @@ module.exports = { type: 'POST', }, }, + { + sourceRoute: '/mentoring/v1/connections/checkConnection', + type: 'POST', + targetRoute: { + path: '/mentoring/v1/connections/checkConnection', + type: 'POST', + }, + }, { sourceRoute: '/mentoring/v1/connections/list', type: 'GET', diff --git a/elevate-mentoring/package.json b/elevate-mentoring/package.json index eacf4d1e..8328c74c 100644 --- a/elevate-mentoring/package.json +++ b/elevate-mentoring/package.json @@ -1,6 +1,6 @@ { "name": "elevate-mentoring", - "version": "1.2.92", + "version": "1.2.93", "description": "Npm package for Elevate-Mentoring service integration with Interface service. ", "main": "index.js", "scripts": { From 2c68eaa2a0c2b73102cb396e48212e8fdf098468 Mon Sep 17 00:00:00 2001 From: Rocky <49852443+rakeshSgr@users.noreply.github.com> Date: Tue, 4 Nov 2025 21:32:55 +0530 Subject: [PATCH 099/105] Update elevate-routes.json --- interface-routes/elevate-routes.json | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/interface-routes/elevate-routes.json b/interface-routes/elevate-routes.json index b953af23..f9fc0e98 100644 --- a/interface-routes/elevate-routes.json +++ b/interface-routes/elevate-routes.json @@ -14187,6 +14187,19 @@ "packageName": "elevate-self-creation-portal" } ] + }, + { + "sourceRoute": "/mentoring/v1/connections/checkConnection", + "type": "POST", + "priority": "MUST_HAVE", + "inSequence": false, + "orchestrated": false, + "targetPackages": [ + { + "basePackageName": "mentoring", + "packageName": "elevate-mentoring" + } + ] } ] } From 16abc77ce8bb0ae4eacc9fed65c5069397ef2ba8 Mon Sep 17 00:00:00 2001 From: PraveenDass Date: Thu, 6 Nov 2025 16:12:03 +0530 Subject: [PATCH 100/105] PR comments --- elevate-self-creation-portal/constants/routes.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/elevate-self-creation-portal/constants/routes.js b/elevate-self-creation-portal/constants/routes.js index 5b723d76..2a883767 100644 --- a/elevate-self-creation-portal/constants/routes.js +++ b/elevate-self-creation-portal/constants/routes.js @@ -818,8 +818,8 @@ module.exports = { inSequence: false, orchestrated: false, targetRoute: { - path: '/scp/v1/resource/getDeepLink', - type: 'GET', + path: '/scp/v1/config/createOrUpdate', + type: 'POST', }, }, { @@ -828,8 +828,8 @@ module.exports = { inSequence: false, orchestrated: false, targetRoute: { - path: '/scp/v1/resource/getDeepLink', - type: 'GET', + path: '/scp/v1/config/updateRelatedOrgs', + type: 'POST', }, }, ], From 0bc9a96073801d5103018265067c91d50118a339 Mon Sep 17 00:00:00 2001 From: PraveenDass Date: Thu, 6 Nov 2025 16:15:01 +0530 Subject: [PATCH 101/105] PR comments --- elevate-self-creation-portal/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elevate-self-creation-portal/package.json b/elevate-self-creation-portal/package.json index db7bb85e..4cb21bcb 100644 --- a/elevate-self-creation-portal/package.json +++ b/elevate-self-creation-portal/package.json @@ -1,6 +1,6 @@ { "name": "elevate-self-creation-portal", - "version": "1.0.67", + "version": "1.0.68", "description": "Npm package for Elevate-self-creation-portal service integration with Interface service", "main": "index.js", "dependencies": { From 96f232a75f1b56a1ef830357a700bd32eb0c0cc3 Mon Sep 17 00:00:00 2001 From: MallanagoudaB Date: Mon, 10 Nov 2025 12:01:29 +0530 Subject: [PATCH 102/105] getting-version-from-package-file --- health-check/index.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/health-check/index.js b/health-check/index.js index 91fc9caa..8a9d4b57 100644 --- a/health-check/index.js +++ b/health-check/index.js @@ -16,7 +16,7 @@ const httpService = require('./services/httpService') * @param {string} [currentServiceName=''] - Optional. Name of the current service to avoid self-check. * @returns {Promise} - A formatted response with health check results. */ -async function healthCheckHandler(config, basicCheck = false, currentServiceName = '') { +async function healthCheckHandler(config, basicCheck = false, currentServiceName = '', serviceVersion) { validateHealthConfig(config) const checks = [] @@ -35,7 +35,7 @@ async function healthCheckHandler(config, basicCheck = false, currentServiceName if (config?.checks?.kafka?.enabled) { try { const kafka = require('./services/kafka') - const healthy = await kafka.check(config.checks.kafka.url, config.checks.kafka.topic) + const healthy = await kafka.check(config.checks.kafka.url, config.checks.kafka.topic,config.checks.kafka.groupId) checks.push(serviceResult('Kafka', healthy)) } catch (err) { checks.push(serviceResult('Kafka', false)) @@ -102,7 +102,7 @@ async function healthCheckHandler(config, basicCheck = false, currentServiceName checks, } - return formatResponse(result) + return formatResponse(result,serviceVersion) } /** @@ -193,10 +193,10 @@ function validateHealthConfig(config) { * @param {Object} result - The object containing service name, version, healthy status, and checks. * @returns {Object} - The formatted response object. */ -function formatResponse(result) { +function formatResponse(result,serviceVersion) { return { id: 'service.health.api', - ver: '1.0', + version: serviceVersion, ts: new Date(), params: { resmsgid: uuidv1(), From d032e9e89377a729e6d00122ffc217bc3b958f55 Mon Sep 17 00:00:00 2001 From: MallanagoudaB Date: Mon, 10 Nov 2025 12:02:31 +0530 Subject: [PATCH 103/105] getting-version-from-package-file --- health-check/index.js | 2 +- health-check/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/health-check/index.js b/health-check/index.js index 8a9d4b57..f444efdf 100644 --- a/health-check/index.js +++ b/health-check/index.js @@ -35,7 +35,7 @@ async function healthCheckHandler(config, basicCheck = false, currentServiceName if (config?.checks?.kafka?.enabled) { try { const kafka = require('./services/kafka') - const healthy = await kafka.check(config.checks.kafka.url, config.checks.kafka.topic,config.checks.kafka.groupId) + const healthy = await kafka.check(config.checks.kafka.url, config.checks.kafka.topic) checks.push(serviceResult('Kafka', healthy)) } catch (err) { checks.push(serviceResult('Kafka', false)) diff --git a/health-check/package.json b/health-check/package.json index 338b5e0f..72839545 100644 --- a/health-check/package.json +++ b/health-check/package.json @@ -1,6 +1,6 @@ { "name": "elevate-services-health-check", - "version": "0.0.7", + "version": "0.0.8", "description": "Package that can be used for service health check", "main": "index.js", "scripts": { From b775e2ca20eebb3f9d959fbee83912ce0bc8a8ae Mon Sep 17 00:00:00 2001 From: adithya_dinesh Date: Tue, 11 Nov 2025 11:26:28 +0530 Subject: [PATCH 104/105] scp api update --- elevate-self-creation-portal/constants/routes.js | 4 ++-- elevate-self-creation-portal/package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/elevate-self-creation-portal/constants/routes.js b/elevate-self-creation-portal/constants/routes.js index e0e07d19..1741ab2e 100644 --- a/elevate-self-creation-portal/constants/routes.js +++ b/elevate-self-creation-portal/constants/routes.js @@ -470,13 +470,13 @@ module.exports = { }, }, { - sourceRoute: '/scp/v1/role-permission-mapping/create/:role_id', + sourceRoute: '/scp/v1/role-permission-mapping/create', type: 'POST', priority: 'MUST_HAVE', inSequence: false, orchestrated: false, targetRoute: { - path: '/scp/v1/role-permission-mapping/create/:role_id', + path: '/scp/v1/role-permission-mapping/create', type: 'POST', }, }, diff --git a/elevate-self-creation-portal/package.json b/elevate-self-creation-portal/package.json index 4cb21bcb..f7f23892 100644 --- a/elevate-self-creation-portal/package.json +++ b/elevate-self-creation-portal/package.json @@ -1,6 +1,6 @@ { "name": "elevate-self-creation-portal", - "version": "1.0.68", + "version": "1.0.69", "description": "Npm package for Elevate-self-creation-portal service integration with Interface service", "main": "index.js", "dependencies": { From eb37ddd66c553a7b8a3553e3f27d211f3a889383 Mon Sep 17 00:00:00 2001 From: MallanagoudaB Date: Thu, 4 Dec 2025 11:57:52 +0530 Subject: [PATCH 105/105] version-added-for-survey --- elevate-survey/constants/routes.js | 20 ++++++++++++++++++++ elevate-survey/package.json | 2 +- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/elevate-survey/constants/routes.js b/elevate-survey/constants/routes.js index 4a0849a5..403d626d 100644 --- a/elevate-survey/constants/routes.js +++ b/elevate-survey/constants/routes.js @@ -3022,6 +3022,26 @@ module.exports = { }, service:"survey" }, + { + sourceRoute: "/survey/v1/admin/deleteSolutionResource", + type: "POST", + inSequence: false, + targetRoute: { + path: "/survey/v1/admin/deleteSolutionResource", + type: "POST" + }, + service: "survey" + }, + { + sourceRoute: "/survey/v1/admin/deleteSolutionResource/:id", + type: "POST", + inSequence: false, + targetRoute: { + path: "/survey/v1/admin/deleteSolutionResource/:id", + type: "POST" + }, + service: "survey" + }, { sourceRoute: "/survey/v1/admin/deleteResource", type: "POST", diff --git a/elevate-survey/package.json b/elevate-survey/package.json index 476d9405..908f212e 100644 --- a/elevate-survey/package.json +++ b/elevate-survey/package.json @@ -1,6 +1,6 @@ { "name": "elevate-survey-observation", - "version": "1.0.21", + "version": "1.0.22", "description": "Npm package for Elevate-survey-observation service integration with Interface service", "main": "index.js", "scripts": {