Merge remote-tracking branch 'origin/dev' into dev

This commit is contained in:
velz 2024-12-06 10:40:29 +05:30
commit 92960b2f37
2 changed files with 75 additions and 8 deletions

View File

@ -452,7 +452,7 @@ $routes->group("employeeRest", ["filter" => "authJWT"], function ($routes) {
$routes->get("sendPushNotification", "EmployeeRestController::sendPushNotification");
$routes->post("sendEmail", "EmployeeRestController::send_email");
// $routes->post("employeeUpload", "EmployeeRestController::employeeUpload");
$routes->get("getFamilyPolicyDetails", "EmployeeRestController::getFamilyPolicyDetails");
// Ticketing System

View File

@ -1736,7 +1736,7 @@ class EmployeeRestController extends AdminController
foreach ($addOnEmployeeData as $key => $value) {
if ($value['family_floater_key'] === $dependent) {
$employee_policy = $this->employeePolicyModel->where('employee_id',$value['id'])->where('client_policy_id',$array['id'])->where('is_active', 1 )->get()->getRow();
if(isset($employee_policy->basic_cover_si)){ $dependent_and_si_value = $employee_policy->basic_cover_si; }
if(isset($employee_policy->basic_cover_si)){ $dependent_and_si_value = ($dependent_and_si_value == 0) ? $employee_policy->basic_cover_si : $dependent_and_si_value; }
if(isset($employee_policy->rata_premimum)){ $dependent_and_si_premium_value = $dependent_and_si_premium_value + $employee_policy->rata_premimum;}
if(isset($employee_policy->gst)){ $dependent_and_si_gst_value = $dependent_and_si_gst_value + $employee_policy->gst;}
@ -1839,7 +1839,7 @@ class EmployeeRestController extends AdminController
else if($key == 'childrens'){ $text = ["child"]; }
else if($key == 'parents-in-law'){ $text = ["parent_in_law"];}
else if($key ==='either-parents-pil') { $text = ["parent", "parent_in_law"];}
else{ $text = $key; }
else{ $text = [$key]; }
$whereArray = array_merge($whereArray, $text);
}
}
@ -1857,7 +1857,7 @@ class EmployeeRestController extends AdminController
foreach ($BasePolicyEmployeeData as $key => $value) {
$employee_policy = $this->employeePolicyModel->where('employee_id',$value['id'])->where('client_policy_id',$array['id'])->where('is_active', 1 )->get()->getRow();
if(isset($employee_policy->basic_cover_si)){ $only_si_value = $employee_policy->basic_cover_si; }
if(isset($employee_policy->basic_cover_si)){ $only_si_value = ($only_si_value == 0) ? $employee_policy->basic_cover_si : $only_si_value; }
if(isset($employee_policy->rata_premimum)){ $only_si_premium_value = $only_si_premium_value + $employee_policy->rata_premimum;}
if(isset($employee_policy->gst)){ $only_si_gst_value = $only_si_gst_value + $employee_policy->gst;}
$temp3['is_value_exist'] = true;
@ -1893,7 +1893,7 @@ class EmployeeRestController extends AdminController
else if($key == 'childrens'){ $text = ["child"]; }
else if($key == 'parents-in-law'){ $text = ["parent_in_law"];}
else if($key ==='either-parents-pil') { $text = ["parent", "parent_in_law"];}
else{ $text = $key; }
else{ $text = [$key]; }
$whereArray = array_merge($whereArray, $text);
}
}
@ -1910,7 +1910,7 @@ class EmployeeRestController extends AdminController
foreach ($BasePolicyEmployeeData as $key => $value) {
$employee_policy = $this->employeePolicyModel->where('employee_id',$value['id'])->where('client_policy_id',$array['id'])->where('is_active', 1 )->get()->getRow();
if(isset($employee_policy->basic_cover_si)){ $only_si_value = $employee_policy->basic_cover_si; }
if(isset($employee_policy->basic_cover_si)){ $only_si_value = ($only_si_value == 0) ? $employee_policy->basic_cover_si : $only_si_value; }
if(isset($employee_policy->rata_premimum)){ $only_si_premium_value = $only_si_premium_value + $employee_policy->rata_premimum;}
if(isset($employee_policy->gst)){ $only_si_gst_value = $only_si_gst_value + $employee_policy->gst;}
$temp3['is_value_exist'] = true;
@ -2282,8 +2282,19 @@ class EmployeeRestController extends AdminController
if($clientPolicy[0]['is_addon'] == 2)//Topup
{
$empData = $this->employeeModel->where('emp_code',$this->request->getGet('emp_code'))
->where('is_addon_value', 0 )->findAll();
if($clientPolicy[0]['policy_type_id'] == 4)//GMC-Topup
{
$empData = $this->employeeModel->where('emp_code',$this->request->getGet('emp_code'))
->where('is_addon_value', 0 )
->findAll();
}else if($clientPolicy[0]['policy_type_id'] == 5)//GMC-Parent-Topup
{
$empData = $this->employeeModel->where('emp_code',$this->request->getGet('emp_code'))
->where('is_addon_value', 1 )
->findAll();
}
if(count($empData))
{
foreach ($empData as $key => $value) {
@ -2652,6 +2663,62 @@ class EmployeeRestController extends AdminController
// log_message('error', $e->getMessage());
// }
// }
public function getFamilyPolicyDetails()
{
// Get query parameters
$empCode = $this->request->getGet('emp_code');
$clientId = $this->request->getGet('client_id');
$clientBranchId = $this->request->getGet('client_branch_id');
if (!$empCode || !$clientId || !$clientBranchId) {
return $this->fail("emp_code, client_id, and client_branch_id are required parameters.");
}
// Fetch employee family details
$employees = $this->employeeModel->select('id,emp_code,name,relationship,dob,emp_status,is_addon_value')->where([
'emp_code' => $empCode,
'client_id' => $clientId,
'client_branch_id' => $clientBranchId,
'is_active' => 1
])->findAll();
if (empty($employees)) {
return $this->failNotFound("No employees found for the provided parameters.");
}
// Collect employee IDs
$employeeIds = array_column($employees, 'id');
// Fetch policies related to the employee IDs
$policies = $this->employeePolicyModel->whereIn('employee_id', $employeeIds)->where('is_active',1)->findAll();
if (empty($policies)) {
return $this->failNotFound("No policies found for the provided employees.");
}
// Structure the response
$result = [];
foreach ($policies as $policy) {
$policyEmployees = array_filter($employees, function ($emp) use ($policy) {
return $emp['id'] === $policy['employee_id'];
});
$result[] = [
'policy_id' => $policy['id'],
'client_policy_id' => $policy['client_policy_id'],
'uhid' => $policy['uhid'],
'status' => $policy['status'],
'basic_cover_si' => $policy['basic_cover_si'],
'date_coverage' => $policy['date_coverage'],
'policy_end_date' => $policy['policy_end_date'],
'members' => array_values($policyEmployees),
];
}
return $this->respond(['family_policies' => $result]);
}