MERGE_TEST_AUTHLOGS

This commit is contained in:
Ubuntu 2025-07-21 15:28:49 +05:30
commit ff189e98bb
2 changed files with 235 additions and 49 deletions

View File

@ -118,17 +118,27 @@ class RestAuthenticationController extends AdminController
// employee auth api's start
public function verifyEmployeeWithMobileNumber()
{
{
log_message('error', ' ');
log_message('error', '************************ PRE START ********************************');
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - Verify Employee With Mobile Number: Function called");
try {
$mobile_number = $this->request->getJSON()->mobile_number;
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithMobileNumber: Received mobile_number = " . $mobile_number);
$empdata = RestAuthHelper::getPreAndPostDataByEmailOrMobile(['mobile_number' => $mobile_number]);
if(empty($empdata)){
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithMobileNumber: 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);
}
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithMobileNumber: employee data both PRE & POST = " . json_encode($empdata));
$employeeData = $this->employeeModel->select('employees.relationship,EP.employee_id')
->join('employee_polices EP', 'EP.employee_id = employees.id', 'inner')
->where('employees.is_active', 1)
@ -142,39 +152,62 @@ class RestAuthenticationController extends AdminController
$employeeData = [];
if (isset($empdata['pre']) && !empty($empdata['pre'])) {
$employeeData = $empdata['pre'];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithMobileNumber: Using PRE data");
} elseif (isset($empdata['post']) && !empty($empdata['post'])) {
$employeeData = $empdata['post'];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithMobileNumber: Using POST data");
}
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithMobileNumber: Final employee data to verify = " . json_encode($employeeData));
if (isset($employeeData['employee_id']))
{
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithMobileNumber: Employee verified with ID = " . $employeeData['employee_id']);
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
$result = ['user_verification' => true ,'message' => "Verified Successfully" ];
return $this->respond(['status' => 'success','code' => 200,'data' => $result],200);
} else {
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithMobileNumber: Employee ID not found, calling third-party API to POST");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
// Call the third-party API function
return $this->callThirdPartyAPI($this->request->getJSON(),'verifyEmployeeNumber');
}
} catch (\Throwable $th) {
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithMobileNumber: Exception: " . $th->getMessage() . " --- Line: " . $th->getLine() . " --- Trace: " . $th->getTraceAsString());
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->respond(['status' => 'failed','code' => 500,'data' => $th],500);
}
}
public function verifyEmployeeWithEmailId()
{
{
log_message('error', ' ');
log_message('error', '************************ PRE START ********************************');
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - Verify Employee With EmailId: Function called");
try {
$data = $this->request->getJSON();
$email = $data->email;
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithEmailId: Received Email ID = " . $email);
$empdata = RestAuthHelper::getPreAndPostDataByEmailOrMobile(['email_id' => $email]);
// print_r($empdata); die;
if(empty($empdata)){
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithEmailId: 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);
}
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithEmailId: employee data both PRE & POST = " . json_encode($empdata));
$employeeData = $this->employeeModel->select('
employees.relationship,
EP.employee_id,
@ -195,11 +228,13 @@ class RestAuthenticationController extends AdminController
$employeeData = [];
if (isset($empdata['pre']) && !empty($empdata['pre'])) {
$employeeData = $empdata['pre'];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithEmailId: Using PRE data");
}
if (isset($employeeData['employee_id'])) {
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithEmailId: Valid employee found, generating OTP");
$otp = random_int(100000, 999999);
// $update = $this->employeeModel->where('email_corporate', $email)->where('relationship', 'self')
@ -221,14 +256,19 @@ class RestAuthenticationController extends AdminController
// $update = $db->query($sql, [$otp, $email]);
$update = $db->query($sql, [$otp, $employeeData['employee_id']]);
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithEmailId: OTP update query executed. SQL = " . $db->getLastQuery());
if($update)
{
$data->otp = $otp;
{
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithEmailId: OTP updated successfully in PRE DATABASE");
$data->otp = $otp;
if (isset($empdata['post']['client_id']) && !empty($empdata['post']['client_id'])) {
$data->client_id = $empdata['post']['client_id'];
$data->employee_id = $empdata['post']['employee_id'];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithEmailId: Attached otp, client_id and employee_id from POST data to update the otp");
}
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithEmailId: Calling callThirdPartyAPI for updateEmpOTP");
$this->callThirdPartyAPI($data, 'updateEmpOTP');
@ -240,41 +280,60 @@ class RestAuthenticationController extends AdminController
'employee_id' => $employeeData['employee_id'],
'mail_type' => 'otp_mail',
];
$subject = 'Nhance user verification - OTP';
$mail_content = $otp . ' is your verification code for Nhance.';
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithEmailId: Sending OTP email to " . $employeeData['email_corporate']);
$res = MailHelper::send_email(['mail' => $employeeData['email_corporate'], 'subject' => $subject, 'common' => $common, 'message' => $mail_content]);
$this->myLogger->logme("info", $res);
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithEmailId: Mail response = " . $res);
if (json_decode($res)->status == 'success') {
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
$result = ['user_verification' => true, 'message' => "Verified Successfully"];
return $this->respond(['status' => 'success', 'code' => 200, 'data' => $result], 200);
} else {
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
$result = ['user_verification' => false, 'message' => "Mail sending failed , try again"];
return $this->respond(['status' => 'failed', 'code' => 404, 'data' => $result], 200);
}
} else {
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithEmailId: OTP update failed in PRE DATABASE");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
$result = ['user_verification' => false, 'message' => "Verification failed , try again"];
return $this->respond(['status' => 'failed', 'code' => 404, 'data' => $result], 200);
}
} else {
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithEmailId: Employee not found with email in the PRE DATABASE, falling back to third-party API");
$apiParams = $this->request->getJSON();
if (!empty($empdata['post']['client_id'])) {
$apiParams->client_id = $empdata['post']['client_id'];
}
// print_r($apiParams); die;
// Call the third-party API function
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->callThirdPartyAPI($apiParams, 'verifyEmployeeEmailId');
}
} catch (\Throwable $th) {
$this->myLogger->logme("error", ($th->getMessage().' --- '.$th->getLine()));
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyEmployeeWithEmailId: Exception: " . $th->getMessage() . " --- Line: " . $th->getLine() . " --- Trace: " . $th->getTraceAsString());
return $this->respond(['status' => 'failed', 'code' => 500, 'data' => $th], 500);
}
}
public function getVerifiedUserData()
{
{
log_message('error', ' ');
log_message('error', '************************ PRE START ********************************');
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - Get Verified User Data: Function called");
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - getVerifiedUserData: Received payload = " . json_encode($this->request->getJSON() ?? []));
try {
$otp_verification = isset($this->request->getJSON()->otp_verification) ? $this->request->getJSON()->otp_verification : null;
@ -284,17 +343,25 @@ class RestAuthenticationController extends AdminController
$email_id = isset($this->request->getJSON()->email_id) ? $this->request->getJSON()->email_id : null;
if (isset($this->request->getJSON()->login_by_hr))
{
{
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - getVerifiedUserData: login_by_hr detected, fetching employee data directly");
$employeeData = $this->employeeModel->where('id', $this->request->getJSON()->employee_id)->where('relationship', 'self')->where('emp_status !=', 'truncated')->where('is_active', 1)->first();
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - getVerifiedUserData: employeeData (login_by_hr) = " . json_encode($employeeData));
}else{
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - getVerifiedUserData: Fetching empdata via RestAuthHelper");
$empdata = RestAuthHelper::getPreAndPostDataByEmailOrMobile(['email_id' => $email_id, 'otp' => $otp ]);
// print_r($empdata); die;
if(empty($empdata)){
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - getVerifiedUserData: empdata is empty");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->respond(['status' => 'failed','code' => 404,'data' => []],200);
}
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - getVerifiedUserData: empdata = " . json_encode($empdata));
if (isset($mobile_number))
{
// $employeeData = $this->employeeModel->where('mobile', $mobile_number)->where('relationship', 'self')->where('emp_status !=', 'truncated')->where('is_active', 1)->first();
@ -328,6 +395,7 @@ class RestAuthenticationController extends AdminController
$employeeData = [];
if (isset($empdata['pre']) && !empty($empdata['pre'])) {
$employeeData = $empdata['pre'];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - getVerifiedUserData: Using PRE data from empdata");
}
}
@ -336,12 +404,13 @@ class RestAuthenticationController extends AdminController
if (isset($empdata['post']['client_id']) && !empty($empdata['post']['client_id'])) {
$requestData->client_id = $empdata['post']['client_id'];
$requestData->employee_id = $empdata['post']['employee_id'];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - getVerifiedUserData: Added client_id and employee_id to requestData for to get the POST employee data");
}
// print_r($requestData); die;
if ($employeeData && $otp_verification == true || $employeeData && isset($this->request->getJSON()->login_by_hr) || $employeeData && isset($this->request->getJSON()->otp) )
{
{
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - getVerifiedUserData: Verified employee found");
$auth = HttpRequestHelper::getRequestInfo();
if ($auth) {
$data = [
@ -360,21 +429,30 @@ class RestAuthenticationController extends AdminController
if(isset($this->request->getJSON()->otp)){
$this->employeeModel->where('id', $employeeData['id'])->where('otp', $otp)->where('relationship', 'self')->set(['otp'=>null])->update();
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - getVerifiedUserData: Reset the otp to null");
}
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - getVerifiedUserData: Calling third-party API - getVerifiedUserData to get the POST employee data");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
// Call the third-party API function
$apiResponse = $this->callThirdPartyAPI($requestData,'getVerifiedUserData');
return $this->respond(['status' => 'success','code' => 200,'data' => $result , 'post_enrollment'=> json_decode($apiResponse, true)],200);
} else {
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - getVerifiedUserData: Employee not verified - calling third-party API fallback to get the POST employee data");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
// Call the third-party API function
$apiResponse = $this->callThirdPartyAPI($requestData,'getVerifiedUserData');
return $this->respond(['status' => 'failed','code' => 404,'data' => [] , 'post_enrollment'=> json_decode($apiResponse, true)],200);
}
} catch (\Exception $e) {
$this->myLogger->logme("error", ($e->getMessage().' --- '.$e->getLine()));
$this->myLogger->logme("error", "Exception: " . $e->getMessage() . " --- Line: " . $e->getLine() . " --- Trace: " . $e->getTraceAsString());
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->respond(['status' => 'failed','code' => 500,'data' =>[], 'error' => $e->getMessage()],500);
}
}
@ -449,7 +527,7 @@ class RestAuthenticationController extends AdminController
$subject = 'Nhance user verification - OTP';
$mail_content = $otp . ' is your verification code for Nhance.';
$res = MailHelper::send_email(['mail' => $email, 'subject' => $subject, 'common' => $common, 'message' => $mail_content]);
$this->myLogger->logme("info", $res);
$this->myLogger->logme("error", $res);
if (json_decode($res)->status == 'success') {
$result = ['user_verification' => true, 'message' => "Verified Successfully"];
@ -474,7 +552,6 @@ class RestAuthenticationController extends AdminController
}
}
public function getVerifiedHrData()
{
try {
@ -577,7 +654,13 @@ class RestAuthenticationController extends AdminController
public function saveMpin()
{
{
log_message('error', ' ');
log_message('error', '************************ PRE START ********************************');
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - Save Mpin: Function called");
$payload = $this->request->getJSON() ?? [];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - saveMpin: Request payload = " . json_encode($payload));
try {
$mobile_number = isset($this->request->getJSON()->mobile_number) ? $this->request->getJSON()->mobile_number : null;
@ -587,10 +670,15 @@ class RestAuthenticationController extends AdminController
// print_r($empdata); die;
if(empty($empdata)){
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - saveMpin: No employee data found both PRE and 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);
}
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - saveMpin: empdata = " . json_encode($empdata));
if (isset($mobile_number)) {
// $employeeData = $this->employeeModel->where('mobile', $mobile_number)->where('relationship', 'self')->first();
$employeeData = $this->employeeModel
@ -622,6 +710,7 @@ class RestAuthenticationController extends AdminController
$employeeData = [];
if (isset($empdata['pre']) && !empty($empdata['pre'])) {
$employeeData = $empdata['pre'];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - saveMpin: Using PRE data from empdata");
}
$mpin = $this->request->getJSON()->mpin;
@ -638,34 +727,52 @@ class RestAuthenticationController extends AdminController
if (isset($empdata['post']['client_id']) && !empty($empdata['post']['client_id'])) {
$requestData->client_id = $empdata['post']['client_id'];
$requestData->employee_id = $empdata['post']['employee_id'];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - saveMpin: Added client_id & employee_id to requestData to get the POST employee data");
}
if ($employeeData) {
$id= $employeeData["id"];
$updateMpin = $this->employeeModel->where('id', $id)->set($mpin_data_to_updata)->update();
if($updateMpin){
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - saveMpin: MPIN updated successfully");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
$this->callThirdPartyAPI($requestData, 'saveMpin');
$result = ['user_verification' => true , 'message' => "Mpin Updated"];
return $this->respond(['status' => 'success','code' => 200,'data' => $result],200);
}else{
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - saveMpin: MPIN update failed");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
$result = ['user_verification' => true , 'message' => "Mpin Not Updated"];
return $this->respond(['status' => 'failed','code' => 404,'data' => $result],200);
}
} else {
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - saveMpin: Employee not found in final check, calling third-party API to the POST");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->callThirdPartyAPI($requestData, 'saveMpin');
}
} catch (\Throwable $th) {
$this->myLogger->logme("error", ($th->getMessage().' --- '.$th->getLine()));
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - Exception: " . $th->getMessage() . " --- Line: " . $th->getLine() . " --- Trace: " . $th->getTraceAsString());
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->respond(['status' => 'failed','code' => 500,'data' => $th],500);
}
}
public function updateMpin()
{
{
log_message('error', ' ');
log_message('error', '************************ PRE START ********************************');
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - Update Mpin: Function called");
$payload = $this->request->getJSON() ?? [];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMpin: Request payload = " . json_encode($payload));
try {
$mobile_number = isset($this->request->getJSON()->mobile_number) ? $this->request->getJSON()->mobile_number : null;
@ -677,10 +784,16 @@ class RestAuthenticationController extends AdminController
// print_r($empdata); die;
if(empty($empdata)){
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMpin: No employee data found both PRE and 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);
}
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMpin: empdata = " . json_encode($empdata));
if (isset($mobile_number)) {
// $employeeData = $this->employeeModel->where('mobile', $mobile_number)->where('mpin', $old_mpin)->where('relationship', 'self')->first();
$employeeData = $this->employeeModel
@ -714,39 +827,61 @@ class RestAuthenticationController extends AdminController
$employeeData = [];
if (isset($empdata['pre']) && !empty($empdata['pre'])) {
$employeeData = $empdata['pre'];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMpin: Using PRE data from empdata");
}
$requestData = $this->request->getJSON();
if (isset($empdata['post']['client_id']) && !empty($empdata['post']['client_id'])) {
$requestData->client_id = $empdata['post']['client_id'];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMpin: Added client_id & employee_id to requestData to get the POST employee data");
}
if ($employeeData) {
$id= $employeeData["id"];
$updateMpin = $this->employeeModel->where('id', $id)->set('mpin', $mpin)->update();
if($updateMpin){
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMpin: MPIN updated successfully");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
$this->callThirdPartyAPI($requestData, 'updateMpin');
$result = ['mpin_verification' => true , 'message' => "Mpin Updated"];
return $this->respond(['status' => 'success','code' => 200,'data' => $result],200);
}else{
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMpin: MPIN update failed");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
$result = ['mpin_verification' => true , 'message' => "Mpin Not Updated"];
return $this->respond(['status' => 'failed','code' => 404,'data' => $result],200);
}
} else {
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - updateMpin: Employee not found in final check, calling third-party API to the POST");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->callThirdPartyAPI($requestData, 'updateMpin');
}
} catch (\Throwable $th) {
$this->myLogger->logme("error", ($th->getMessage().' --- '.$th->getLine()));
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - Exception: " . $th->getMessage() . " --- Line: " . $th->getLine() . " --- Trace: " . $th->getTraceAsString());
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->respond(['status' => 'failed','code' => 500,'data' => $th],500);
}
}
public function verifyMpin()
{
log_message('error', ' ');
log_message('error', '************************ PRE START ********************************');
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - Verify Mpin: Function called");
$payload = $this->request->getJSON() ?? [];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyMpin: Request payload = " . json_encode($payload));
try {
$mobile_number = isset($this->request->getJSON()->mobile_number) ? $this->request->getJSON()->mobile_number : null;
@ -757,9 +892,14 @@ class RestAuthenticationController extends AdminController
// print_r($empdata); die;
if(empty($empdata)){
return $this->respond(['status' => 'failed', 'code' => 404, 'data' => 'Invalid MPIN'], 200);
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyMpin: No employee data found both PRE and POST");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->respond(['status' => 'failed', 'code' => 404, 'data' => []], 200);
}
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyMpin: empdata = " . json_encode($empdata));
if (isset($mobile_number)) {
// $employeeData = $this->employeeModel->where('mobile', $mobile_number)->where('relationship', 'self')->first();
$employeeData = $this->employeeModel
@ -791,15 +931,20 @@ class RestAuthenticationController extends AdminController
$employeeData = [];
if (isset($empdata['pre']) && !empty($empdata['pre'])) {
$employeeData = $empdata['pre'];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyMpin: Using PRE data from empdata");
}
$requestData = $this->request->getJSON();
if (isset($empdata['post']['client_id']) && !empty($empdata['post']['client_id'])) {
$requestData->client_id = $empdata['post']['client_id'];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyMpin: Added client_id to requestData to get the POST employee data");
}
if ($employeeData && $mpin == $employeeData["mpin"]) {
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyMpin: Verified employee found");
$auth = HttpRequestHelper::getRequestInfo();
if ($auth) {
$data = [
@ -815,13 +960,22 @@ class RestAuthenticationController extends AdminController
unset($employeeData['employee_id']);
$result = JWTToken::encode($employeeData);
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyMpin: Calling third-party API - verifyMpin to get the POST employee data");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
// Call the third-party API function
$apiResponse = $this->callThirdPartyAPI($requestData, 'verifyMpin');
return $this->respond(['status' => 'success', 'code' => 200, 'data' => $result, 'post_enrollment' => json_decode($apiResponse, true)], 200);
} else {
// Call the third-party API function
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - verifyMpin: Employee not verified - calling third-party API fallback to get the POST employee data");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
// Call the third-party API function
$apiResponse = $this->callThirdPartyAPI($requestData, 'verifyMpin');
return $this->respond(['status' => 'failed', 'code' => 404, 'data' => "Invalid OTP", 'post_enrollment' => json_decode($apiResponse, true)], 200);
@ -831,14 +985,23 @@ class RestAuthenticationController extends AdminController
}
} catch (\Exception $e) {
$this->myLogger->logme("error", ($e->getMessage().' --- '.$e->getLine()));
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - Exception: " . $e->getMessage() . " --- Line: " . $e->getLine() . " --- Trace: " . $e->getTraceAsString());
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->respond(['status' => 'failed', 'code' => 500, 'data' => $e->getMessage()], 500);
return $this->respond(['status' => 'failed', 'code' => 200, 'post_enrollment' => json_decode($apiResponse, true)], 200);
}
}
public function checkMpin()
{
{
log_message('error', ' ');
log_message('error', '************************ PRE START ********************************');
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - Check Mpin: Function called");
$payload = $this->request->getJSON() ?? [];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - checkMpin: Request payload = " . json_encode($payload));
try {
$mobile_number = isset($this->request->getJSON()->mobile_number) ? $this->request->getJSON()->mobile_number : null;
$email_id = isset($this->request->getJSON()->email_id) ? $this->request->getJSON()->email_id : null;
@ -847,9 +1010,14 @@ class RestAuthenticationController extends AdminController
// print_r($empdata); die;
if(empty($empdata)){
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - checkMpin: No employee data found both PRE and POST");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->respond(['status' => 'failed','code' => 404,'data' => "Mpin - not found", 'Mpin' =>null],200);
}
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - checkMpin: empdata = " . json_encode($empdata));
if (isset($mobile_number))
{
@ -884,39 +1052,52 @@ class RestAuthenticationController extends AdminController
$employeeData = [];
if (isset($empdata['pre']) && !empty($empdata['pre'])) {
$employeeData = $empdata['pre'];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - checkMpin: Using PRE data from empdata");
}
$requestData = $this->request->getJSON();
if (isset($empdata['post']['client_id']) && !empty($empdata['post']['client_id'])) {
$requestData->client_id = $empdata['post']['client_id'];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - checkMpin: Added client_id to requestData to get the POST employee data");
}
if ($employeeData && $employeeData["mpin"] != null) {
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - checkMpin: Mpin - Exist");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->respond(['status' => 'success','code' => 200,'data' => "Mpin - exist" , 'Mpin' =>$employeeData["mpin"], 'is_mpin_skipped' => $employeeData['is_mpin_skipped'], 'is_biometric_enabled' => $employeeData['is_biometric_enabled']],200);
} else {
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - checkMpin: Mpin - not found in PRE so call the thirdpartapi to the POST to check the MPIN");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
// return $this->respond(['status' => 'failed','code' => 404,'data' => "Mpin - not found", 'Mpin' =>null],200);
return $this->callThirdPartyAPI($requestData, 'checkMpin');
}
} catch (\Exception $e) {
$this->myLogger->logme("error", ($e->getMessage().' --- '.$e->getLine()));
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - Exception: " . $e->getMessage() . " --- Line: " . $e->getLine() . " --- Trace: " . $e->getTraceAsString());
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->respond(['status' => 'failed','code' => 500,'data' => $e->getMessage()],500);
}
}
public function forgotMPIN()
{
{
log_message('error', ' ');
log_message('error', '************************ PRE START ********************************');
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - Forgot Mpin: Function called");
$payload = $this->request->getJSON() ?? [];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - forgotMPIN: Request payload = " . json_encode($payload));
try {
log_message('info', 'forgotMPIN() called.');
$json = $this->request->getJSON();
$mobile_number = $json->mobile_number ?? null;
$email_id = $json->email_id ?? null;
log_message('info', 'Received input - Mobile: ' . var_export($mobile_number, true) . ', Email: ' . var_export($email_id, true));
// Step 1: Check input
if (!$mobile_number && !$email_id) {
log_message('error', 'Mobile number and email ID are both missing.');
@ -931,9 +1112,15 @@ class RestAuthenticationController extends AdminController
// print_r($empdata); die;
if(empty($empdata)){
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - forgotMpin: No employee data found both PRE and POST");
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->respond(['status' => 'failed','code' => 404,'data' => "Mpin - not found", 'Mpin' =>null],200);
}
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - forgotMPIN: empdata = " . json_encode($empdata));
// Step 2: Fetch employee data
if ($mobile_number) {
log_message('info', 'Looking up employee by mobile number: ' . $mobile_number);
@ -966,10 +1153,12 @@ class RestAuthenticationController extends AdminController
$employeeData = [];
if (isset($empdata['pre']) && !empty($empdata['pre'])) {
$employeeData = $empdata['pre'];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - forgotMPIN: Using PRE data from empdata");
}
if (isset($empdata['post']['client_id']) && !empty($empdata['post']['client_id'])) {
$json->client_id = $empdata['post']['client_id'];
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - forgotMPIN: Added client_id to requestData to get the POST employee data");
}
// Step 3: Found employee
@ -984,21 +1173,18 @@ class RestAuthenticationController extends AdminController
log_message('info', 'Updating employee MPIN fields to null for ID: ' . $employeeData['id']);
$updated = $this->employeeModel
->where('id', $employeeData['id'])
->set($updateData)
->update();
$updated = $this->employeeModel->where('id', $employeeData['id'])->set($updateData)->update();
if ($updated) {
$this->callThirdPartyAPI($json, 'forgotMPIN');
log_message('info', 'MPIN reset successful for employee ID: ' . $employeeData['id']);
return $this->respond([
'status' => 'success',
'code' => 200,
'message' => 'MPIN reset successfully.'
], 200);
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->respond(['status' => 'success','code' => 200,'message' => 'MPIN reset successfully.' ], 200);
} else {
log_message('error', 'Failed to update MPIN fields for employee ID: ' . $employeeData['id']);
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->respond([
'status' => 'failed',
'code' => 500,
@ -1008,15 +1194,15 @@ class RestAuthenticationController extends AdminController
} else {
// Step 4: Not found in local DB — call external fallback
log_message('warning', 'Employee not found locally. Falling back to third-party API.');
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->callThirdPartyAPI($json, 'forgotMPIN');
}
} catch (\Throwable $e) {
$this->myLogger->logme("error", ($e->getMessage().' --- '.$e->getLine()));
return $this->respond([
'status' => 'failed',
'code' => 500,
'message' => 'Server error: ' . $e->getMessage()
], 500);
$this->myLogger->logme("error", "REST-AUTH-CONTROLLER - Exception: " . $e->getMessage() . " --- Line: " . $e->getLine() . " --- Trace: " . $e->getTraceAsString());
log_message('error', ' ');
log_message('error', '************************ PRE END ********************************');
return $this->respond(['status' => 'failed','code' => 500,'message' => 'Server error: ' . $e->getMessage() ], 500);
}
}

View File

@ -367,7 +367,7 @@ class RestAuthHelper
$response = $client->post($url, ['json' => $postData, 'http_errors' => false]);
$post_json = $response->getBody();
log_message('error', 'Response from API: ' . $post_json);
// log_message('error', 'Response from API: ' . $post_json);
$post_data = json_decode($post_json, true);