From 544b7cab850fd0fb91b3dfc7c4a9d4364ff13a69 Mon Sep 17 00:00:00 2001 From: Tushar Date: Thu, 15 Feb 2024 17:33:37 +0530 Subject: [PATCH 1/5] camp is inactive and learner added then status will change --- src/src/camp/camp.service.ts | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/src/src/camp/camp.service.ts b/src/src/camp/camp.service.ts index c78c3dd7c..34aee9a7e 100644 --- a/src/src/camp/camp.service.ts +++ b/src/src/camp/camp.service.ts @@ -1235,6 +1235,40 @@ export class CampService { ); } + if (camp_status === 'inactive') { + let updatebody = { + status: 'camp_initiated', + }; + let updatStatus = await this.hasuraService.q( + 'groups', + { + ...updatebody, + id: group_id, + }, + ['status'], + true, + ['id', 'status'], + ); + + let auditData = { + userId: facilitator_id, + mw_userid: facilitator_id, + user_type: 'Facilitator', + context: 'camp.update.status', + context_id: camp_id, + subject: 'camp', + subject_id: camp_id, + log_transaction_text: `Facilitator ${facilitator_id} updated camp status of camp ${camp_id}`, + oldData: { status: camp_status }, + newData: { status: 'camp_initiated' }, + tempArray: ['status'], + action: 'update', + sortedData: true, + }; + + await this.userService.addAuditLogAction(auditData); + } + const createAuditData = learner_ids .filter( (id) => From d6cfc8c452314bf8374fb5e08e5dcc683547095b Mon Sep 17 00:00:00 2001 From: VivekB <136580365+GitVivekHub@users.noreply.github.com> Date: Mon, 19 Feb 2024 15:58:46 +0530 Subject: [PATCH 2/5] Facilitator status list as per cohort (#791) --- src/src/facilitator/facilitator.service.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/src/facilitator/facilitator.service.ts b/src/src/facilitator/facilitator.service.ts index a1b92a0de..b80a1944b 100644 --- a/src/src/facilitator/facilitator.service.ts +++ b/src/src/facilitator/facilitator.service.ts @@ -1846,7 +1846,7 @@ export class FacilitatorService { user_id type } - program_faciltators { + program_faciltators(where: {academic_year_id: {_eq:${academic_year_id}}, program_id: {_eq:${program_id}}}) { parent_ip availability id @@ -1895,7 +1895,7 @@ export class FacilitatorService { id } } - events { + events(where: {academic_year_id: {_eq:${academic_year_id}}, program_id: {_eq:${program_id}}}) { context context_id created_by @@ -1913,6 +1913,7 @@ export class FacilitatorService { }`, variables: variables, }; + let response; try { response = await this.hasuraService.getData(data); From bf8791b533cc32b9c902b55bfadffab1ea7f5960 Mon Sep 17 00:00:00 2001 From: Tusharmahajan12 <121154132+Tusharmahajan12@users.noreply.github.com> Date: Mon, 19 Feb 2024 15:59:45 +0530 Subject: [PATCH 3/5] Task #213993 If camp is change_required and beneficiaires removed from that camp update status of beneficiaries (#792) * Updated beneficiaires staus removed at change_required * Updated beneficiaires staus removed at change_required --- src/src/camp/camp.service.ts | 76 ++++++++++++++++++++++++++++++++++-- 1 file changed, 73 insertions(+), 3 deletions(-) diff --git a/src/src/camp/camp.service.ts b/src/src/camp/camp.service.ts index 34aee9a7e..c3c43f508 100644 --- a/src/src/camp/camp.service.ts +++ b/src/src/camp/camp.service.ts @@ -819,7 +819,11 @@ export class CampService { }; } - if (campData?.group_users[0]?.user_id != facilitator_id) { + if ( + campData?.group_users[0]?.user_id != facilitator_id || + (campData?.group?.status === 'inactive' && + update_body?.edit_page_type !== 'edit_learners') + ) { return { status: 401, success: false, @@ -1210,11 +1214,77 @@ export class CampService { ) .map((item) => item.user_id); + // get learners id from program_beneficiaries from deactiveLearnerIds + let data = { + query: `query MyQuery { + program_beneficiaries(where: {user_id: {_in: [${deactiveLearnerIds}]}}) { + id + user_id + status + } + }`, + }; + + const resp = await this.hasuraServiceFromServices.getData({ + query: data.query, + }); + + let programbeneficiariesdata = + resp?.data?.program_beneficiaries || []; + // get program_beneficiaires id who's status want to update + const programbeneficiaries = programbeneficiariesdata.map( + (item) => item.id, + ); + + //update learner status in program_beneficiaires removed from change_request + if (programbeneficiaries?.length > 0) { + resultActive = await this.hasuraServiceFromServices.update( + null, + 'program_beneficiaries', + { + status: 'enrolled_ip_verified', + updated_by: facilitator_id, + }, + [], + returnFields, + { where: `{id:{_in:[${programbeneficiaries}]}}` }, + ); + + const activeIdsAuditData = programbeneficiariesdata.map( + (item) => ({ + user_id: item.user_id, + user_type: 'Facilitator', + updated_by_user: facilitator_id, + context: 'campBeneficiaryStatus', + context_id: camp_id, + subject: 'beneficiary', + subject_id: item.user_id, + log_transaction_text: JSON.stringify( + `Facilitator ${facilitator_id} updated beneficiary ${item.user_id} status from ${item.status} to enrolled_ip_verified`, + ), + old_data: JSON.stringify( + `{ learner_id: ${item.user_id},status:${item.status} }`, + ), + new_data: JSON.stringify( + `{ learner_id: ${item.user_id},status:enrolled_ip_verified }`, + ), + action: 'update', + }), + ); + if (activeIdsAuditData?.length > 0) { + resultCreate = await this.hasuraServiceFromServices.qM( + 'insert_audit_logs', + activeIdsAuditData, + [], + ['id'], + ); + } + } + if ( deactivateIds.length > 0 && (camp_status == 'registered' || - camp_status == 'camp_ip_verified' || - camp_status == 'change_required') + camp_status == 'camp_ip_verified') ) { return { status: 422, From 4bba03a7f5ef29b54e231f676bc0777ef7e53292 Mon Sep 17 00:00:00 2001 From: Tusharmahajan12 <121154132+Tusharmahajan12@users.noreply.github.com> Date: Tue, 20 Feb 2024 14:55:40 +0530 Subject: [PATCH 4/5] resolved bug (#798) --- src/src/beneficiaries/beneficiaries.service.ts | 2 +- src/src/camp/camp.service.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/src/beneficiaries/beneficiaries.service.ts b/src/src/beneficiaries/beneficiaries.service.ts index 569c1b39d..bd6b2af1e 100644 --- a/src/src/beneficiaries/beneficiaries.service.ts +++ b/src/src/beneficiaries/beneficiaries.service.ts @@ -3647,7 +3647,7 @@ export class BeneficiariesService { document_sub_type path } - program_beneficiaries { + program_beneficiaries(where:{program_id: {_eq:${program_id}}, academic_year_id: {_eq:${academic_year_id}}}) { status, enrollment_first_name, enrollment_middle_name, diff --git a/src/src/camp/camp.service.ts b/src/src/camp/camp.service.ts index c3c43f508..2af98ce9e 100644 --- a/src/src/camp/camp.service.ts +++ b/src/src/camp/camp.service.ts @@ -1224,13 +1224,13 @@ export class CampService { } }`, }; - const resp = await this.hasuraServiceFromServices.getData({ query: data.query, }); let programbeneficiariesdata = resp?.data?.program_beneficiaries || []; + // get program_beneficiaires id who's status want to update const programbeneficiaries = programbeneficiariesdata.map( (item) => item.id, @@ -1246,7 +1246,7 @@ export class CampService { updated_by: facilitator_id, }, [], - returnFields, + ['id', 'status'], { where: `{id:{_in:[${programbeneficiaries}]}}` }, ); From 09c2231e92a32a2777abde51e5b0368e5e0bf2c8 Mon Sep 17 00:00:00 2001 From: Tusharmahajan12 <121154132+Tusharmahajan12@users.noreply.github.com> Date: Wed, 28 Feb 2024 12:38:12 +0530 Subject: [PATCH 5/5] Added event id (#834) --- src/src/lms/lms.service.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/src/lms/lms.service.ts b/src/src/lms/lms.service.ts index f75a1c3ae..06a190c74 100644 --- a/src/src/lms/lms.service.ts +++ b/src/src/lms/lms.service.ts @@ -604,6 +604,7 @@ export class LMSService { attendance_count events(where: {context: {_eq: "events"}}) { name + id } } }