From 4a7c9af8dbfbc012312cd0d18d8adcc32196464c Mon Sep 17 00:00:00 2001 From: velz Date: Fri, 8 May 2026 12:01:02 +0530 Subject: [PATCH] FIX_REMINDDER_MAIL_TRIGGER_ISSUE --- app/Controllers/DashboardController.php | 6 ++--- app/Models/ClientPolicyModel.php | 34 ++++++++++++++++++++++++- 2 files changed, 36 insertions(+), 4 deletions(-) diff --git a/app/Controllers/DashboardController.php b/app/Controllers/DashboardController.php index 4abc8dd..5eaea14 100755 --- a/app/Controllers/DashboardController.php +++ b/app/Controllers/DashboardController.php @@ -362,7 +362,7 @@ class DashboardController extends AdminController $employees = $this->employeePolicyModel ->select('employees.*, employee_polices.id as emp_policy_id') ->join('employees', 'employee_polices.employee_id = employees.id', 'left') - ->where('employee_polices.client_policy_id', $client_policy['id']) + ->where('employee_polices.client_policy_id', $client_policy['policy_id']) ->where('employees.is_active', 1) ->where('employee_polices.is_active', 1) ->where('employees.emp_status', 'draft') @@ -378,7 +378,7 @@ class DashboardController extends AdminController $empDependentData = $this->employeePolicyModel ->select('employees.*, employee_polices.id as emp_policy_id') ->join('employees', 'employee_polices.employee_id = employees.id', 'left') - ->where('employee_polices.client_policy_id', $client_policy['id']) + ->where('employee_polices.client_policy_id', $client_policy['policy_id']) ->where('employees.is_active', 1) ->where('employee_polices.is_active', 1) ->where('employees.emp_status', 'draft') @@ -422,7 +422,7 @@ class DashboardController extends AdminController $params['common'] = [ 'client_id' => $client_policy['client_id'], 'client_branch_id' => $client_policy['client_branch_id'], - 'client_policy_id' => $client_policy['id'], + 'client_policy_id' => $client_policy['policy_id'], 'employee_policy_id' => $employee['emp_policy_id'], 'employee_id' => $employee['id'], 'mail_type' => 'member_reminder_mail', diff --git a/app/Models/ClientPolicyModel.php b/app/Models/ClientPolicyModel.php index 0469760..f9ccbce 100755 --- a/app/Models/ClientPolicyModel.php +++ b/app/Models/ClientPolicyModel.php @@ -435,7 +435,7 @@ public function getCliendDataForExcelFileName($client_policy_id){ } //for this using in CRONE JOB -public function getPolicyDetailsForRemainder($client_id = null, $branch_id = null, $policy_id = null) +public function getPolicyDetailsForRemainderOLD($client_id = null, $branch_id = null, $policy_id = null) { $builder = $this->table('client_policy') ->join( @@ -472,6 +472,38 @@ public function getPolicyDetailsForRemainder($client_id = null, $branch_id = nul return $data; } + +public function getPolicyDetailsForRemainder($client_id = null, $branch_id = null, $policy_id = null) +{ + $subQuery = '(SELECT MAX(id) as id, policy_id + FROM files + WHERE status = "success" + AND enrollment_open_date <= CURDATE() + AND enrollment_close_date >= CURDATE() + GROUP BY policy_id) latest_files'; + + $builder = $this->table('client_policy'); + + $builder->join($subQuery, 'latest_files.policy_id = client_policy.id'); + + $builder->join('files', 'files.id = latest_files.id'); + + $builder->where('client_policy.is_active', 1) + ->where('client_policy.policy_status', 1); + + if ($client_id && $branch_id) { + $builder->where('client_policy.client_id', $client_id) + ->where('client_policy.client_branch_id', $branch_id); + } + + if (empty($policy_id)) { + $builder->whereIn('client_policy.policy_type_id', [2,3,4,5]); + } else { + $builder->where('client_policy.id', $policy_id); + } + + return $builder->get()->getResultArray(); +} //for this using in CRONE JOB public function getPolicyDetailsForEnrollment($client_id = null, $branch_id = null) {