From 4cc2b8913d33cafbb0e0f0993ffe4833cfde66de Mon Sep 17 00:00:00 2001 From: "venkatesh.r" Date: Wed, 5 Nov 2025 17:19:00 +0530 Subject: [PATCH 1/2] CHANGE_GET_TPA_IDAND_CHANGE_GET_ECARD_URL --- app/Controllers/ApiServiceController.php | 63 +++++++++++++-------- app/Controllers/JobWorker.php | 4 ++ app/Controllers/MediAssistApiController.php | 12 +++- 3 files changed, 55 insertions(+), 24 deletions(-) diff --git a/app/Controllers/ApiServiceController.php b/app/Controllers/ApiServiceController.php index 28f74842..f908fa91 100644 --- a/app/Controllers/ApiServiceController.php +++ b/app/Controllers/ApiServiceController.php @@ -62,13 +62,13 @@ class ApiServiceController extends BaseController $policy_no = $payload['policy_no'] ?? null; - $employee_policy = $this->employeePolicyModel - ->select('employees.*, employee_polices.tpa_id , employee_polices.rand_string , employee_polices.uhid as uhid , client_policy.tpa_id as tpa_primary_id ') - ->join('employees', 'employee_polices.employee_id = employees.id', 'left') - ->join('client_policy', 'employee_polices.client_policy_id = client_policy.id', 'left') - ->where('employee_polices.employee_id',$id) - ->where('employee_polices.client_policy_id',$client_policy_id) - ->where('employee_polices.is_active', 1 )->findAll(); + $employee_policy = $this->employeePolicyModel + ->select('employees.*, employee_polices.tpa_id , employee_polices.rand_string , employee_polices.uhid as uhid , client_policy.tpa_id as tpa_primary_id ') + ->join('employees', 'employee_polices.employee_id = employees.id', 'left') + ->join('client_policy', 'employee_polices.client_policy_id = client_policy.id', 'left') + ->where('employee_polices.employee_id',$id) + ->where('employee_polices.client_policy_id',$client_policy_id) + ->where('employee_polices.is_active', 1 )->findAll(); @@ -78,21 +78,24 @@ class ApiServiceController extends BaseController { if($employee_policy[0]['tpa_primary_id'] == 2)//Medi assist { - $mediAssistController = new MediAssistApiController(); - $data['eCardDownload'] = $mediAssistController->EcardRequest( $emp_code, $policy_no ); + $mediAssistController = new MediAssistApiController(); + $data['eCardDownload'] = $mediAssistController->EcardRequest( $emp_code, $policy_no ); }else{ - $data['eCardDownload'] = base_url('download-e-card/') . $employee_policy[0]['rand_string'].'/1'; + $data['eCardDownload'] = base_url('download-e-card/') . $employee_policy[0]['rand_string'].'/1'; } + $data['message'] = "E-card generated"; } else { - $data['eCardDownload'] = null; + $data['eCardDownload'] = null; + $data['message'] = "E-card not generated"; } }else{ - $data['eCardDownload'] = null; + $data['eCardDownload'] = null; + $data['message'] = "E-card not generated"; } - return $this->respond(['status' => true,'message' => '','data' => $data]); + return $this->respond(['status' => true, 'code' => 200, 'message' => '', 'data' => $data]); } catch(\Exception $e){ @@ -103,24 +106,38 @@ class ApiServiceController extends BaseController public function getTPAID() { - $tpa_id = $this->request->getPost('tpa_id'); - $policy_no = $this->request->getPost('policy_no'); - $client_id = $this->request->getPost('client_id'); - $branch_id = $this->request->getPost('client_branch_id'); - $policy_id = $this->request->getPost('client_policy_id'); + log_message('error', "getTPAID payloads :" . json_encode($this->request->getPost() ?? [])); + $tpa_id = $this->request->getPost('tpa_id') ?? null; + $policy_no = $this->request->getPost('policy_no') ?? null; + $client_id = $this->request->getPost('client_id') ?? null; + $branch_id = $this->request->getPost('client_branch_id') ?? null; + $policy_id = $this->request->getPost('client_policy_id') ?? null; $fileModel = new FileModel(); - $filesData = $fileModel->where('is_active', 1)->where('action', 'api')->countAllResults(); + $filesData = $fileModel->where('is_active', 1)->where('action', 'api')->where('status', 'inprogress')->countAllResults(); if($filesData > 0){ - return $this->respond(['status' => false, 'code' => 200,'message' => 'TPA not found ','data' => [] ]); + log_message('error', "Already the TPA GetBenefDetails job inprocess"); + return $this->respond(['status' => false, 'code' => 200,'message' => 'TPA initiation is in progress.','data' => [] ]); } + $data = [ + 'file_name' => "API", + 'action' => "api", + 'status' => "inprogress", + 'client_id' => $client_id, + 'policy_id' => $policy_id, + 'client_branch_id'=> $branch_id, + ]; + if ($tpa_id == 2) // MediAssist { - - $mediAssistController = new MediAssistApiController(); - $mediAssistController->GetBenefDetails( [ 'polict_no' => $policy_no ] ); + $file_id = $fileModel->insert($data); + log_message('error', "Files table inserted successfully, File id : {$file_id}"); + // $mediAssistController = new MediAssistApiController(); + // $mediAssistController->GetBenefDetails( [ 'polict_no' => $policy_no, 'file_id' =>$file_id ] ); + $r = Jobs::addJob(['job_name' => 'GetBenefDetails', 'payload' => ['polict_no' => $policy_no, 'file_id' => $file_id]]); + log_message('error', "GetBenefDetails job pushed successfully."); return $this->respond(['status' => true, 'code' => 200, 'message' => 'Action Triggered','data' => [] ]); diff --git a/app/Controllers/JobWorker.php b/app/Controllers/JobWorker.php index 1dbf51b5..eadca406 100755 --- a/app/Controllers/JobWorker.php +++ b/app/Controllers/JobWorker.php @@ -175,6 +175,10 @@ class JobWorker extends AdminController 'type' => 'CC', // Handler Category 'handler' => 'App\Controllers\EmployeeServiceController', ], + 'GetBenefDetails' => [ + 'type' => 'CC', // Handler Category + 'handler' => 'App\Controllers\MediAssistApiController', + ], ]; diff --git a/app/Controllers/MediAssistApiController.php b/app/Controllers/MediAssistApiController.php index 4eeeebae..691c8ec4 100644 --- a/app/Controllers/MediAssistApiController.php +++ b/app/Controllers/MediAssistApiController.php @@ -3,7 +3,7 @@ namespace App\Controllers; use App\Controllers\BaseController; - +use App\Models\FileModel; use CodeIgniter\HTTP\ResponseInterface; class MediAssistApiController extends BaseController @@ -297,6 +297,16 @@ class MediAssistApiController extends BaseController } } + // update file table status after the tpa id successfully updated + if(isset($requestData['file_id']) && !empty($requestData['file_id'])){ + $file_model = new FileModel(); + $file_model->where('id', $requestData['file_id'])->set('status', 'success')->update(); + log_message('error', "Files table status updated for the file id : {$requestData['file_id']}"); + }else{ + log_message('error', "Failed to update file table status."); + } + + log_message('error', "GetBenefDetails completed. Total fetched={$totalCount}, updated={$updated}"); return $this->response->setJSON([ From 921ac384bf4287e223f8295d3ba0606b66432640 Mon Sep 17 00:00:00 2001 From: "venkatesh.r" Date: Wed, 5 Nov 2025 17:37:44 +0530 Subject: [PATCH 2/2] FEAT_CLAIM_TPA_PUSH --- app/Controllers/EmployeeRestController.php | 5 +++++ app/Controllers/TicketController.php | 6 ++++++ 2 files changed, 11 insertions(+) diff --git a/app/Controllers/EmployeeRestController.php b/app/Controllers/EmployeeRestController.php index 366849f8..40ea8e5f 100755 --- a/app/Controllers/EmployeeRestController.php +++ b/app/Controllers/EmployeeRestController.php @@ -3636,6 +3636,11 @@ class EmployeeRestController extends AdminController return $this->respond(['status' => false, 'code' => 400, 'message' => $message], 200); } + // this call for TPA integration + $apiServiceController = new ApiServiceController(); + $apiServiceController->pushClaims($insert_status); + log_message('error', "pushClaims function called with Ticket ID: {$insert_status}, In Employee Rest Controller"); + } else { $message = 'Something Went Wrong'; return $this->respond(['status' => false, 'code' => 400, 'message' => $message], 200); diff --git a/app/Controllers/TicketController.php b/app/Controllers/TicketController.php index f6a924c2..f41b9a8f 100644 --- a/app/Controllers/TicketController.php +++ b/app/Controllers/TicketController.php @@ -1056,6 +1056,12 @@ class TicketController extends BaseController $this->putHistoryAfterInsert($ticket_data, $return_value); $mail_responce = $this->sendAutoMailTrigger($return_value); $this->autoMessageInsertBasedOnMailResponse($mail_responce, $return_value); + + // this call for TPA integration + $apiServiceController = new ApiServiceController(); + $apiServiceController->pushClaims($return_value); + log_message('error', "pushClaims function called with Ticket ID: {$return_value}, In Ticket Controller"); + return $this->respond(['status' => true, 'ticket_id' => $return_value, 'code' => 200, 'data' => $ticket_data, "message" => "Claim created successfully", 'mail_responce' => $mail_responce], 200); } else { return $this->respond(['status' => false, 'code' => 404, 'message' => 'Failed to create claim'], 200);