diff --git a/app/Controllers/ClientController.php b/app/Controllers/ClientController.php index 6c76b45b..370e16d3 100644 --- a/app/Controllers/ClientController.php +++ b/app/Controllers/ClientController.php @@ -737,13 +737,13 @@ class ClientController extends AdminController } public function createClientPolicyPremium() - { - try { + { + try { $policy_type = $this->request->getPost('policy_type'); $client_id = $this->request->getPost('client_id'); $client_policy_id = $this->request->getPost('client_policy_id'); $premium_type = $this->request->getPost('premium_type'); - if(!empty($client_id) && $client_id != null){ + if (!empty($client_id) && $client_id != null) { $client_policy_data = $this->clientPolicyModel->where('id', $client_policy_id)->first(); $client_id = $client_policy_data['client_id']; } @@ -753,13 +753,13 @@ class ClientController extends AdminController $premium_multiplier = str_replace(',', '', $this->request->getPost('premium_multiplier')); $multiplier = str_replace(',', '', $this->request->getPost('multiplier')); $basic_pay = str_replace(',', '', $this->request->getPost('basic_pay')); - - $data=[]; + + $data = []; $data['client_id'] = $client_id; $data['client_policy_id'] = $client_policy_id; $data['policy_grid_id'] = $policy_grid_id; $data['premium_type'] = $premium_type; - + $premium = []; @@ -768,20 +768,20 @@ class ClientController extends AdminController } else { $this->policyPremium2Model->where('client_id', $client_id)->where('client_policy_id', $client_policy_id)->set('is_active', 0)->update(); } - - if($policy_grid_id == '1'){ - if ($si_or_bp == '1') { - $premium=str_replace(',', '', $this->request->getPost('gpa_sum_premium[]')); - $sum_insure=str_replace(',', '', $this->request->getPost('gpa_sum_si[]')); - $multiplier=$this->request->getPost('gpa_sum_multiplier'); - for ($i=0; $i < count($premium) ; $i++) { + + if ($policy_grid_id == '1') { + if ($si_or_bp == '1') { + $premium = str_replace(',', '', $this->request->getPost('gpa_sum_premium[]')); + $sum_insure = str_replace(',', '', $this->request->getPost('gpa_sum_si[]')); + $multiplier = $this->request->getPost('gpa_sum_multiplier'); + for ($i = 0; $i < count($premium); $i++) { $data['si'] = $sum_insure[$i]; $data['premium'] = $premium[$i]; $data['multiplier'] = $multiplier; $data['si_or_bp'] = $this->request->getPost('si_or_bp'); - $policyPremium= $this->policyPremium1Model->insert($data); + $policyPremium = $this->policyPremium1Model->insert($data); } } else { $data['premium'] = str_replace(',', '', $this->request->getPost('gpa_basic_premium')); @@ -791,176 +791,181 @@ class ClientController extends AdminController $data['basic_pay'] = str_replace(',', '', $this->request->getPost('basic_pay')); $data['si_or_bp'] = $this->request->getPost('si_or_bp'); - $policyPremium= $this->policyPremium1Model->insert($data); - } - $data = $this->request->getPost(); + $policyPremium = $this->policyPremium1Model->insert($data); + } + $data = $this->request->getPost(); $insert = true; - }else if($policy_grid_id == '2'){ + } else if ($policy_grid_id == '2') { $data['premium'] = str_replace(',', '', $this->request->getPost('gpa_premium')); $data['si'] = str_replace(',', '', $this->request->getPost('gpa_si')); - $policyPremium= $this->policyPremium1Model->insert($data); + $policyPremium = $this->policyPremium1Model->insert($data); $data = $this->request->getPost(); - $insert = true; - }else if($policy_grid_id == '3'){ - $premium=$this->request->getPost('3_premium[]'); - $sum_insure =$this->request->getPost('3_si[]'); - for ($i=0; $i < count($premium) ; $i++) { - $data['premium'] = str_replace(',', '',$premium[$i]); + $insert = true; + } else if ($policy_grid_id == '3') { + $premium = $this->request->getPost('3_premium[]'); + $sum_insure = $this->request->getPost('3_si[]'); + for ($i = 0; $i < count($premium); $i++) { + $data['premium'] = str_replace(',', '', $premium[$i]); $data['si'] = str_replace(',', '', $sum_insure[$i]); - $dataa= $this->policyPremium2Model->insert($data); + $dataa = $this->policyPremium2Model->insert($data); } - $data = $this->request->getPost(); - $insert = true; - }else if($policy_grid_id == '4'){ - $premium=$this->request->getPost('4_premium[]'); - $sum_insure =$this->request->getPost('4_si'); - $age_from =$this->request->getPost('4_age_from[]'); - $age_to =$this->request->getPost('4_age_to[]'); - for ($i=0; $i < count($premium) ; $i++) { - $data['premium'] = str_replace(',', '',$premium[$i]); + $data = $this->request->getPost(); + $insert = true; + } else if ($policy_grid_id == '4') { + $premium = $this->request->getPost('4_premium[]'); + $sum_insure = $this->request->getPost('4_si'); + $age_from = $this->request->getPost('4_age_from[]'); + $age_to = $this->request->getPost('4_age_to[]'); + for ($i = 0; $i < count($premium); $i++) { + $data['premium'] = str_replace(',', '', $premium[$i]); $data['si'] = str_replace(',', '', $sum_insure); $data['age_from'] = $age_from[$i]; $data['age_to'] = $age_to[$i]; - $dataa= $this->policyPremium2Model->insert($data); + $dataa = $this->policyPremium2Model->insert($data); } - $data = $this->request->getPost(); - $insert = true; - }else if($policy_grid_id == '5'){ - $premium=$this->request->getPost('5_premium[]'); - $sum_insure =$this->request->getPost('5_si[]'); - $age_from =$this->request->getPost('5_age_from[]'); - $age_to =$this->request->getPost('5_age_to[]'); - for ($i=0; $i < count($premium) ; $i++) { - $data['premium'] = str_replace(',', '',$premium[$i]); + $data = $this->request->getPost(); + $insert = true; + } else if ($policy_grid_id == '5') { + $premium = $this->request->getPost('5_premium[]'); + $sum_insure = $this->request->getPost('5_si[]'); + $age_from = $this->request->getPost('5_age_from[]'); + $age_to = $this->request->getPost('5_age_to[]'); + for ($i = 0; $i < count($premium); $i++) { + $data['premium'] = str_replace(',', '', $premium[$i]); $data['si'] = str_replace(',', '', $sum_insure[$i]); $data['age_from'] = $age_from[$i]; $data['age_to'] = $age_to[$i]; - $dataa= $this->policyPremium2Model->insert($data); + $dataa = $this->policyPremium2Model->insert($data); } - $data = $this->request->getPost(); - $insert = true; - }else if($policy_grid_id == '6'){ - $premium=$this->request->getPost('6_premium[]'); - $sum_insure =$this->request->getPost('6_si[]'); - $age_from =$this->request->getPost('6_age_from[]'); - $age_to =$this->request->getPost('6_age_to[]'); - for ($i=0; $i < count($premium) ; $i++) { - $data['premium'] = str_replace(',', '',$premium[$i]); + $data = $this->request->getPost(); + $insert = true; + } else if ($policy_grid_id == '6') { + $premium = $this->request->getPost('6_premium[]'); + $sum_insure = $this->request->getPost('6_si[]'); + $age_from = $this->request->getPost('6_age_from[]'); + $age_to = $this->request->getPost('6_age_to[]'); + for ($i = 0; $i < count($premium); $i++) { + $data['premium'] = str_replace(',', '', $premium[$i]); $data['si'] = str_replace(',', '', $sum_insure[$i]); $data['age_from'] = $age_from[$i]; $data['age_to'] = $age_to[$i]; - $dataa= $this->policyPremium2Model->insert($data); + $dataa = $this->policyPremium2Model->insert($data); } - $data = $this->request->getPost(); - $insert = true; - }else if($policy_grid_id == '7'){ - $premium=$this->request->getPost('7_premium[]'); - $sum_insure =$this->request->getPost('7_si[]'); - $age_from =$this->request->getPost('7_age_from[]'); - $age_to =$this->request->getPost('7_age_to[]'); - for ($i=0; $i < count($premium) ; $i++) { - $data['premium'] = str_replace(',', '',$premium[$i]); + $data = $this->request->getPost(); + $insert = true; + } else if ($policy_grid_id == '7') { + $premium = $this->request->getPost('7_premium[]'); + $sum_insure = $this->request->getPost('7_si[]'); + $age_from = $this->request->getPost('7_age_from[]'); + $age_to = $this->request->getPost('7_age_to[]'); + for ($i = 0; $i < count($premium); $i++) { + $data['premium'] = str_replace(',', '', $premium[$i]); $data['si'] = str_replace(',', '', $sum_insure[$i]); $data['age_from'] = $age_from[$i]; $data['age_to'] = $age_to[$i]; - $dataa= $this->policyPremium2Model->insert($data); + $dataa = $this->policyPremium2Model->insert($data); } - $data = $this->request->getPost(); - $insert = true; - }else if($policy_grid_id == '8'){ - $premium=$this->request->getPost('8_premium[]'); - $sum_insure =$this->request->getPost('8_si[]'); - $grade =$this->request->getPost('8_grade[]'); - for ($i=0; $i < count($premium) ; $i++) { - $data['premium'] = str_replace(',', '',$premium[$i]); + $data = $this->request->getPost(); + $insert = true; + } else if ($policy_grid_id == '8') { + $premium = $this->request->getPost('8_premium[]'); + $sum_insure = $this->request->getPost('8_si[]'); + $grade = $this->request->getPost('8_grade[]'); + for ($i = 0; $i < count($premium); $i++) { + $data['premium'] = str_replace(',', '', $premium[$i]); $data['si'] = str_replace(',', '', $sum_insure[$i]); $data['grade'] = $grade[$i]; - $dataa= $this->policyPremium2Model->insert($data); + $dataa = $this->policyPremium2Model->insert($data); } - $data = $this->request->getPost(); - $insert = true; - }else if($policy_grid_id == '9'){ - $premium=$this->request->getPost('9_premium[]'); - $sum_insure =$this->request->getPost('9_si[]'); - $grade =$this->request->getPost('9_grade[]'); - for ($i=0; $i < count($premium) ; $i++) { - $data['premium'] = str_replace(',', '',$premium[$i]); - $data['si'] = str_replace(',', '', $sum_insure[$i]); - $data['grade'] = $grade[$i]; - $dataa= $this->policyPremium2Model->insert($data); - } - $data = $this->request->getPost(); - $insert = true; - }else if($policy_grid_id == '10'){ - $premium=$this->request->getPost('10_premium[]'); - $sum_insure =$this->request->getPost('10_si[]'); - $age_from =$this->request->getPost('10_age_from[]'); - $age_to =$this->request->getPost('10_age_to[]'); - for ($i=0; $i < count($premium) ; $i++) { - $data['premium'] = str_replace(',', '',$premium[$i]); + $data = $this->request->getPost(); + $insert = true; + } else if ($policy_grid_id == '9') { + + $data['premium'] = str_replace(',', '', $this->request->getPost('gpa_premium')); + $data['si'] = str_replace(',', '', $this->request->getPost('gpa_si')); + + $policyPremium = $this->policyPremium2Model->insert($data); + // $premium = $this->request->getPost('9_premium[]'); + // $sum_insure = $this->request->getPost('9_si[]'); + // $grade = $this->request->getPost('9_grade[]'); + // for ($i = 0; $i < count($premium); $i++) { + // $data['premium'] = str_replace(',', '', $premium[$i]); + // $data['si'] = str_replace(',', '', $sum_insure[$i]); + // // $data['grade'] = $grade[$i]; + // $dataa = $this->policyPremium2Model->insert($data); + // } + $data = $this->request->getPost(); + $insert = true; + } else if ($policy_grid_id == '10') { + $premium = $this->request->getPost('10_premium[]'); + $sum_insure = $this->request->getPost('10_si[]'); + $age_from = $this->request->getPost('10_age_from[]'); + $age_to = $this->request->getPost('10_age_to[]'); + for ($i = 0; $i < count($premium); $i++) { + $data['premium'] = str_replace(',', '', $premium[$i]); $data['si'] = str_replace(',', '', $sum_insure[$i]); $data['age_from'] = $age_from[$i]; $data['age_to'] = $age_to[$i]; - $policyPremium= $this->policyPremium2Model->insert($data); + $policyPremium = $this->policyPremium2Model->insert($data); } - $data = $this->request->getPost(); - $insert = true; - }else if($policy_grid_id == '11'){ - $premium=$this->request->getPost('11_premium[]'); - $sum_insure =$this->request->getPost('11_si[]'); - $grade =$this->request->getPost('11_grade[]'); - $max_sum_insure =$this->request->getPost('11_max_si[]'); - for ($i=0; $i < count($premium) ; $i++) { - $data['premium'] = str_replace(',', '',$premium[$i]); + $data = $this->request->getPost(); + $insert = true; + } else if ($policy_grid_id == '11') { + $premium = $this->request->getPost('11_premium[]'); + $sum_insure = $this->request->getPost('11_si[]'); + $grade = $this->request->getPost('11_grade[]'); + $max_sum_insure = $this->request->getPost('11_max_si[]'); + for ($i = 0; $i < count($premium); $i++) { + $data['premium'] = str_replace(',', '', $premium[$i]); $data['si'] = str_replace(',', '', $sum_insure[$i]); $data['grade'] = $grade[$i]; $data['max_si'] = $max_sum_insure[$i]; - $dataa= $this->policyPremium2Model->insert($data); + $dataa = $this->policyPremium2Model->insert($data); } - $data = $this->request->getPost(); - $insert = true; - }else if($policy_grid_id == '12'){ + $data = $this->request->getPost(); + $insert = true; + } else if ($policy_grid_id == '12') { - $premium=$this->request->getPost('12_premium[]'); - $sum_insure =$this->request->getPost('12_si[]'); - $relationship =$this->request->getPost('12_relationship[]'); - for ($i=0; $i < count($premium) ; $i++) { - $data['premium'] = str_replace(',', '',$premium[$i]); + $premium = $this->request->getPost('12_premium[]'); + $sum_insure = $this->request->getPost('12_si[]'); + $relationship = $this->request->getPost('12_relationship[]'); + for ($i = 0; $i < count($premium); $i++) { + $data['premium'] = str_replace(',', '', $premium[$i]); $data['si'] = str_replace(',', '', $sum_insure[$i]); $data['relationship'] = $relationship[$i]; - $dataa= $this->policyPremium2Model->insert($data); + $dataa = $this->policyPremium2Model->insert($data); } - $data = $this->request->getPost(); - $insert = true; - }else if($policy_grid_id == '13'){ + $data = $this->request->getPost(); + $insert = true; + } else if ($policy_grid_id == '13') { - $premium=$this->request->getPost('13_premium[]'); - $sum_insure =$this->request->getPost('13_si[]'); - $age_from =$this->request->getPost('13_age_from[]'); - $age_to =$this->request->getPost('13_age_to[]'); - $relationship =$this->request->getPost('13_relationship[]'); + $premium = $this->request->getPost('13_premium[]'); + $sum_insure = $this->request->getPost('13_si[]'); + $age_from = $this->request->getPost('13_age_from[]'); + $age_to = $this->request->getPost('13_age_to[]'); + $relationship = $this->request->getPost('13_relationship[]'); - for ($i=0; $i < count($premium) ; $i++) { - $data['premium'] = str_replace(',', '',$premium[$i]); + for ($i = 0; $i < count($premium); $i++) { + $data['premium'] = str_replace(',', '', $premium[$i]); $data['si'] = str_replace(',', '', $sum_insure[$i]); $data['age_from'] = $age_from[$i]; $data['age_to'] = $age_to[$i]; $data['relationship'] = $relationship[$i]; - $dataa= $this->policyPremium2Model->insert($data); + $dataa = $this->policyPremium2Model->insert($data); } - $data = $this->request->getPost(); - $insert = true; + $data = $this->request->getPost(); + $insert = true; } - if($insert){ - return $this->respond(['status' => true,'code' => 200,'data' => $data], 200); - }else{ - return $this->respond(['status' => false,'code' => 404, 'data' => $data,'message' => 'no data found'], 200); - } + if ($insert) { + return $this->respond(['status' => true, 'code' => 200, 'data' => $data], 200); + } else { + return $this->respond(['status' => false, 'code' => 404, 'data' => $data, 'message' => 'no data found'], 200); + } } catch (\Exception $e) { // Handle exceptions here echo 'Error: ' . $e->getMessage(); @@ -1031,9 +1036,9 @@ class ClientController extends AdminController $client_policy_id = $this->request->getGet('client_policy_id'); $record = $this->clientPolicyModel->where('id', $client_policy_id)->first(); - $family_floater =''; + $family_floater = ''; if (isset(json_decode($record['policy_terms'])->family_floater)) { - $family_floater=json_decode($record['policy_terms'])->family_floater; + $family_floater = json_decode($record['policy_terms'])->family_floater; } $policy_terms_data = json_decode($record['policy_terms']); @@ -1042,19 +1047,19 @@ class ClientController extends AdminController $self = $policy_terms_data->family_floaters; } - $emp_count = $this->employeeModel ->join('client_policy cp',"employees.client_id = cp.client_id") - ->join('employee_polices ep',"cp.id = ep.client_policy_id AND employees.id = ep.employee_id") - ->where("employees.client_id",$record['client_id']) - ->where("employees.emp_status",'active') - ->countAllResults(); + $emp_count = $this->employeeModel->join('client_policy cp', "employees.client_id = cp.client_id") + ->join('employee_polices ep', "cp.id = ep.client_policy_id AND employees.id = ep.employee_id") + ->where("employees.client_id", $record['client_id']) + ->where("employees.emp_status", 'active') + ->countAllResults(); - $data = $this->employeePolicyModel->select('employee_polices.id') - ->where('employee_polices.is_active', 1) - ->where('employee_polices.client_policy_id', $client_policy_id) + $data = $this->employeePolicyModel->select('employee_polices.id') + ->where('employee_polices.is_active', 1) + ->where('employee_polices.client_policy_id', $client_policy_id) ->findAll(); - $emp_count = count($data); + $emp_count = count($data); // if($emp_count == 0){ // $emp_count = true; @@ -1065,31 +1070,31 @@ class ClientController extends AdminController $data = $this->policesModel->getPolicyPremium($record['policy_id']); $policy_name = $data[0]->policy_name; - $gmc_pattern = '/gmc/i'; - $gpa_pattern = '/gpa/i'; + $gmc_pattern = '/gmc/i'; + $gpa_pattern = '/gpa/i'; $subject = $data[0]->policy_type; if (preg_match($gmc_pattern, $subject)) { $search_term = 'GMC'; - } else if (preg_match($gpa_pattern, $subject)){ + } else if (preg_match($gpa_pattern, $subject)) { $search_term = 'GPA'; - }else{ + } else { $search_term = ""; } $results = $this->policyGridModel->like('policy_type', $search_term)->findAll(); - if($search_term === 'GPA'){ + if ($search_term === 'GPA') { $premiumData = $this->policyPremium1Model->where(['client_id' => $record['client_id'], 'client_policy_id' => $client_policy_id, 'is_active' => 1])->findAll(); + } else if ($search_term === 'GMC') { - }else if($search_term === 'GMC'){ - $premiumData = $this->policyPremium2Model->where(['client_id' => $record['client_id'], 'client_policy_id' => $client_policy_id, 'is_active' => 1])->findAll(); - - }else{ + } else { $premiumData = ""; } + // echo '
';
+ // print_r($premiumData); die;
// echo $record['client_id'];
// echo "-----";
@@ -1097,8 +1102,8 @@ class ClientController extends AdminController
// print_r($premiumData);die;
// echo '';
// echo $family_floater;
-
- if($search_term === 'GMC'){
+
+ if ($search_term === 'GMC') {
$resultss = [];
@@ -1117,48 +1122,44 @@ class ClientController extends AdminController
} catch (\Exception $e) {
$resultss = $results; // Reset $resultss to an empty array if an exception occurs
}
-
-
- $premiumDataa ='';
+
+
+ $premiumDataa = '';
if ($family_floater == 0) {
// print_r($premiumData);die;
if (count($premiumData) == 0) {
$premiumDataa = $premiumData;
- }else if ($premiumData[0]['policy_grid_id'] == '3' || $premiumData[0]['policy_grid_id'] == '4' || $premiumData[0]['policy_grid_id'] == '5' || $premiumData[0]['policy_grid_id'] == '6' || $premiumData[0]['policy_grid_id'] == '7' || $premiumData[0]['policy_grid_id'] == '8' || $premiumData[0]['policy_grid_id'] == '9' ) {
+ } else if ($premiumData[0]['policy_grid_id'] == '3' || $premiumData[0]['policy_grid_id'] == '4' || $premiumData[0]['policy_grid_id'] == '5' || $premiumData[0]['policy_grid_id'] == '6' || $premiumData[0]['policy_grid_id'] == '7' || $premiumData[0]['policy_grid_id'] == '8' || $premiumData[0]['policy_grid_id'] == '9') {
$premiumDataa = $premiumData;
}
- }
- else if($family_floater == 1){
- if(count($premiumData) == 0){
+ } else if ($family_floater == 1) {
+ if (count($premiumData) == 0) {
$premiumDataa = $premiumData;
- }else if ($premiumData[0]['policy_grid_id'] == '10' || $premiumData[0]['policy_grid_id'] == '11' ) {
+ } else if ($premiumData[0]['policy_grid_id'] == '10' || $premiumData[0]['policy_grid_id'] == '11') {
$premiumDataa = $premiumData;
}
- }else{
+ } else {
$premiumDataa = $premiumData;
}
- if($premiumDataa == ""){
+ if ($premiumDataa == "") {
$premiumDataa = $premiumData;
}
-
+
// print_r($premiumData);die;
// print_r($data[0]->policy_type); die;
- // echo "hello";
- // return json_encode($premiumData);
-
- return $this->respond(['status' => true,'code' => 200,'data' => $resultss, 'premiumData' => json_encode($premiumDataa), 'count' => $emp_count, 'policy_name' => $policy_name, 'family_floater' => $family_floater, 'self' => $self], 200);
+ // echo "hello";
+ // return json_encode($premiumData);
- }else if($search_term === 'GPA'){
+ return $this->respond(['status' => true, 'code' => 200, 'data' => $resultss, 'premiumData' => json_encode($premiumDataa), 'count' => $emp_count, 'policy_name' => $policy_name, 'family_floater' => $family_floater, 'self' => $self], 200);
+ } else if ($search_term === 'GPA') {
- return $this->respond(['status' => true,'code' => 200,'data' => $results, 'premiumData' => json_encode($premiumData), 'count' => $emp_count, 'policy_name' => $policy_name, 'family_floater' => $family_floater, 'self' => $self], 200);
-
- }else{
-
- return $this->respond(['status' => false,'code' => 200,'data' => $results, 'premiumData' => json_encode($premiumData), 'count' => $emp_count, 'policy_name' => $policy_name, 'family_floater' => $family_floater, 'self' => $self], 200);
+ return $this->respond(['status' => true, 'code' => 200, 'data' => $results, 'premiumData' => json_encode($premiumData), 'count' => $emp_count, 'policy_name' => $policy_name, 'family_floater' => $family_floater, 'self' => $self], 200);
+ } else {
+ return $this->respond(['status' => false, 'code' => 200, 'data' => $results, 'premiumData' => json_encode($premiumData), 'count' => $emp_count, 'policy_name' => $policy_name, 'family_floater' => $family_floater, 'self' => $self], 200);
}
}
@@ -1457,7 +1458,14 @@ class ClientController extends AdminController
$client_policy_id = $this->request->getGet('client_policy_id');
$record = $this->clientPolicyModel->where('id', $client_policy_id)->first();
-
+ $message = 'Policy updated Successfully' ;
+ if($record['open_for_enrollment'] == 0){
+ $open_for_enrollment_update_value = 1;
+ $message = 'Update Open Enrollment Successfully';
+ }else if($record['open_for_enrollment'] == 1){
+ $open_for_enrollment_update_value = 0;
+ $message = 'Update Open Enrollment Successfully';
+ }
$data = $this->policesModel->getPolicyPremium($record['policy_id']);
$pattern = '/gmc/i';
@@ -1508,7 +1516,7 @@ class ClientController extends AdminController
$policy_status = $this->clientPolicyModel->where('id', $client_policy_id )->set('policy_status', 1)->update();
$json_data ='';
- $open_for_enrollment = $this->clientPolicyModel->where('id', $client_policy_id )->set('open_for_enrollment', 1)->update();
+ $open_for_enrollment = $this->clientPolicyModel->where('id', $client_policy_id )->set('open_for_enrollment', $open_for_enrollment_update_value)->update();
if ($open_for_enrollment) {
$open_for_enrollment_1 = $this->clientPolicyModel->where('id', $client_policy_id )->find();
$open_for_enrollment_value = $open_for_enrollment_1[0]['open_for_enrollment'];
@@ -1517,9 +1525,7 @@ class ClientController extends AdminController
$json_data = json_encode(['open_for_enrollment' => $open_for_enrollment_value, 'client_policy_id' => $client_policy_id_value]);
}
- return $this->respond(['status' => true,'code' => 200, 'message' => 'Policy Status Updated Successfully', 'data' => $termsData, 'racRate' => $racRate, 'open_for_enrollment' => $json_data], 200);
-
-
+ return $this->respond(['status' => true,'code' => 200, 'message' => $message, 'data' => $termsData, 'racRate' => $racRate, 'open_for_enrollment' => $json_data], 200);
}
diff --git a/app/Controllers/EmployeeController.php b/app/Controllers/EmployeeController.php
index f5d79461..5b73effc 100644
--- a/app/Controllers/EmployeeController.php
+++ b/app/Controllers/EmployeeController.php
@@ -886,6 +886,68 @@ class EmployeeController extends AdminController
$this->loadLayout('id_card_view');
}
+
+ public function truncateFileData() //truncateFileDataIn DB (de activate rows)
+ {
+ $file_id = $this->request->uri->getSegment(3);
+ // $file_id = 112;
+ $file = $this->fileModel->find($file_id);
+ // $file['action'] = 'si_enhancement';
+ // $result = [];
+ // !dd($file);
+ if($file['action'] == 'inception' || $file['action'] == 'dependent_addition' || $file['action'] == 'addition')
+ {
+ $result = $this->employeeModel->getEmpListByFileId(file_id: $file_id,emp_status: ['active'],policy_status:['active']);
+ // ~dd($result);
+ if(count($result))
+ {
+ return $this->respond(['dataStatus' => false,'code' => 404,'message' => 'File data already processed'], 200);
+ }
+ else
+ {
+
+ //update emp and emp plocies
+ $db = db_connect();
+ $query = "UPDATE employees JOIN employee_polices ON employees.id = employee_polices.employee_id and employees.file_id = $file_id SET employees.emp_status = 'truncated', employee_polices.status = 'truncated', employees.is_active = 0,employee_polices.is_active = 0 WHERE employees.file_id = $file_id";
+ $db->query($query);
+ $affectedRows = $db->affectedRows();
+ // $affectedRows = 10;
+
+ //update file status
+ $this->fileModel->where('id', $file_id)->set(['status' => 'truncated'])->update();
+
+ return $this->respond(['dataStatus' => true,'code' => 200,'data' => round($affectedRows/2)], 200);
+ }
+ }
+ else if($file['action'] == 'si_enhancement' || $file['action'] == 'correction' || $file['action'] == 'deletion')
+ {
+ $res = $this->empEndorsementModel->select(['count(id) as count'])
+ ->where('emp_endorsement.file_id',$file_id)
+ ->groupStart()
+ ->where('emp_endorsement.endorsement_id is not null')
+ ->orwhereIn('emp_endorsement.status',['complete'])
+ ->groupEnd()
+ ->get()
+ ->getResult();
+ // print_r($this->empEndorsementModel->getLastQuery());
+ // echo $res[0]->count;die();
+ if($res[0]->count == 0)
+ {
+ //update truncated status to db
+ $this->empEndorsementModel->where('file_id',$file_id)
+ ->set(['status' => 'truncated'])
+ ->update();
+ //update file status
+ $this->fileModel->where('id', $file_id)->set(['status' => 'truncated'])->update();
+ return $this->respond(['dataStatus' => true,'code' => 200,'data' => 'success'], 200);
+ }
+ else
+ {
+ return $this->respond(['dataStatus' => false,'code' => 404,'message' => 'File data already processed'], 200);
+ }
+ }
+
+ }
diff --git a/app/Controllers/EmployeeServiceController.php b/app/Controllers/EmployeeServiceController.php
index 46fb73ee..9b4dd5be 100644
--- a/app/Controllers/EmployeeServiceController.php
+++ b/app/Controllers/EmployeeServiceController.php
@@ -834,7 +834,7 @@ class EmployeeServiceController extends AdminController
foreach($familiy_data as $fkey => $value)
{
- if($file['id'] == null || ($value['temp']['source'] == 'excel' || (in_array($value['temp']['grid_type'],[10,11]) && strtolower($value['relationship']) == 'self'))) //insert data come from excel and from db
+ if($file['id'] == null || $value['temp']['source'] == 'excel') //insert data come from excel and from db i.e. ( $file['id'] == null for enrollment data)
{
$employee = $this->employeeModel->checkExistingEmp($value);
@@ -842,50 +842,6 @@ class EmployeeServiceController extends AdminController
$temp = $value['temp'];
unset($value['policy_details']);
unset($value['temp']);
-
- if($file['id'] == null && (strtolower($value['relationship']) == 'self' && $temp['source'] == 'db' && $temp['emp_id'] != null && $temp['emp_policy_id'] != null))
- {
- //check existing si and new si
- $employee_policy = $this->employeePolicyModel->where('employee_id',$employee['id'])->where('client_policy_id',$file['policy_id'])->first();
- if($employee_policy['basic_cover_si'] != $policy_data['basic_cover_si'])
- {
-
- //check any existing si enhancement pending
- $existing_endorsements = $this->empEndorsementModel->where('actions','si')
- ->where('table_name','employee_polices')
- ->where('endorsement_id is null')
- ->where('emp_code',$employee['emp_code'])
- ->where('name',$employee['name'])
- ->where('field_name','basic_cover_si')
- ->findAll();
-
- if(!count($existing_endorsements))
- {
-
- $slab_details = $this->policiesModel->getPolicySlabRatesForEmpOnboard($file['policy_id'],$file['client_id']);
- foreach ($slab_details['slab_rates'] as $skey => $slab_value)
- {
- if($slab_value['si'] == $policy_data['si'])
- {
- $group_key = rand(100000, 999999);
- //add new premimum details in endorsement table
- $this->empEndorsementModel->save(['pk' => (int)$employee['id'],'emp_code' => $employee['emp_code'],'table_name' => 'employee_polices','actions' => 'si','name' => $employee['name'],'field_name' => 'basic_cover_si','old_value' => $employee_policy['basic_cover_si'],'new_value' => $policy_data['premium'],'created_by' => $file['created_by'],'remarks' => 'da auto si enhancement','group_key' => $group_key]);
- $this->empEndorsementModel->save(['pk' => (int)$employee['id'],'emp_code' => $employee['emp_code'],'table_name' => 'employee_polices','actions' => 'si','name' => $employee['name'],'field_name' => 'premium','old_value' => $employee_policy['premium'],'new_value' => $slab_value['premium'],'created_by' => $file['created_by'],'remarks' => 'da auto si enhancement','group_key' => $group_key]);
- $this->empEndorsementModel->save(['pk' => (int)$employee['id'],'emp_code' => $employee['emp_code'],'table_name' => 'employee_polices','actions' => 'si','name' => $employee['name'],'field_name' => 'si_enhancement_date','old_value' => null,'new_value' => ($policy_data['date_coverage']),'created_by' => $file['created_by'],'remarks' => 'da auto si enhancement','group_key' => $group_key]);
- break;
- }
- }
- }
-
-
-
-
- }
-
- break;
- }// end of self employee si enhance ment
-
-
//save employee table
if(count($employee))
{
diff --git a/app/Helpers/excel_util_helper.php b/app/Helpers/excel_util_helper.php
index 46e52c9a..a0c7f2c6 100644
--- a/app/Helpers/excel_util_helper.php
+++ b/app/Helpers/excel_util_helper.php
@@ -656,17 +656,33 @@ if (!function_exists('premium_calculation_manager'))
// dd($emp_data);
//check if the data comes from enrollment (DB) and status is draft then fetch original data of employee from
- //audit history table then initiate calculation with it. so this data again get updated in emp and policy table
+ //audit history table then initiate calculation with it. so this data again get updated in emp table
- // if($emp_data['temp']['emp_status'] == 'draft' && $emp_data['temp']['policy_status'] == 'draft')
- // {
- // $original_emp_records = get_emp_records_from_audit_history($emp_data['temp']['emp_id']);
- // if(is_array($original_emp_records))
- // {
- // print_r($original_emp_records);
- // }
- // }
- //end of fetching data from audit history table
+ //check emp records
+ if($emp_data['file_id'] == null && $emp_data['temp']['emp_status'] == 'draft' && $emp_data['temp']['policy_status'] == 'draft')
+ {
+ $original_emp_records = get_emp_records_from_audit_history($emp_data['temp']['emp_id']);
+ if(is_array($original_emp_records))
+ {
+ // Kint::dump($original_emp_records);
+ $emp_data = replace_original_data(original_data:$original_emp_records,current_data:$emp_data);
+ // Kint::dump($value);
+ }
+ }
+
+ //check emp policy records
+ if($emp_data['file_id'] == null && $emp_data['temp']['emp_status'] == 'draft' && $emp_data['temp']['policy_status'] == 'draft')
+ {
+ $original_emp_policy_records = get_emp_policy_records_from_audit_history($emp_data['temp']['emp_policy_id']);
+ if(is_array($original_emp_policy_records))
+ {
+ // Kint::dump($original_emp_records);
+ $emp_data['policy_details'] = replace_original_data(original_data:$original_emp_policy_records,current_data:$emp_data['policy_details']);
+ // Kint::dump($policy_data);
+ }
+ }
+ //end of fetching data from audit history table
+
//gird and calculation start
$slug = \Config\Services::slug();
$grid_type = $slab_details['grid_master']['ui_type'];
@@ -844,7 +860,7 @@ if (!function_exists('premium_calculation_manager'))
foreach ($slab_details['slab_rates'] as $skey => $slab_value)
{
- if($slab_value['grade'] == $employee_received_band && $slab_value['si'] == $employee_received_si && (($slab_value['premium_type'] == 1 && strtolower($emp_data['relationship']) == 'self') || ($slab_value['premium_type'] == 2 || $slab_value['premium_type'] == null) ))
+ if($slab_value['si'] == $employee_received_si && (($slab_value['premium_type'] == 1 && strtolower($emp_data['relationship']) == 'self') || ($slab_value['premium_type'] == 2 || $slab_value['premium_type'] == null) ))
{
$emp_data['policy_details']['basic_cover_si'] = $slab_value['si'];
$emp_data['policy_details']['date_coverage'] = (isset($emp_data['policy_details']['date_coverage']) ? $emp_data['policy_details']['date_coverage'] : $policy_terms['policy_start_date']);
@@ -1055,7 +1071,7 @@ if(!function_exists('get_emp_records_from_audit_history'))
function get_emp_records_from_audit_history($employee_id)
{
$db = db_connect();
- $query = "SELECT min(id) as id,pk,table_name,field_name,old_value FROM venbaehn_nhance.auditing_history where pk = $employee_id and table_name = 'employees'group by field_name order by id asc";
+ $query = "SELECT min(id) as id,pk,table_name,field_name,old_value FROM venbaehn_nhance.auditing_history where pk = $employee_id and table_name = 'employees' and field_name in ('name','dob','gender','mobile','email_corporate','relationship') group by field_name order by id asc";
$res = $db->query($query);
// echo $db->getLastQuery();
$res = $res->getResultArray();
@@ -1070,4 +1086,42 @@ if(!function_exists('get_emp_records_from_audit_history'))
return false;
}
+}
+
+if(!function_exists('get_emp_policy_records_from_audit_history'))
+{
+ function get_emp_policy_records_from_audit_history($emp_policy_id)
+ {
+ $db = db_connect();
+ $query = "SELECT min(id) as id,pk,table_name,field_name,old_value FROM venbaehn_nhance.auditing_history where pk = $emp_policy_id and table_name = 'employee_polices' and field_name in ('basic_cover_si','premium','gst') group by field_name order by id asc";
+ $res = $db->query($query);
+ // echo $db->getLastQuery();
+ $res = $res->getResultArray();
+ if(count($res))
+ { $temp = [];
+ foreach($res as $row)
+ {
+ $temp[ $row['field_name'] ] = $row['old_value'];
+ }
+ return $temp;
+ }
+ return false;
+
+ }
+}
+
+
+if(!function_exists('replace_original_data'))
+{
+ function replace_original_data(array $original_data,array $current_data)
+ {
+ foreach($original_data as $key => $data)
+ {
+ if(array_key_exists($key, $current_data))
+ {
+ $current_data [$key] = $data;
+ }
+ }
+ return $current_data;
+ }
}
\ No newline at end of file
diff --git a/app/Models/EmployeeModel.php b/app/Models/EmployeeModel.php
index 165ccc01..fdd19e40 100644
--- a/app/Models/EmployeeModel.php
+++ b/app/Models/EmployeeModel.php
@@ -78,6 +78,8 @@ class EmployeeModel extends Model
public function checkExistingEmp($arr)
{
+ if($arr['temp']['emp_id'] == null)
+ {
return $this->where('emp_code',$arr['emp_code'])
->where('name',$arr['name'])
->where('client_id',$arr['client_id'])
@@ -85,6 +87,11 @@ class EmployeeModel extends Model
->where('gender',$arr['gender'])
->where('dob',$arr['dob'])
->find();
+ }
+ else
+ {
+ return $this->where('id',$arr['temp']['emp_id'])->find();
+ }
}
diff --git a/app/Models/PolicyPremium1Model.php b/app/Models/PolicyPremium1Model.php
index 79e27179..814c0e51 100644
--- a/app/Models/PolicyPremium1Model.php
+++ b/app/Models/PolicyPremium1Model.php
@@ -27,4 +27,39 @@ class PolicyPremium1Model extends Model
'premium_type',
];
+
+ // Callbacks
+ protected $allowCallbacks = true;
+ protected $beforeInsert = ["checkAndADDCreatedByValue"];
+ protected $afterInsert = [];
+ protected $beforeUpdate = ["checkAndUpdateUpdatedByValue"];
+ protected $afterUpdate = [];
+ protected $beforeFind = [];
+ protected $afterFind = [];
+ protected $beforeDelete = [];
+ protected $afterDelete = [];
+
+ protected function checkAndADDCreatedByValue(array $data)
+ {
+ // Check if 'updated_by' value is null or empty
+ if (empty($data['data']['created_by'])) {
+ // Set 'updated_by' value to the current session user ID
+ $data['data']['created_by'] = get_session_userid();
+ }
+
+ return $data;
+ }
+
+ protected function checkAndUpdateUpdatedByValue(array $data)
+ {
+ // Check if 'updated_by' value is null or empty
+ if (empty($data['data']['updated_by'])) {
+ // Set 'updated_by' value to the current session user ID
+ $data['data']['updated_by'] = get_session_userid();
+ }
+
+ return $data;
+ }
+
+
}
diff --git a/app/Models/PolicyPremium2Model.php b/app/Models/PolicyPremium2Model.php
index 85ee9972..a03ca381 100644
--- a/app/Models/PolicyPremium2Model.php
+++ b/app/Models/PolicyPremium2Model.php
@@ -28,4 +28,37 @@ class PolicyPremium2Model extends Model
];
+ // Callbacks
+ protected $allowCallbacks = true;
+ protected $beforeInsert = ["checkAndADDCreatedByValue"];
+ protected $afterInsert = [];
+ protected $beforeUpdate = ["checkAndUpdateUpdatedByValue"];
+ protected $afterUpdate = [];
+ protected $beforeFind = [];
+ protected $afterFind = [];
+ protected $beforeDelete = [];
+ protected $afterDelete = [];
+
+ protected function checkAndADDCreatedByValue(array $data)
+ {
+ // Check if 'updated_by' value is null or empty
+ if (empty($data['data']['created_by'])) {
+ // Set 'updated_by' value to the current session user ID
+ $data['data']['created_by'] = get_session_userid();
+ }
+
+ return $data;
+ }
+
+ protected function checkAndUpdateUpdatedByValue(array $data)
+ {
+ // Check if 'updated_by' value is null or empty
+ if (empty($data['data']['updated_by'])) {
+ // Set 'updated_by' value to the current session user ID
+ $data['data']['updated_by'] = get_session_userid();
+ }
+
+ return $data;
+ }
+
}
diff --git a/app/Views/client_policy.php b/app/Views/client_policy.php
index 908612fe..353f30c6 100644
--- a/app/Views/client_policy.php
+++ b/app/Views/client_policy.php
@@ -2,8 +2,7 @@
-
+
@@ -29,9 +28,7 @@
-
+
@@ -41,17 +38,16 @@
-
+
@@ -70,9 +66,9 @@
@@ -86,9 +82,9 @@
@@ -96,20 +92,16 @@
@@ -118,10 +110,8 @@
-
-
+
+
@@ -135,117 +125,117 @@
\ No newline at end of file
diff --git a/app/Views/employee_upload.php b/app/Views/employee_upload.php
index e6fccef7..d729ab25 100644
--- a/app/Views/employee_upload.php
+++ b/app/Views/employee_upload.php
@@ -665,6 +665,9 @@ $(document).ready(function() {
var selectedpolicy = $(this).val();
console.log('selectedpolicy',selectedpolicy)
+ $('#upload-action-type').val('').change();
+ $('#file_upload').hide();
+ $('#excel_download').removeAttr('href');
var apiURL = '' + 'util/fetch-emp-count/' + selectedpolicy;
console.log(apiURL);
@@ -729,5 +732,5 @@ $(document).ready(function() {
})
-//--------------------------------------------------------------------------------------
+//---------------------------------------------------------------------------------------------------------
\ No newline at end of file
diff --git a/app/Views/policy_grid.php b/app/Views/policy_grid.php
index 289392f5..17397e62 100644
--- a/app/Views/policy_grid.php
+++ b/app/Views/policy_grid.php
@@ -382,25 +382,17 @@ function addGridHTML(event = false, data = false, ui_type = false, si_or_bp = fa
}
grid_html = `
-
-
-
+
+
+
-
-
-
-
-
-
-
-
+
+
+
+
-
-
-
-
-
-
+
+
`;
@@ -563,8 +555,6 @@ function addGridHTML(event = false, data = false, ui_type = false, si_or_bp = fa
}
-
-
grid_container.insertAdjacentHTML('beforeend', grid_html);
if (dataIdValue == '1') {
@@ -708,8 +698,10 @@ $('body').on('click', '.btnPolicyModel', function() {
}, 1000);
console.log('policy grid responce', res);
var temp_for_premiumData = JSON.parse(res.premiumData);
-
+ console.log('policy grid responce', temp_for_premiumData);
res.premiumData = JSON.parse(res.premiumData);
+ console.log('policy grid responce', res.premiumData);
+
$('#nameOfThePolicy').html(' - ' + res.policy_name);
$('#grid_emp_count').val(res.count);
diff --git a/public/sample_excel/sample_inception.xls b/public/sample_excel/sample_inception.xls
index 934df3cd..2c3ab4e3 100644
Binary files a/public/sample_excel/sample_inception.xls and b/public/sample_excel/sample_inception.xls differ