FEAT_VISIT_OFFBOARD
This commit is contained in:
parent
930109c6d4
commit
3c3a068042
@ -15,6 +15,13 @@ class Acl
|
|||||||
'#^/loginPos#' => ['public' => true],
|
'#^/loginPos#' => ['public' => true],
|
||||||
'#^/getVerifyPosMobileNo#' => ['public' => true],
|
'#^/getVerifyPosMobileNo#' => ['public' => true],
|
||||||
'#^/getVerifiedPosUserData#' => ['public' => true],
|
'#^/getVerifiedPosUserData#' => ['public' => true],
|
||||||
|
'#^/chat#' => ['public' => true],
|
||||||
|
'#^/widget#' => ['public' => true],
|
||||||
|
'#^/chatbottest#' => ['public' => true],
|
||||||
|
'#^/chatbot#' => ['public' => true],
|
||||||
|
'#^/getSSORedirectUrl#' => ['public' => true],
|
||||||
|
'#^/getEmployeePolicy#' => ['public' => true],
|
||||||
|
'#^/downloadFileTableFile#' => ['public' => true],
|
||||||
'#^/swagger#' => ['roles' => [ADMIN_ROLE_ID]],
|
'#^/swagger#' => ['roles' => [ADMIN_ROLE_ID]],
|
||||||
'#^/getEmployeeActiveOrInactivePolicy#' => ['roles' => [ADMIN_ROLE_ID, HEAD_ROLE_ID]],
|
'#^/getEmployeeActiveOrInactivePolicy#' => ['roles' => [ADMIN_ROLE_ID, HEAD_ROLE_ID]],
|
||||||
'#^/bulkEcardDownloadAsZip#' => ['roles' => [ADMIN_ROLE_ID, HEAD_ROLE_ID]],
|
'#^/bulkEcardDownloadAsZip#' => ['roles' => [ADMIN_ROLE_ID, HEAD_ROLE_ID]],
|
||||||
@ -54,6 +61,34 @@ class Acl
|
|||||||
'roles' => [ ADMIN_ROLE_ID,HEAD_ROLE_ID, MANAGER_ROLE_ID, STAFF_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
'roles' => [ ADMIN_ROLE_ID,HEAD_ROLE_ID, MANAGER_ROLE_ID, STAFF_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
'teams' => []
|
'teams' => []
|
||||||
],
|
],
|
||||||
|
'#^/hrFileDownload#' => [
|
||||||
|
'roles' => [ ADMIN_ROLE_ID,HEAD_ROLE_ID, MANAGER_ROLE_ID, STAFF_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => []
|
||||||
|
],
|
||||||
|
'#^/sendPushNotification#' => [
|
||||||
|
'roles' => [ ADMIN_ROLE_ID,HEAD_ROLE_ID, MANAGER_ROLE_ID, STAFF_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => []
|
||||||
|
],
|
||||||
|
'#^/sendEmail#' => [
|
||||||
|
'roles' => [ ADMIN_ROLE_ID,HEAD_ROLE_ID, MANAGER_ROLE_ID, STAFF_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => []
|
||||||
|
],
|
||||||
|
'#^/getPolicyLevelEmployeeSummaryData#' => [
|
||||||
|
'roles' => [ ADMIN_ROLE_ID,HEAD_ROLE_ID, MANAGER_ROLE_ID, STAFF_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => []
|
||||||
|
],
|
||||||
|
'#^/cdTransactionData#' => [
|
||||||
|
'roles' => [ ADMIN_ROLE_ID,HEAD_ROLE_ID, MANAGER_ROLE_ID, STAFF_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => []
|
||||||
|
],
|
||||||
|
'#^/claimsSearch#' => [
|
||||||
|
'roles' => [ ADMIN_ROLE_ID,HEAD_ROLE_ID, MANAGER_ROLE_ID, STAFF_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => [CLAIMS_TEAM_ID]
|
||||||
|
],
|
||||||
|
'#^/getBackToEnrolledDetails#' => [
|
||||||
|
'roles' => [ ADMIN_ROLE_ID,HEAD_ROLE_ID, MANAGER_ROLE_ID, STAFF_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => []
|
||||||
|
],
|
||||||
|
|
||||||
// ===================== USER MANAGEMENT =====================
|
// ===================== USER MANAGEMENT =====================
|
||||||
'#^/user#' => [
|
'#^/user#' => [
|
||||||
@ -88,6 +123,18 @@ class Acl
|
|||||||
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
'teams' => [FINANCE_TEAM_ID,POS_TEAM_ID]
|
'teams' => [FINANCE_TEAM_ID,POS_TEAM_ID]
|
||||||
],
|
],
|
||||||
|
'#^/dmsSearch#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => [FINANCE_TEAM_ID,POS_TEAM_ID]
|
||||||
|
],
|
||||||
|
'#^/downloadGdriveFile#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => [FINANCE_TEAM_ID,POS_TEAM_ID]
|
||||||
|
],
|
||||||
|
'#^/driveListFiles#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => [FINANCE_TEAM_ID,POS_TEAM_ID]
|
||||||
|
],
|
||||||
'#^/bds_upload#' => [
|
'#^/bds_upload#' => [
|
||||||
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
'teams' => [FINANCE_TEAM_ID,POS_TEAM_ID]
|
'teams' => [FINANCE_TEAM_ID,POS_TEAM_ID]
|
||||||
@ -108,12 +155,60 @@ class Acl
|
|||||||
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
'teams' => [FINANCE_TEAM_ID,POS_TEAM_ID]
|
'teams' => [FINANCE_TEAM_ID,POS_TEAM_ID]
|
||||||
],
|
],
|
||||||
|
'#^/importRules#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => [FINANCE_TEAM_ID,POS_TEAM_ID]
|
||||||
|
],
|
||||||
|
|
||||||
// ===================== CLAIMS / TICKETS =====================
|
// ===================== CLAIMS / TICKETS =====================
|
||||||
'#^/ticket#' => [
|
'#^/ticket#' => [
|
||||||
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
'teams' => [CLAIMS_TEAM_ID]
|
'teams' => [CLAIMS_TEAM_ID]
|
||||||
],
|
],
|
||||||
|
'#^/ticketSave#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => [CLAIMS_TEAM_ID]
|
||||||
|
],
|
||||||
|
'#^/ticketList#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => [CLAIMS_TEAM_ID]
|
||||||
|
],
|
||||||
|
'#^/ticketConversationSave#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => [CLAIMS_TEAM_ID]
|
||||||
|
],
|
||||||
|
'#^/ticketConversationList#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => [CLAIMS_TEAM_ID]
|
||||||
|
],
|
||||||
|
'#^/ticketType#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => [CLAIMS_TEAM_ID]
|
||||||
|
],
|
||||||
|
'#^/ticketHistoryList#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => [CLAIMS_TEAM_ID]
|
||||||
|
],
|
||||||
|
'#^/ticketAutoFetchDetails#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => [CLAIMS_TEAM_ID]
|
||||||
|
],
|
||||||
|
'#^/initiateClaim#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => [CLAIMS_TEAM_ID]
|
||||||
|
],
|
||||||
|
'#^/departments#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => [CLAIMS_TEAM_ID]
|
||||||
|
],
|
||||||
|
'#^/get_ticket_data#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => [CLAIMS_TEAM_ID]
|
||||||
|
],
|
||||||
|
'#^/claimView#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
|
'teams' => [CLAIMS_TEAM_ID]
|
||||||
|
],
|
||||||
'#^/claim_mis#' => [
|
'#^/claim_mis#' => [
|
||||||
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID],
|
||||||
'teams' => [CLAIMS_TEAM_ID]
|
'teams' => [CLAIMS_TEAM_ID]
|
||||||
@ -138,6 +233,22 @@ class Acl
|
|||||||
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID],
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID],
|
||||||
'teams' => []
|
'teams' => []
|
||||||
],
|
],
|
||||||
|
'#^/add_advertise_image#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID],
|
||||||
|
'teams' => []
|
||||||
|
],
|
||||||
|
'#^/remove_advertise_image#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID],
|
||||||
|
'teams' => []
|
||||||
|
],
|
||||||
|
'#^/getAdvertiseImage#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID],
|
||||||
|
'teams' => []
|
||||||
|
],
|
||||||
|
'#^/showAdvertiseImage#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID],
|
||||||
|
'teams' => []
|
||||||
|
],
|
||||||
'#^/frontend_content#' => [
|
'#^/frontend_content#' => [
|
||||||
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID],
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID],
|
||||||
'teams' => []
|
'teams' => []
|
||||||
@ -146,6 +257,10 @@ class Acl
|
|||||||
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID],
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID],
|
||||||
'teams' => []
|
'teams' => []
|
||||||
],
|
],
|
||||||
|
'#^/getFEContent#' => [
|
||||||
|
'roles' => [ HEAD_ROLE_ID,ADMIN_ROLE_ID, MANAGER_ROLE_ID, ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID],
|
||||||
|
'teams' => []
|
||||||
|
],
|
||||||
|
|
||||||
// ===================== LOGS =====================
|
// ===================== LOGS =====================
|
||||||
'#^/logs#' => [
|
'#^/logs#' => [
|
||||||
@ -167,9 +282,25 @@ class Acl
|
|||||||
// ===================== WEBHOOKS / 3RD PARTY =====================
|
// ===================== WEBHOOKS / 3RD PARTY =====================
|
||||||
'#^/dispatchWebhookData#' => ['public' => true],
|
'#^/dispatchWebhookData#' => ['public' => true],
|
||||||
'#^/retrieveWebhookData#' => ['public' => true],
|
'#^/retrieveWebhookData#' => ['public' => true],
|
||||||
// '#^/ICICI#' => ['public' => true],
|
'#^/ecardRequest#' => ['public' => true],
|
||||||
// '#^/Vidal#' => ['public' => true],
|
'#^/getTPAID#' => ['public' => true],
|
||||||
// '#^/MediAssist#' => ['public' => true],
|
'#^/fileDownload#' => ['public' => true],
|
||||||
|
'#^/generateAuthToken#' => ['public' => true],
|
||||||
|
'#^/createEnrollmentBatch#' => ['roles' => [ADMIN_ROLE_ID, HEAD_ROLE_ID], 'teams' => [ENROLLMENT_TEAM_ID]],
|
||||||
|
'#^/getEnrollmentBatchStatus#' => ['roles' => [ADMIN_ROLE_ID, HEAD_ROLE_ID], 'teams' => [ENROLLMENT_TEAM_ID]],
|
||||||
|
'#^/fetchUHIDDetails#' => ['roles' => [ADMIN_ROLE_ID, HEAD_ROLE_ID], 'teams' => [ENROLLMENT_TEAM_ID]],
|
||||||
|
'#^/FhplGetBenefDetails#' => ['roles' => [ADMIN_ROLE_ID]],
|
||||||
|
'#^/EcardRequest#' => ['public' => true],
|
||||||
|
'#^/HospitalNetwork#' => ['public' => true],
|
||||||
|
'#^/VidalGetBenefDetails#' => ['public' => true],
|
||||||
|
'#^/ClaimDetail#' => ['public' => true],
|
||||||
|
'#^/SubmitClaim#' => ['roles' => [ADMIN_ROLE_ID,HEAD_ROLE_ID,ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID]],
|
||||||
|
'#^/IntimateClaim#' => ['roles' => [ADMIN_ROLE_ID,HEAD_ROLE_ID,ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID]],
|
||||||
|
'#^/IRSubmission#' => ['roles' => [ADMIN_ROLE_ID,HEAD_ROLE_ID,ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID]],
|
||||||
|
'#^/ClaimStatusUpdate#' => ['roles' => [ADMIN_ROLE_ID,HEAD_ROLE_ID,ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID]],
|
||||||
|
'#^/syncTpaClaimToNhance#' => ['roles' => [ADMIN_ROLE_ID,HEAD_ROLE_ID,ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID]],
|
||||||
|
'#^/HealthIndiaGetBenefDetails#' => ['roles' => [ADMIN_ROLE_ID,HEAD_ROLE_ID,ACCOUNT_MANAGER_ROLE_ID,STAFF_ROLE_ID]],
|
||||||
|
'#^/testTracelog#' => ['roles' => [ADMIN_ROLE_ID]],
|
||||||
|
|
||||||
// ===================== CLI =====================
|
// ===================== CLI =====================
|
||||||
'#^/cli/#' => ['public' => true],
|
'#^/cli/#' => ['public' => true],
|
||||||
|
|||||||
@ -3564,7 +3564,7 @@ class EmployeeController extends AdminController
|
|||||||
public function initiateWellnessOnboard($client_policy_id)
|
public function initiateWellnessOnboard($client_policy_id)
|
||||||
{
|
{
|
||||||
$r = Jobs::addJob(['job_name' => 'initiateWellnessOnboardJob','payload' => ['client_policy_id' => $client_policy_id]]);
|
$r = Jobs::addJob(['job_name' => 'initiateWellnessOnboardJob','payload' => ['client_policy_id' => $client_policy_id]]);
|
||||||
//$this->initiateWellnessOnboardJob(['client_policy_id' => $client_policy_id]);
|
// $this->initiateWellnessOnboardJob(['client_policy_id' => $client_policy_id]);
|
||||||
return $this->respond(['status' => true, 'code' => 200, 'message' => 'Process started'], 200);
|
return $this->respond(['status' => true, 'code' => 200, 'message' => 'Process started'], 200);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -4577,14 +4577,17 @@ class EmployeeController extends AdminController
|
|||||||
$statusCode = $response->getStatusCode();
|
$statusCode = $response->getStatusCode();
|
||||||
$rawBody = $response->getBody();
|
$rawBody = $response->getBody();
|
||||||
$result = json_decode($rawBody, true);
|
$result = json_decode($rawBody, true);
|
||||||
|
// print_rr($result);
|
||||||
|
|
||||||
// 4. Handle based on HTTP Status Code
|
// 4. Handle based on HTTP Status Code - BUG FIX: Changed = to == for proper comparison
|
||||||
if ($statusCode >= 200 && $statusCode < 300) {
|
if ($statusCode == 200) {
|
||||||
$this->myLogger->logme('error', "VISIT_OFFBOARD API Success (Code $statusCode): Policy deleted.");
|
$this->myLogger->logme('error', "VISIT_OFFBOARD API Success (Code $statusCode): Policy deleted.");
|
||||||
return [
|
$return_data = [
|
||||||
'status' => true,
|
'memberIds' => $params['memberIds'] ?? [],
|
||||||
'data' => $result
|
'api_result' => $result
|
||||||
];
|
];
|
||||||
|
$this->updateVisitoffboardStatus($return_data);
|
||||||
|
return $return_data;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Log API-level errors (4xx or 5xx)
|
// Log API-level errors (4xx or 5xx)
|
||||||
@ -4607,6 +4610,73 @@ class EmployeeController extends AdminController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Updates the wellness onboard status in the database for deleted members.
|
||||||
|
*
|
||||||
|
* Marks employee policy records as deleted in the wellness system after
|
||||||
|
* a successful API response from the wellness onboard service.
|
||||||
|
*
|
||||||
|
* @param array $data Contains 'memberIds' array and 'api_result' from API response
|
||||||
|
* @return bool Returns true if update was successful or no action needed, false on error
|
||||||
|
*/
|
||||||
|
public function updateVisitoffboardStatus(array $data): bool
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
// Validate input data structure
|
||||||
|
if (empty($data) || !is_array($data)) {
|
||||||
|
$this->myLogger->logme('error', 'VISIT_OFFBOARD_STATUS_UPDATE: Invalid data parameter');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check if API result exists
|
||||||
|
if (empty($data['api_result'])) {
|
||||||
|
$this->myLogger->logme('error', 'VISIT_OFFBOARD_STATUS_UPDATE: No API result found in data');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
$apiResult = $data['api_result'];
|
||||||
|
|
||||||
|
// Verify API success status - BUG FIX: Proper key access and validation
|
||||||
|
if (($apiResult['message'] ?? null) !== 'success') {
|
||||||
|
$this->myLogger->logme('error', 'VISIT_OFFBOARD_STATUS_UPDATE: API response not successful - ' . json_encode($apiResult));
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Extract member IDs safely - BUG FIX: Corrected key from memberids to memberIds
|
||||||
|
$memberIds = $data['memberIds'] ?? [];
|
||||||
|
|
||||||
|
if (empty($memberIds) || !is_array($memberIds)) {
|
||||||
|
$this->myLogger->logme('warn', 'VISIT_OFFBOARD_STATUS_UPDATE: No valid memberIds provided for update');
|
||||||
|
return true; // Not an error if no members to update
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!empty($apiResult['missingMemberIds']) && is_array($apiResult['missingMemberIds']))
|
||||||
|
{
|
||||||
|
$this->myLogger->logme('error', 'VISIT_OFFBOARD_STATUS_UPDATE: missing member IDs found - ' . json_encode($apiResult['missingMemberIds']));
|
||||||
|
}
|
||||||
|
// Update wellness_onboard status for deleted members - Append '_DEL' to existing value
|
||||||
|
$updateResult = $this->employeePolicyModel
|
||||||
|
->whereIn('id', $memberIds)
|
||||||
|
->set('wellness_onboard', "CONCAT(wellness_onboard, '_DEL')", false)
|
||||||
|
->update();
|
||||||
|
|
||||||
|
if ($updateResult !== false) {
|
||||||
|
$this->myLogger->logme('error', 'VISIT_OFFBOARD_STATUS_UPDATE: Updated ' . $updateResult . ' employee policy records with wellness_onboard_DEL status');
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
$this->myLogger->logme('error', 'VISIT_OFFBOARD_STATUS_UPDATE: Database update operation failed');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
} catch (\Exception $e) {
|
||||||
|
$this->myLogger->logme('error', 'VISIT_OFFBOARD_STATUS_UPDATE: Exception occurred - ' . $e->getMessage() . ' - File: ' . $e->getFile() . ' - Line: ' . $e->getLine());
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public function insufficientCdBalanceHrMailSend()
|
public function insufficientCdBalanceHrMailSend()
|
||||||
{
|
{
|
||||||
$post_data = $this->request->getJson(true);
|
$post_data = $this->request->getJson(true);
|
||||||
|
|||||||
@ -238,6 +238,10 @@ class JobWorker extends AdminController
|
|||||||
'getEmployeeEcardFromTmpFolderAndZipToS3' => [
|
'getEmployeeEcardFromTmpFolderAndZipToS3' => [
|
||||||
'type' => 'CC', // Handler Category
|
'type' => 'CC', // Handler Category
|
||||||
'handler' => 'App\Controllers\EmployeeController',
|
'handler' => 'App\Controllers\EmployeeController',
|
||||||
|
],
|
||||||
|
'visitOffBoard' => [
|
||||||
|
'type' => 'CC', // Handler Category
|
||||||
|
'handler' => 'App\Controllers\EmployeeController',
|
||||||
]
|
]
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user