From 843cea9ceeb2a6f28ce5e4bcffb00eec69c59137 Mon Sep 17 00:00:00 2001 From: "venkatesh.r" Date: Wed, 18 Mar 2026 19:53:06 +0530 Subject: [PATCH] FIX_LIVE_ISSUES --- app/Models/EmployeePolicyModel.php | 43 +++++++++++++++++++++--------- app/Views/employee_data_list.php | 9 ++++--- 2 files changed, 37 insertions(+), 15 deletions(-) diff --git a/app/Models/EmployeePolicyModel.php b/app/Models/EmployeePolicyModel.php index 92c2905..d61d75a 100755 --- a/app/Models/EmployeePolicyModel.php +++ b/app/Models/EmployeePolicyModel.php @@ -140,22 +140,41 @@ class EmployeePolicyModel extends Model '(SELECT old_value FROM auditing_history WHERE pk = emp.id AND field_name = "gender" AND table_name = "employees" ORDER BY id ASC LIMIT 1) AS gender_first_old', '(SELECT new_value FROM auditing_history WHERE pk = emp.id AND field_name = "gender" AND table_name = "employees" ORDER BY id DESC LIMIT 1) AS gender_last_new', - '(CASE - WHEN emp.relationship = "Self" - THEN (SELECT COUNT(id) FROM employees WHERE emp_code = emp.emp_code AND is_active = 0 AND emp_status != "truncated") + "(CASE + WHEN emp.relationship = 'Self' + THEN ( + SELECT IF(COUNT(e.id) > 0, + CONCAT( + COUNT(e.id), + ' people removed ( ', + GROUP_CONCAT(CONCAT(e.name, ' - ', e.relationship) SEPARATOR ', '), + ' )' + ), + NULL) + FROM employees e + JOIN employee_polices ep ON e.id = ep.employee_id + WHERE e.emp_code = emp.emp_code + AND e.is_active = 0 + AND e.emp_status != 'truncated' + AND ep.client_policy_id = employee_polices.client_policy_id + ) ELSE NULL - END) AS removed_count', + END) AS removed_summary", - '(CASE - WHEN emp.relationship != "Self" AND emp.created_at != ( - SELECT created_at - FROM employees - WHERE emp_code = emp.emp_code AND relationship = "Self" AND is_active = 1 - LIMIT 1 + "(CASE + WHEN emp.relationship != 'Self' AND DATE(emp.created_at) > ( + SELECT DATE(MIN(e_sub.created_at)) + FROM employees e_sub + JOIN employee_polices ep ON e_sub.id = ep.employee_id + WHERE e_sub.emp_code = emp.emp_code + AND e_sub.relationship = 'Self' + AND e_sub.is_active = 1 + AND ep.client_policy_id = employee_polices.client_policy_id ) - THEN "Newly Added" + THEN 'Newly Added' ELSE NULL - END) AS newly_added', + END) AS newly_added", + $status_query ], false) ->join('employees emp', 'employee_polices.employee_id = emp.id') diff --git a/app/Views/employee_data_list.php b/app/Views/employee_data_list.php index c8f094b..65915de 100755 --- a/app/Views/employee_data_list.php +++ b/app/Views/employee_data_list.php @@ -212,10 +212,13 @@ if(!empty($employee['newly_added'])){ echo "

" . $employee['newly_added'] . "

"; } - if(!empty($employee['removed_count'])){ - echo "

" . $employee['removed_count'] . " People removed

"; + // if(!empty($employee['removed_count'])){ + // echo "

" . $employee['removed_count'] . " People removed

"; + // } + if(!empty($employee['removed_summary'])){ + echo "

" . $employee['removed_summary'] . "

"; } - if(empty($employee['name_first_old']) && empty($employee['dob_first_old']) && empty($employee['gender_first_old']) && empty($employee['removed_count'] ) && empty($employee['newly_added'] )){ + if(empty($employee['name_first_old']) && empty($employee['dob_first_old']) && empty($employee['gender_first_old']) && empty($employee['removed_summary'] ) && empty($employee['newly_added'] )){ echo " - "; } ?>