From 0ebe041f78dc73c8de27741b8ebb069dc509b1d0 Mon Sep 17 00:00:00 2001 From: velz Date: Tue, 28 Oct 2025 15:15:49 +0530 Subject: [PATCH 1/8] FIX_LIVE_TEST_MOBILE_NO_HARD_CODED --- app/Controllers/RestAuthenticationController.php | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/app/Controllers/RestAuthenticationController.php b/app/Controllers/RestAuthenticationController.php index f187422..eeb6946 100755 --- a/app/Controllers/RestAuthenticationController.php +++ b/app/Controllers/RestAuthenticationController.php @@ -152,6 +152,11 @@ class RestAuthenticationController extends AdminController } $otp = random_int(100000, 999999); + if($mobile_number == '9442741776') + { + $otp = '123456'; + $this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithMobileNumber: setting 123456 for IOS APP TESTING = " . json_encode($employeeData)); + } $this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithMobileNumber: Final employee data to verify = " . json_encode($employeeData)); @@ -192,7 +197,14 @@ class RestAuthenticationController extends AdminController $this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithMobileNumber: Calling callThirdPartyAPI for updateEmpOTP"); } - + //skip sms for live test no + if($mobile_number == '9442741776') + { + + $this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithMobileNumber: skip SMS sent for IOS APP TESTING = " . ($mobile_number)); + $result = ['user_verification' => true ,'message' => "Verified Successfully" ]; + return $this->respond(['status' => 'success','code' => 200,'data' => $result],200); + } //send sms $SMSResult = sendOtpSms($mobile_number, $otp); if ($SMSResult['status'] == 'success') From fd341c2a19001e3feb4525676918b8b7d16e086a Mon Sep 17 00:00:00 2001 From: velz Date: Tue, 28 Oct 2025 15:42:44 +0530 Subject: [PATCH 2/8] FIX_MANI&SERVICEWORKERS_COMMANDED --- app/Views/layout/footer.php | 4 ++-- app/Views/layout/header.php | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/app/Views/layout/footer.php b/app/Views/layout/footer.php index 5026672..a412cef 100755 --- a/app/Views/layout/footer.php +++ b/app/Views/layout/footer.php @@ -85,8 +85,8 @@ - - + + diff --git a/app/Views/layout/header.php b/app/Views/layout/header.php index aa201ad..586695f 100755 --- a/app/Views/layout/header.php +++ b/app/Views/layout/header.php @@ -62,9 +62,9 @@ - + - --> From cf190012b985b5e98f8851beeb1d3f31a07aee6f Mon Sep 17 00:00:00 2001 From: "venkatesh.r" Date: Wed, 29 Oct 2025 09:42:54 +0530 Subject: [PATCH 3/8] CHANGE_MEMBER_DATE_COVERAGE_SET_SELF_COVERAGE --- app/Helpers/excel_util_helper.php | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/app/Helpers/excel_util_helper.php b/app/Helpers/excel_util_helper.php index 79a9b23..37fc8e2 100755 --- a/app/Helpers/excel_util_helper.php +++ b/app/Helpers/excel_util_helper.php @@ -979,6 +979,7 @@ if (!function_exists('calculate_premium_new')) //4. if macthed then the current rack rate is applicable and find common variables link max age,max count,grade, basic pay,SI, self/acting self for current rack rate + // log_message('error', 'CALCULATION_MEMBER_PREMIUM_FAMIL_DATA ' . json_encode($family_data)); foreach($family_data as $fkey => $member) { // dd($member); @@ -992,6 +993,13 @@ if (!function_exists('calculate_premium_new')) $member[6] = $family_data[0][6]; $member[10] = $family_data[0][10]; $member[18] = $family_data[0][18]; + + // If the member's date of coverage is empty, then use the self’s date of coverage + if(empty($member[7])){ + $member[7] = $family_data[0][7]; + } + + // log_message('error', 'CALCULATION_MEMBER_PREMIUM ' . json_encode($member)); //set default unit if unit is not available in self/members level if(empty($member[18])){ $member[18] = $existing_units[0]; } //transform as db row column From 5da5bbea6d231b6e90941d2d1949be97bb72904f Mon Sep 17 00:00:00 2001 From: "venkatesh.r" Date: Wed, 29 Oct 2025 12:09:18 +0530 Subject: [PATCH 4/8] FIX_ENROLLMENT_VISIBLITY --- app/Models/EmployeeModel.php | 1 + 1 file changed, 1 insertion(+) diff --git a/app/Models/EmployeeModel.php b/app/Models/EmployeeModel.php index 3a23f98..64fb562 100755 --- a/app/Models/EmployeeModel.php +++ b/app/Models/EmployeeModel.php @@ -170,6 +170,7 @@ class EmployeeModel extends Model ->join('client_policy', 'client_policy.id = employee_polices.client_policy_id') ->join('policy_type', 'policy_type.id = client_policy.policy_type_id') ->where('client_policy.policy_status', 1) + ->where('client_policy.enrolment_visibility', 1) ->where('employee_polices.status !=', 'truncated') ->where('employee_polices.is_active', 1) ->where('employee_polices.employee_id', $id) From 3dd657891266d9b38fb432ac41cf77cf2ae0720c Mon Sep 17 00:00:00 2001 From: velz Date: Thu, 30 Oct 2025 16:12:34 +0530 Subject: [PATCH 5/8] TEST_AUTODEPLOY --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 39af52c..b12dc3e 100755 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ # README # This README would normally document whatever steps are necessary to get your application up and running. +This is test cmd for checking auto deploy ### What is this repository for? ### From a76585137c98f47308a53f4302a2f1eaf9417999 Mon Sep 17 00:00:00 2001 From: "venkatesh.r" Date: Tue, 4 Nov 2025 17:35:16 +0530 Subject: [PATCH 6/8] FIX_PR_POLICY_COUNT_API_EMAIL_ISSUE --- app/Controllers/EmployeeRestController.php | 36 +++++++++++++++++----- app/Helpers/sendMailNotification.php | 20 +++++++----- 2 files changed, 40 insertions(+), 16 deletions(-) diff --git a/app/Controllers/EmployeeRestController.php b/app/Controllers/EmployeeRestController.php index 904f54a..069fc22 100755 --- a/app/Controllers/EmployeeRestController.php +++ b/app/Controllers/EmployeeRestController.php @@ -3426,6 +3426,7 @@ class EmployeeRestController extends AdminController $request = $this->request->getJSON(true); $mobile_no = $request['mobile_number'] ?? null; + $email_id = $request['email_id'] ?? null; $client_short_name = $request['client_short_name'] ?? null; log_message('error', 'STEP 2: Received input - ' . json_encode($request)); @@ -3434,12 +3435,22 @@ class EmployeeRestController extends AdminController $clientId = null; if (!empty($client_short_name)) { log_message('error', 'STEP 3: Looking up client with short_name: ' . $client_short_name); - $client_data = $this->clientModel - ->where('is_active', 1) - ->where('short_name', $client_short_name) - ->first(); - if ($client_data) { + // $client_data = $this->clientModel + // ->where('is_active', 1) + // ->where('short_name', $client_short_name) + // ->first(); + + $sql = "SELECT * FROM clients WHERE is_active = 1 AND short_name = ? LIMIT 1"; + $client_data = db_connect()->query($sql, [$client_short_name])->getRowArray(); + + + log_message('error', 'STEP 3: Looking up client with short_name: ' . db_connect()->getLastQuery()); + log_message('error', 'STEP 3: Looking up client with short_name: ' . var_dump($client_data) ); + log_message('error', 'STEP 3: Looking up client with short_name: ' . is_array($client_data) && count($client_data)); + log_message('error', 'STEP 3: Looking up client with short_name: ' . json_encode($client_data)); + + if (is_array($client_data) && count($client_data)) { $clientId = $client_data['id']; log_message('error', 'STEP 4: Found client ID: ' . $clientId); } else { @@ -3450,8 +3461,8 @@ class EmployeeRestController extends AdminController } // Step 5: Validate mobile number - if (empty($mobile_no)) { - log_message('error', 'STEP 5: Mobile number is empty or null. Returning 0.'); + if (empty($mobile_no) && empty($email_id)) { + log_message('error', 'STEP 5: Mobile number and Email is empty or null. Returning 0.'); return $this->respond(['data' => 0]); } @@ -3469,7 +3480,6 @@ class EmployeeRestController extends AdminController ->where('cp.open_for_enrollment', 1) ->where('cp.policy_status', 1) ->whereIn('cp.policy_type_id', [1, 2, 6, 7]) - ->where('employees.mobile', $mobile_no) ->orderBy('employees.created_at', 'desc') ->groupBy('employee_polices.client_policy_id'); @@ -3480,6 +3490,16 @@ class EmployeeRestController extends AdminController log_message('error', 'STEP 7: No client ID filter applied.'); } + if (!empty($mobile_no)) { + $builder->where('employees.mobile', $mobile_no); + log_message('error', 'STEP 7: Applied mobile_no filter: ' . $mobile_no); + } + + if (!empty($email_id)) { + $builder->where('employees.email_corporate', $email_id); + log_message('error', 'STEP 7: Applied email_id filter: ' . $email_id); + } + $count = $builder->get()->getNumRows(); log_message('error', 'STEP 8: Final policy count = ' . $count); diff --git a/app/Helpers/sendMailNotification.php b/app/Helpers/sendMailNotification.php index 67aa5a2..358b362 100755 --- a/app/Helpers/sendMailNotification.php +++ b/app/Helpers/sendMailNotification.php @@ -256,7 +256,8 @@ class sendMailNotification $policy_name = $inner_item['policy_name']; if ($inner_item['relationship'] == 'Self') { - $emp_code = '(' . $inner_item['emp_code'] . ')'; + // $emp_code = '(' . $inner_item['emp_code'] . ')'; + $emp_code = ' ( Employee Code : ' . $inner_item['emp_code'] . ')'; $mail = $inner_item['email_corporate']; $name = $inner_item['name']; $employee_mobile_no = $inner_item['mobile']; @@ -549,7 +550,7 @@ class sendMailNotification // dd($payable_employee_array, $Addon_list); // print_r($table_content); die; - $mail_content = str_replace(["[[member_name]]", "{{member_name}}"], $name . ' (' . $emp_code . ')', $mail_content); + $mail_content = str_replace(["[[member_name]]", "{{member_name}}"], $name . $emp_code, $mail_content); $mail_content = str_replace(["[[member_mobile]]", "{{member_mobile}}"], $employee_mobile_no, $mail_content); $mail_content = str_replace(["[[member_summary]]", "{{member_summary}}"], $table_content, $mail_content); @@ -647,7 +648,8 @@ class sendMailNotification $policy_name = $inner_item['policy_name']; if ($inner_item['relationship'] == 'Self') { - $emp_code = ' (' . $inner_item['emp_code'] . ')'; + // $emp_code = ' (' . $inner_item['emp_code'] . ')'; + $emp_code = ' ( Employee Code : ' . $inner_item['emp_code'] . ')'; } else { $emp_code = ''; } @@ -1406,7 +1408,8 @@ class sendMailNotification $policy_name = $array_list['policy_name']; if ($array_list['relationship'] == 'Self') { - $emp_code = ' (' . $array_list['emp_code'] . ')'; + // $emp_code = ' (' . $array_list['emp_code'] . ')'; + $emp_code = ' ( Employee Code : ' . $array_list['emp_code'] . ')'; } else { $emp_code = ''; } @@ -1496,7 +1499,7 @@ class sendMailNotification } } - $mail_content = str_replace(["[[member_name]]", "{{member_name}}"], $name . ' (' . $emp_code . ')', $mail_content); + $mail_content = str_replace(["[[member_name]]", "{{member_name}}"], $name . $emp_code, $mail_content); $mail_content = str_replace(["[[member_mobile]]", "{{member_mobile}}"], $mobile, $mail_content); $mail_content = str_replace(["[[member_summary]]", "{{member_summary}}"], $table_content, $mail_content); @@ -1562,7 +1565,8 @@ class sendMailNotification $policy_name = $array_list['policy_name']; if ($array_list['relationship'] == 'Self') { - $emp_code = ' (' . $array_list['emp_code'] . ')'; + // $emp_code = ' (' . $array_list['emp_code'] . ')'; + $emp_code = ' ( Employee Code : ' . $array_list['emp_code'] . ')'; } else { $emp_code = ''; } @@ -1652,7 +1656,7 @@ class sendMailNotification } } - $mail_content = str_replace(["[[member_name]]", "{{member_name}}"], $name . ' (' . $emp_code . ')', $mail_content); + $mail_content = str_replace(["[[member_name]]", "{{member_name}}"], $name . $emp_code, $mail_content); $mail_content = str_replace(["[[member_summary]]", "{{member_summary}}"], $table_content, $mail_content); @@ -1809,7 +1813,7 @@ class sendMailNotification } } - $mail_content = str_replace(["[[member_name]]", "{{member_name}}"], $name . ' (' . $emp_code . ')', $mail_content); + $mail_content = str_replace(["[[member_name]]", "{{member_name}}"], $name . $emp_code, $mail_content); $mail_content = str_replace(["[[member_summary]]", "{{member_summary}}"], $table_content, $mail_content); From 0b4ff5866160ec7ae200be98d58709c652c0488c Mon Sep 17 00:00:00 2001 From: "venkatesh.r" Date: Wed, 5 Nov 2025 09:18:11 +0530 Subject: [PATCH 7/8] FIX_CHANGE --- app/Controllers/EmployeeRestController.php | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/app/Controllers/EmployeeRestController.php b/app/Controllers/EmployeeRestController.php index 069fc22..ad6403e 100755 --- a/app/Controllers/EmployeeRestController.php +++ b/app/Controllers/EmployeeRestController.php @@ -3436,21 +3436,15 @@ class EmployeeRestController extends AdminController if (!empty($client_short_name)) { log_message('error', 'STEP 3: Looking up client with short_name: ' . $client_short_name); - // $client_data = $this->clientModel - // ->where('is_active', 1) - // ->where('short_name', $client_short_name) - // ->first(); + $client_data = $this->clientModel + ->where('is_active', 1) + ->where('short_name', $client_short_name) + ->first(); - $sql = "SELECT * FROM clients WHERE is_active = 1 AND short_name = ? LIMIT 1"; - $client_data = db_connect()->query($sql, [$client_short_name])->getRowArray(); + // $sql = "SELECT * FROM clients WHERE is_active = 1 AND short_name = ? LIMIT 1"; + // $client_data = db_connect()->query($sql, [$client_short_name])->getRowArray(); - - log_message('error', 'STEP 3: Looking up client with short_name: ' . db_connect()->getLastQuery()); - log_message('error', 'STEP 3: Looking up client with short_name: ' . var_dump($client_data) ); - log_message('error', 'STEP 3: Looking up client with short_name: ' . is_array($client_data) && count($client_data)); - log_message('error', 'STEP 3: Looking up client with short_name: ' . json_encode($client_data)); - - if (is_array($client_data) && count($client_data)) { + if (!empty($client_data)) { $clientId = $client_data['id']; log_message('error', 'STEP 4: Found client ID: ' . $clientId); } else { From 13c9ece3238353bb9243edcc5b78bef8cf067a47 Mon Sep 17 00:00:00 2001 From: "venkatesh.r" Date: Wed, 5 Nov 2025 11:32:55 +0530 Subject: [PATCH 8/8] FEAT_EMP_SELF_MOBILE_NUMBER_UPDATE_API --- app/Config/Routes.php | 2 + .../RestAuthenticationController.php | 121 ++++++++++++++++++ 2 files changed, 123 insertions(+) diff --git a/app/Config/Routes.php b/app/Config/Routes.php index 39f986e..77276f5 100755 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -454,6 +454,8 @@ $routes->post("employeeRest/saveMpin", "RestAuthenticationController::saveMpin") $routes->post("employeeRest/updateMpin", "RestAuthenticationController::updateMpin"); $routes->post("employeeRest/forgotMPIN", "RestAuthenticationController::forgotMPIN"); $routes->post("calculatePremium", "EmployeeRestController::calculatePremium"); +$routes->post("employeeRest/updateMobileNumber", "RestAuthenticationController::updateMobileNumber"); + // $routes->post("employeeRest/createOrUpdateEmployeePolicySiAmount", "EmployeeRestController::createOrUpdateEmployeePolicySiAmount"); // $routes->post("employeeRest/calculatePremium", "EmployeeRestController::calculatePremium"); diff --git a/app/Controllers/RestAuthenticationController.php b/app/Controllers/RestAuthenticationController.php index eeb6946..a9a322a 100755 --- a/app/Controllers/RestAuthenticationController.php +++ b/app/Controllers/RestAuthenticationController.php @@ -1312,4 +1312,125 @@ class RestAuthenticationController extends AdminController } + // -------------- EMP MOBILE NUMBER UPDATE API'S ------------------------------------------------------------------------------------------------------------- + + public function updateMobileNumber() + { + log_message('error', ' '); + log_message('error', ' ************************************* UPDATE MOBILE START **************************************** '); + log_message('error', ' '); + $this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMobileNumber: Function called"); + $this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMobileNumber: Received payload = " . json_encode($this->request->getJSON() ?? [])); + + try { + + $payload = $this->request->getJSON(true); + + $email_id = $payload['email_id'] ?? null; + $new_mobile = $payload['new_mobile_number'] ?? null; + + if (empty($email_id) || empty($new_mobile)) { + return $this->respond([ + 'status' => 'failed', + 'code' => 400, + 'message' => 'Email ID and new mobile number are required' + ], 400); + } + + $empdata = RestAuthHelper::getPreAndPostDataByEmailOrMobile(['email_id' => $email_id]); + // print_r($empdata); die; + + if(empty($empdata)){ + $this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMobileNumber: No employee data found both PRE & POST"); + log_message('error', ' '); + log_message('error', '************************ PRE END ********************************'); + $result = ['user_verification' => false , 'message' => "User not found"]; + return $this->respond(['status' => 'failed','code' => 404,'data' => $result],200); + } + + $employeeData = []; + if (isset($empdata['pre']) && !empty($empdata['pre'])) { + $employeeData = $empdata['pre']; + $this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMobileNumber: Using PRE data"); + } + + if (isset($employeeData['employee_id'])) + { + // Update mobile number + $updated = $this->employeeModel->update($employeeData['employee_id'], [ + 'mobile' => $new_mobile, + ]); + + if ($updated) { + + $this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMobileNumber: Mobile number updated successfully"); + log_message('error', ' '); + log_message('error', ' ************************************* UPDATE MOBILE END **************************************** '); + log_message('error', ' '); + + //If post-enrollment data exist update the same mobile number from pre-enrollment. + if (isset($empdata['post']['client_id']) && !empty($empdata['post']['client_id'])) { + + $payload['client_id'] = $empdata['post']['client_id']; + $payload['employee_id'] = $empdata['post']['employee_id']; + $this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMobileNumber: Client_id and employee_id from POST data to update the Mobile number"); + + $this->callThirdPartyAPI($payload, 'updateMobileNumber'); + $this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMobileNumber: Calling callThirdPartyAPI for updateMobileNumber"); + } + + return $this->respond([ + 'status' => 'success', + 'code' => 200, + 'message' => 'Mobile number updated successfully', + ], 200); + + } else { + $this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMobileNumber: Failed to update mobile number"); + return $this->respond([ + 'status' => 'failed', + 'code' => 500, + 'message' => 'Failed to update mobile number' + ], 500); + } + + }else{ + + $this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMobileNumber: Employee not found with email in the PRE DATABASE, falling back to third-party API"); + + // Call the third-party API function + if (!empty($empdata['post']['client_id'])) { + $payload->client_id = $empdata['post']['client_id']; + } + return $this->callThirdPartyAPI($payload, 'updateMobileNumber'); + log_message('error', ' '); + log_message('error', '************************ PRE END ********************************'); + + } + + } catch (\Throwable $th) { + $this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMobileNumber: Exception: " . $th->getMessage()); + log_message('error', ' '); + log_message('error', ' ************************************* UPDATE MOBILE END **************************************** '); + log_message('error', ' '); + + $errorData = [ + 'message' => $th->getMessage(), + 'file' => $th->getFile(), + 'line' => $th->getLine(), + 'code' => $th->getCode(), + 'trace' => $th->getTraceAsString(), + 'trace_array' => $th->getTrace(), // full array version (optional) + 'function' => $th->getTrace()[0]['function'] ?? null, + 'class' => $th->getTrace()[0]['class'] ?? null, + ]; + + return $this->respond([ + 'status' => 'failed', + 'code' => 500, + 'message' => 'Exception occurred', + 'error_data' => $errorData + ], 500); + } + } } \ No newline at end of file