diff --git a/app/Config/Routes.php b/app/Config/Routes.php index 780a1edd..a32b6788 100644 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -19,7 +19,7 @@ $routes->get('/logout', 'LoginController::logout'); $routes->get('/oauth2callback', 'LoginController::receiveGoogleOAuthResponse'); $routes->get('/auth/google', 'LoginController::initiateGoogleOAuth'); $routes->get('/update-emp-policy-status', 'ClientController::updateEmpAndPolicyStatus'); -$routes->get('download-e-card/(:segment)', 'EmployeeController::generateIDCardForEmployee/$1'); +$routes->get('download-e-card/(:any)', 'EmployeeController::generateIDCardForEmployee/$1'); $routes->get('download-kyc-docs/(:segment)', 'ClientController::downloadKYCDocument/$1'); diff --git a/app/Controllers/ClientController.php b/app/Controllers/ClientController.php index e3f7b038..7a9e9263 100644 --- a/app/Controllers/ClientController.php +++ b/app/Controllers/ClientController.php @@ -783,6 +783,9 @@ class ClientController extends AdminController public function createClientPolicyPremium() { + + // echo json_encode(['key' => $this->request->getPost()]); die; + try { $policy_type = $this->request->getPost('policy_type'); $client_id = $this->request->getPost('client_id'); @@ -793,6 +796,25 @@ class ClientController extends AdminController $client_id = $client_policy_data['client_id']; } $policy_grid_id = $this->request->getPost('policy_grid_id'); + $rack_rate_type = $this->request->getPost('rack_rate_type'); + + $self = $this->request->getPost('self') ? 1 : 0; + $spouse = $this->request->getPost('spouse')? 1 : 0; + $childrens = $this->request->getPost('childrens')? 1 : 0; + $parents = $this->request->getPost('parents')? 1 : 0; + $parents_in_law = $this->request->getPost('parents-in-law')? 1 : 0; + $either_parents_pil = $this->request->getPost('either-parents-pil')? 1 : 0; + + $relation_data['self'] = $self; + $relation_data['spouse'] = $spouse; + $relation_data['childrens'] = $childrens; + $relation_data['parents'] = $parents; + $relation_data['parents_in_law'] = $parents_in_law; + $relation_data['either_parents_pil'] = $either_parents_pil; + + + $jsonDataForRelation = json_encode($relation_data); + // if($policy_grid_id == 10 || $policy_grid_id == 11){ // $premium_type = 1; @@ -811,6 +833,11 @@ class ClientController extends AdminController $data['client_policy_id'] = $client_policy_id; $data['policy_grid_id'] = $policy_grid_id; $data['premium_type'] = $premium_type; + $data['rack_rate_type'] = $rack_rate_type; + + if($rack_rate_type == 1){ + $data['additional_relationship'] = $jsonDataForRelation; + } $premium = []; @@ -818,7 +845,7 @@ class ClientController extends AdminController if ($policy_grid_id == '1' || $policy_grid_id == '2') { $this->policyPremium1Model->where('client_id', $client_id)->where('client_policy_id', $client_policy_id)->set('is_active', 0)->update(); } else { - $this->policyPremium2Model->where('client_id', $client_id)->where('client_policy_id', $client_policy_id)->set('is_active', 0)->update(); + $this->policyPremium2Model->where('client_id', $client_id)->where('client_policy_id', $client_policy_id)->where('rack_rate_type', $rack_rate_type)->set('is_active', 0)->update(); } @@ -925,6 +952,9 @@ class ClientController extends AdminController $premium = $this->request->getPost('6_premium[]'); + + print_r($premium); + $sum_insure = $this->request->getPost('6_si'); $age_from = $this->request->getPost('6_age_from[]'); $age_to = $this->request->getPost('6_age_to[]'); @@ -1135,21 +1165,24 @@ 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') - ->where("ep.status", 'active') - ->where("employees.is_active", 1) - ->where("ep.is_active", 1) + // $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') + // ->where("ep.status", 'active') + // ->where("employees.is_active", 1) + // ->where("ep.is_active", 1) + // ->countAllResults(); + + + $emp_count = $this->employeePolicyModel + ->join('client_policy cp', "cp.id = employee_polices.client_policy_id") + ->where("employee_polices.client_policy_id", $client_policy_id) + ->where("employee_polices.status", 'active') + ->where("employee_polices.is_active", 1) ->countAllResults(); - - // $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); // if($emp_count == 0){ @@ -1184,6 +1217,11 @@ class ClientController extends AdminController $premiumData = ""; } + + + + + // echo '
';
         // print_r($premiumData); die;
 
@@ -1240,19 +1278,28 @@ class ClientController extends AdminController
                 $premiumDataa = $premiumData;
             }
 
-            // print_r($premiumData);die;
+            // $premium1 = [];
+            // $premium2 = [];
 
-            // print_r($data[0]->policy_type); die;
-            // echo "hello";
-            // return json_encode($premiumData);
+            // foreach ($premiumDataa as $key => $item) {
+            //     if ($item['rack_rate_type'] == 0) {
+            //         $premium1[] = $item;
+            //     } elseif ($item['rack_rate_type'] == 1) {
+            //         $premium2[] = $item;
+            //     }
+            // }
+
+            // print_r($premium1);
+            // print_r($premium2); die;
+
+            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, 'client_policy_id' => $client_policy_id], 200);
 
-            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);
+            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, 'client_policy_id' => $client_policy_id], 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' => false, 'code' => 200, 'data' => $results, 'premiumData' => json_encode($premiumData), 'count' => $emp_count, 'policy_name' => $policy_name, 'family_floater' => $family_floater, 'self' => $self, 'client_policy_id' => $client_policy_id], 200);
         }
     }
 
@@ -1962,91 +2009,89 @@ class ClientController extends AdminController
 
 
 
-public function transformArray($data, $mapping) {
+    public function transformArray($data, $mapping)
+    {
 
-    // dd($data);
-    $transformedData = [];
+        // dd($data);
+        $transformedData = [];
+
+        if (!is_array($data)) {
+            return json_encode($transformedData, JSON_PRETTY_PRINT);
+        }
+
+        foreach ($data as $key => $value) {
+            if ($key == 'family_floaters') {
+                $transformedData[$key] = $this->transformFamilyFloaters($value, $data);
+            } else if (array_key_exists($key, $mapping)) {
+                $transformedData[$mapping[$key]] = $value;
+            } else if ($key == 'special_condition_label') {
+
+                foreach ($value as $key => $value) {
+                    $transformedData[$value] = $data['special_condition_input'][$key];
+                }
+            } else if ($key == 'gpa_special_condition_label') {
+
+                foreach ($value as $key => $value) {
+                    $transformedData[$value] = $data['gpa_special_condition_input'][$key];
+                }
+            } else if ($key == 'age_ratio') {
+
+                if (isset($data['sumInsured2'])) {
+
+                    $transformedData['Self'] = "(Min: " . $data['age_ratio']['self']['min'] . ", Max: " . $data['age_ratio']['self']['max'] . ")";
+                }
+            } else {
+                $transformedData[$key] = $value;
+            }
+        }
 
-    if (!is_array($data)) {
         return json_encode($transformedData, JSON_PRETTY_PRINT);
     }
 
-    foreach ($data as $key => $value) {
-        if ($key == 'family_floaters') {
-            $transformedData[$key] = $this->transformFamilyFloaters($value, $data);
-        }else if (array_key_exists($key, $mapping)) {
-            $transformedData[$mapping[$key]] = $value;
-        }else if($key == 'special_condition_label'){
 
-            foreach ($value as $key => $value) {
-                $transformedData[$value] = $data['special_condition_input'][$key];
-            }
+    public function transformFamilyFloaters($familyFloaters, $json)
+    {
+        $result = [];
 
-        }else if($key == 'gpa_special_condition_label'){
+        $min = $json['age_ratio']['self'];
+        $max = $json['age_ratio']['self'];
 
-            foreach ($value as $key => $value) {
-                $transformedData[$value] = $data['gpa_special_condition_input'][$key];
-            }
+        $spouse_min = $json['age_ratio']['spouse'];
+        $spouse_max = $json['age_ratio']['spouse'];
 
-        }else if($key == 'age_ratio'){
+        $child_min = $json['age_ratio']['child'];
+        $child_max = $json['age_ratio']['child'];
 
-            if(isset($data['sumInsured2'])){
+        $elders_min = $json['age_ratio']['elders'];
+        $elders_max = $json['age_ratio']['elders'];
 
-                $transformedData['Self'] = "(Min: " . $data['age_ratio']['self']['min'] . ", Max: " . $data['age_ratio']['self']['max'] . ")";
-            }
-
-
-        }else {
-            $transformedData[$key] = $value;
-        }
-    }
-
-    return json_encode($transformedData, JSON_PRETTY_PRINT);
-}
-
-
-public function transformFamilyFloaters($familyFloaters, $json) {
-    $result = [];
-
-    $min = $json['age_ratio']['self'];
-    $max = $json['age_ratio']['self'];
-
-    $spouse_min = $json['age_ratio']['spouse'];
-    $spouse_max = $json['age_ratio']['spouse'];
-
-    $child_min = $json['age_ratio']['child'];
-    $child_max = $json['age_ratio']['child'];
-
-    $elders_min = $json['age_ratio']['elders'];
-    $elders_max = $json['age_ratio']['elders'];
-
-    foreach ($familyFloaters as $key => $value) {
-        if ($value !== 0) {
-            switch ($key) {
-                case 'self':
-                    $result[] = "Self (Min: {$min['min']}, Max: {$max['max']})";
-                    break;
-                case 'spouse':
-                    $result[] = "Spouse (Min: {$spouse_min['min']}, Max: {$spouse_max['max']})";
-                    break;
-                case 'childrens':
-                    $result[] = "Children(s) - $value  (Min: {$child_min['min']}, Max: {$child_max['max']})";
-                    break;
-                case 'parents':
-                    $result[] = "Parent(s) - $value (Min: {$elders_min['min']}, Max: {$elders_max['max']})";
-                    break;
-                case 'parents-in-law':
-                    $result[] = "Parents-in-Law - $value  (Min: {$elders_min['min']}, Max: {$elders_max['max']})";
-                    break;
-                case 'either-parents-pil':
-                    $result[] = "Either Parents Nor Parents-in-Law - $value  (elders_min: {$elders_min['min']}, Max: {$elders_max['max']})";
-                    break;
+        foreach ($familyFloaters as $key => $value) {
+            if ($value !== 0) {
+                switch ($key) {
+                    case 'self':
+                        $result[] = "Self (Min: {$min['min']}, Max: {$max['max']})";
+                        break;
+                    case 'spouse':
+                        $result[] = "Spouse (Min: {$spouse_min['min']}, Max: {$spouse_max['max']})";
+                        break;
+                    case 'childrens':
+                        $result[] = "Children(s) - $value  (Min: {$child_min['min']}, Max: {$child_max['max']})";
+                        break;
+                    case 'parents':
+                        $result[] = "Parent(s) - $value (Min: {$elders_min['min']}, Max: {$elders_max['max']})";
+                        break;
+                    case 'parents-in-law':
+                        $result[] = "Parents-in-Law - $value  (Min: {$elders_min['min']}, Max: {$elders_max['max']})";
+                        break;
+                    case 'either-parents-pil':
+                        $result[] = "Either Parents Nor Parents-in-Law - $value  (elders_min: {$elders_min['min']}, Max: {$elders_max['max']})";
+                        break;
+                }
             }
         }
-    }
 
-    return implode(", ", $result);
-}
+        return implode(", ", $result);
+    }
 
 
 
diff --git a/app/Controllers/EmpDataServiceController.php b/app/Controllers/EmpDataServiceController.php
index 69f19725..9ea04893 100644
--- a/app/Controllers/EmpDataServiceController.php
+++ b/app/Controllers/EmpDataServiceController.php
@@ -578,6 +578,7 @@ class EmpDataServiceController extends BaseController
         $file = $this->batchFileModel->where('id', $file_id)->first();
         $client_id = $file['client_id'];
         $client_policy_id = $file['client_policy_id'];
+        $client_branch_id = $file['client_branch_id'];
         $batch_code = $file['batch_code'];
 
 
@@ -626,6 +627,7 @@ class EmpDataServiceController extends BaseController
             ->join('employees', 'employees.id = employee_polices.employee_id')
             ->where('employee_polices.client_policy_id', $client_policy_id)
             ->where('employees.client_id', $client_id)
+            ->where('employees.client_branch_id', $client_branch_id)
             ->where("employee_polices.{$id} IS NULL OR employee_polices.{$id} = ''")
             ->findAll();
 
@@ -976,6 +978,7 @@ class EmpDataServiceController extends BaseController
 
         $client_id = $file['client_id'];
         $client_policy_id = $file['client_policy_id'];
+        $client_branch_id = $file['client_branch_id'];
         $insurer_or_tpa = $file['insurer_or_tpa'];
         $status = $file['status'];
         $batch_code = $file['batch_code'];
@@ -1031,6 +1034,7 @@ class EmpDataServiceController extends BaseController
             $query->join('employees', 'employees.id = employee_polices.employee_id');
             $query->where('employee_polices.client_policy_id', $client_policy_id);
             $query->where('employees.client_id', $client_id);
+            $query->where('employees.client_branch_id', $client_branch_id);
             $query->where('employees.name', $name);
             $query->where('employees.emp_code', $emp_code);
             if ($file['insurer_or_tpa'] == 'tpa') {
@@ -1103,6 +1107,7 @@ class EmpDataServiceController extends BaseController
                 'employeeIds' => $emp_policy_ids,
                 'client_id' => $client_id,
                 'client_policy_id' => $client_policy_id,
+                'client_branch_id' => $client_branch_id,
                 'count' => $emp_count,
                 'event' => $file['event_type'],
                 'policy_name' => $policy_name['policy_name'],
@@ -1116,6 +1121,7 @@ class EmpDataServiceController extends BaseController
                 'employeeIds' => $emp_policy_ids,
                 'client_id' => $client_id,
                 'client_policy_id' => $client_policy_id,
+                'client_branch_id' => $client_branch_id,
                 'count' => $emp_count,
                 'event' => $file['event_type'],
                 'policy_name' => $policy_name['policy_name'],
@@ -1152,6 +1158,7 @@ class EmpDataServiceController extends BaseController
 
         $client_id = $import_data['client_id'];
         $client_policy_id = $import_data['client_policy_id'];
+        $client_branch_id = $import_data['client_branch_id'];
         $file = $import_data['file'];
 
         $data = $this->readExcelToArray($file);
@@ -1181,6 +1188,7 @@ class EmpDataServiceController extends BaseController
                     ->join('employee_polices', 'employee_polices.employee_id = employees.id')
                     ->where('employee_polices.client_policy_id', $client_policy_id)
                     ->where('employees.client_id', $client_id)
+                    ->where('employees.client_branch_id', $client_branch_id)
                     ->where('employee_polices.uhid', $uhid)
                     ->where('employees.emp_code', $emp_code)
                     ->where('(emp_endorsement.endorsement_id IS NULL OR emp_endorsement.endorsement_id = "")')
@@ -1211,10 +1219,6 @@ class EmpDataServiceController extends BaseController
             return 2;
         }
 
-        // if($empty_emp_tpa_uh_ids != $count){
-
-        //     return 3;
-        // }
 
         if ($empty_id_count == 0) {
 
@@ -1265,6 +1269,7 @@ class EmpDataServiceController extends BaseController
                     ->join('employees', 'employees.id = employee_polices.employee_id')
                     ->where('employee_polices.client_policy_id', $client_policy_id)
                     ->where('employees.client_id', $client_id)
+                    ->where('employees.client_branch_id', $client_branch_id)
                     ->where('employee_polices.uhid', $uhid)
                     ->where('employees.emp_code', $emp_code)
                     ->where('employees.is_active', 1)
@@ -1280,6 +1285,7 @@ class EmpDataServiceController extends BaseController
                     ->join('employee_polices', 'employee_polices.employee_id = employees.id')
                     ->where('employees.emp_code', $emp_code)
                     ->where('employees.client_id', $client_id)
+                    ->where('employees.client_branch_id', $client_branch_id)
                     ->where('employee_polices.client_policy_id', $client_policy_id)
                     ->where('employee_polices.uhid', $uhid)
                     ->get()
@@ -1319,6 +1325,7 @@ class EmpDataServiceController extends BaseController
 
         $client_id = $import_data['client_id'];
         $client_policy_id = $import_data['client_policy_id'];
+        $client_branch_id = $import_data['client_branch_id'];
         $file = $import_data['file'];
 
         $data = $this->readExcelToArray($file);
@@ -1352,6 +1359,7 @@ class EmpDataServiceController extends BaseController
                     ->where('employees.emp_code', $emp_code)
                     ->where('employees.name', $emp_name)
                     ->where('employees.client_id', $client_id)
+                    ->where('employees.client_branch_id', $client_branch_id)
                     ->where('emp_endorsement.actions', 'si')
                     ->where('employee_polices.client_policy_id', $client_policy_id)
                     ->where('(emp_endorsement.endorsement_id IS NULL OR emp_endorsement.endorsement_id = "")')
@@ -1449,6 +1457,7 @@ class EmpDataServiceController extends BaseController
                     ->where('employees.emp_code', $emp_code)
                     ->where('employees.name', $emp_name)
                     ->where('employees.client_id', $client_id)
+                    ->where('employees.client_branch_id', $client_branch_id)
                     ->where('employee_polices.client_policy_id', $client_policy_id)
                     ->where('employee_polices.is_active', 1)
                     ->first();
@@ -1478,6 +1487,7 @@ class EmpDataServiceController extends BaseController
                     ->join('employees', 'employees.id = employee_polices.employee_id')
                     ->where('employee_polices.client_policy_id', $client_policy_id)
                     ->where('employees.client_id', $client_id)
+                    ->where('employees.client_branch_id', $client_branch_id)
                     ->where('employees.name', $emp_name)
                     ->where('employees.emp_code', $emp_code)
                     ->where('employee_polices.is_active', 1)
@@ -1500,6 +1510,7 @@ class EmpDataServiceController extends BaseController
             'employeeIds' => $employeeIds,
             'client_id' => $client_id,
             'client_policy_id' => $client_policy_id,
+            'client_branch_id' => $client_branch_id,
             'count' => $count,
             'event' => $import_data['event_type'],
             'policy_name' => $policy_name['policy_name'],
@@ -1517,6 +1528,7 @@ class EmpDataServiceController extends BaseController
 
         $client_id = $import_data['client_id'];
         $client_policy_id = $import_data['client_policy_id'];
+        $client_branch_id = $import_data['client_branch_id'];
         $file = $import_data['file'];
 
 
@@ -1554,6 +1566,7 @@ class EmpDataServiceController extends BaseController
                     ->where('employees.emp_code', $emp_code)
                     ->where('employees.name', $emp_name)
                     ->where('employees.client_id', $client_id)
+                    ->where('employees.client_branch_id', $client_branch_id)
                     ->where('emp_endorsement.actions', 'd')
                     ->where('employee_polices.client_policy_id', $client_policy_id)
                     ->where('(emp_endorsement.endorsement_id IS NULL OR emp_endorsement.endorsement_id = "")')
@@ -1644,6 +1657,7 @@ class EmpDataServiceController extends BaseController
                     ->join('employees', 'employees.id = employee_polices.employee_id')
                     ->where('employee_polices.client_policy_id', $client_policy_id)
                     ->where('employees.client_id', $client_id)
+                    ->where('employees.client_branch_id', $client_branch_id)
                     ->where('employees.name', $emp_name)
                     ->where('employees.emp_code', $emp_code)
                     ->where('employee_polices.is_active', 1)
@@ -1674,6 +1688,7 @@ class EmpDataServiceController extends BaseController
                     ->join('employee_polices', 'employee_polices.employee_id = employees.id')
                     ->where('emp_endorsement.emp_code', $emp_code)
                     ->where('employees.client_id', $client_id)
+                    ->where('employees.client_branch_id', $client_branch_id)
                     ->where('employee_polices.client_policy_id', $client_policy_id)
                     ->where('emp_endorsement.name', $emp_name)
                     ->where('emp_endorsement.field_name', 'emp_status')
@@ -1712,6 +1727,7 @@ class EmpDataServiceController extends BaseController
         $depositeData = [
             'employeeIds' => $employeeIds,
             'client_id' => $client_id,
+            'client_branch_id' => $client_branch_id,
             'client_policy_id' => $client_policy_id,
             'count' => $count,
             'event' => $import_data['event_type'],
@@ -2239,9 +2255,10 @@ class EmpDataServiceController extends BaseController
     public function getDataByFileId($file_id, $status = 'success'){
 
        $data = $this->batchFileModel
-        ->select('batch_files.*, clients.client_name, clients.short_name, policies.name as policy_name')
+        ->select('batch_files.*, clients.client_name, clients.short_name, policies.name as policy_name, client_branch.branch_name')
         ->join('clients', 'clients.id = batch_files.client_id')
         ->join('client_policy', 'client_policy.id = batch_files.client_policy_id')
+        ->join('client_branch', 'client_branch.id = batch_files.client_branch_id')
         ->join('policies', 'policies.id = client_policy.policy_id')
         ->where('batch_files.id', $file_id)
         ->first();
@@ -2249,12 +2266,12 @@ class EmpDataServiceController extends BaseController
 
         if($status == 'success'){
 
-            $msg_txt = $data['short_name'] . ' - ' . $data['policy_name'] . ' - ' . $data['event_type'] . ' - ' . $data['actions'] . ' - ' . $data['insurer_or_tpa'];
+            $msg_txt = $data['client_name'] . '( ' . $data['branch_name'] . ' )' . ' - ' . $data['policy_name'] . ' - ' . $data['event_type'] . ' - ' . $data['actions'] . ' - ' . $data['insurer_or_tpa'];
             $msg_title = 'File Upload Success';
 
         }else if ($status == 'failure'){
 
-            $msg_txt = $data['short_name'] . ' - ' . $data['policy_name'] . ' - ' . $data['event_type'] . ' - ' . $data['actions'] . ' - ' . $data['insurer_or_tpa'];
+            $msg_txt = $data['client_name'] . '( ' . $data['branch_name'] . ' )' . ' - ' . $data['policy_name'] . ' - ' . $data['event_type'] . ' - ' . $data['actions'] . ' - ' . $data['insurer_or_tpa'];
             $msg_title = 'File Upload Failure';
         }
 
diff --git a/app/Controllers/EmployeeController.php b/app/Controllers/EmployeeController.php
index f6a0dc8f..77a14554 100644
--- a/app/Controllers/EmployeeController.php
+++ b/app/Controllers/EmployeeController.php
@@ -76,7 +76,13 @@ class EmployeeController extends AdminController
         $data['status'] = ['draft' => 'Draft', 'active' => 'Active', 'inactive' => 'In-Active', 'expired' => 'Expired'];
         if (count($this->request->getGet())) {
             $filterData = $this->request->getGet();
-            $data['employees'] = $this->employeePolicyModel->getEmployeePolicy(client_id: $filterData['client_id'], policy_id: $filterData['policy_id'], status: $filterData['status']);
+            $data['employees'] = $this->employeePolicyModel->getEmployeePolicy(
+                client_id: $filterData['client_id'], 
+                policy_id: $filterData['policy_id'], 
+                status: $filterData['status'], 
+                branch_id: $filterData['branch_id']
+            );
+
             $data['getData'] = $filterData;
         }
 
@@ -89,6 +95,8 @@ class EmployeeController extends AdminController
         //echo $this->request->isAJAX();die();
         $result = $this->clientModel->clientsWithPolicies();
 
+        // dd($result);
+
         // print_r($result);die();
         if (!count($result)) {
             return $this->respond(['dataStatus' => false, 'code' => 404, 'message' => 'no data found'], 200);
@@ -190,10 +198,11 @@ class EmployeeController extends AdminController
 
             $client_id = $this->request->getPost('client_id');
             $policy_id = $this->request->getPost('policy_id');
+            $branch_id = $this->request->getPost('branch_id');
             $action = $this->request->getPost('upload-action-type');
             $status = 'inprogress';
 
-            $file_id = $this->fileModel->insert(['file_name' => $filename, 'client_id' => $client_id, 'policy_id' => $policy_id, 'created_by' => $loggedInUserID, 'status' => $status, 'action' => $action]); //here field policy_id have client_policy_id and not policy id from policy master
+            $file_id = $this->fileModel->insert(['file_name' => $filename, 'client_id' => $client_id, 'policy_id' => $policy_id, 'created_by' => $loggedInUserID, 'status' => $status, 'action' => $action, 'client_branch_id' => $branch_id]); //here field policy_id have client_policy_id and not policy id from policy master
             $this->myLogger->logme("error", '{file_id} uploaded success', ['file_id' => $file_id]);
 
             //start validation process
@@ -232,6 +241,7 @@ class EmployeeController extends AdminController
                                 'up.first_name',
                                 'pm.name as policy_name',
                                 'c.short_name',
+                                'cb.branch_name',
                                 'cp.id as client_policy_id',
                                 '(SELECT COUNT(*)
                                   FROM employees e
@@ -244,6 +254,7 @@ class EmployeeController extends AdminController
                             ])
                             ->join('user_profiles up', 'files.created_by = up.id')
                             ->join('client_policy cp', 'files.policy_id = cp.id', 'left')
+                            ->join('client_branch cb', 'files.client_branch_id = cb.id', 'left')
                             ->join('policies pm', 'cp.policy_id = pm.id', 'left')
                             ->join('clients c', 'files.client_id = c.id and files.client_id = cp.client_id', 'left')
                             ->where('files.created_by', get_session_userid())
@@ -251,8 +262,9 @@ class EmployeeController extends AdminController
                             ->findAll();
         // dd($data['fileList']);
 
-        $data['batch_list'] = $this->batchFileModel->select('batch_files.*, policies.name as policy_name, clients.short_name as client_short_name')
+        $data['batch_list'] = $this->batchFileModel->select('batch_files.*, policies.name as policy_name, clients.short_name as client_short_name, client_branch.branch_name')
             ->join('client_policy', 'client_policy.id = batch_files.client_policy_id')
+            ->join('client_branch', 'client_branch.id = batch_files.client_branch_id')
             ->join('policies', 'policies.id = client_policy.policy_id')
             ->join('clients', 'clients.id = client_policy.client_id')
             ->orderBy('batch_files.id', 'desc')
@@ -351,17 +363,23 @@ class EmployeeController extends AdminController
 
         $client_id = $this->request->getPost('client_id');
         $client_policy_id = $this->request->getPost('client_policy_id');
+        $client_branch_id = $this->request->getPost('client_branch_id');
         $insurer_or_tpa = $this->request->getPost('insurer_or_tpa');
         $event_type = $this->request->getPost('event_type');
         $actions = $this->request->getPost('action_type');
 
         $client_data = $this->clientModel->where('id', $client_id)->first();
-        $policy_name = $this->clientPolicyModel->select('policies.name')->join('policies', 'policies.id = client_policy.policy_id')->where('client_policy.id', $client_policy_id)->first();
-        $file_name = generate_filename($client_data['short_name'], $event_type, $actions, $insurer_or_tpa, $policy_name['name']);
+        $policy_name_and_branch_name = $this->clientPolicyModel->select('policies.name, client_branch.branch_code')
+                            ->join('client_branch', 'client_branch.id = client_policy.client_branch_id')
+                            ->join('policies', 'policies.id = client_policy.policy_id')
+                            ->where('client_policy.id', $client_policy_id)
+                            ->first();
+        $file_name = generate_filename($client_data['short_name'], $event_type, $actions, $insurer_or_tpa, $policy_name_and_branch_name['name'], $policy_name_and_branch_name['branch_code']);
 
         $batch_data = [
             'client_id' => $client_id,
             'client_policy_id' => $client_policy_id,
+            'client_branch_id' => $client_branch_id,
             'insurer_or_tpa' => $insurer_or_tpa,
             'event_type' => $event_type,
             'actions' => $actions,
@@ -544,8 +562,13 @@ class EmployeeController extends AdminController
         $data['status'] = ['pending' => 'Pending', 'inprogress' => 'In-Progress', 'complete' => 'Complete'];
         if (count($this->request->getGet())) {
             $filterData = $this->request->getGet();
-            $data['employees'] = $this->employeePolicyModel->getEmployeeEndorsementList(client_id: $filterData['client_id'], policy_id: $filterData['policy_id'], status: $filterData['status']);
-            $data['getData'] = $filterData;
+            $data['employees'] = $this->employeePolicyModel->getEmployeeEndorsementList(
+                client_id: $filterData['client_id'],
+                policy_id: $filterData['policy_id'],
+                status: $filterData['status'],
+                branch_id: $filterData['branch_id']
+            );
+                        $data['getData'] = $filterData;
             // echo "
";
             // print_r($data); die;
         }
@@ -854,8 +877,9 @@ class EmployeeController extends AdminController
     }
 
 
-    public function generateIDCardForEmployee($rand_string)
-    {
+    public function generateIDCardForEmployee($rand_string, $people = 0)
+    {    
+        // dd($rand_string, $people);
 
         try {
 
@@ -883,9 +907,13 @@ class EmployeeController extends AdminController
             $client_policy_id = $get_emp_code_and_client_policy_id['client_policy_id'];
             $emp_code = $get_emp_code_and_client_policy_id['emp_code'];
 
-            // $data['data'] = $this->employeePolicyModel->getECardDataUsingMd5($client_policy_id, $emp_code);
+
             $data = $this->employeePolicyModel->getECardDataUsingMd5($client_policy_id, $emp_code);
             
+            if($people == 0){
+               $data = $this->employeePolicyModel->getECardSingleData($rand_string, $emp_code);
+            }
+
             // dd($data);
 
             $template_data_path =  WRITEPATH . 'e_card_template/';
diff --git a/app/Controllers/EmployeeServiceController.php b/app/Controllers/EmployeeServiceController.php
index 6e6bb123..63a240d1 100644
--- a/app/Controllers/EmployeeServiceController.php
+++ b/app/Controllers/EmployeeServiceController.php
@@ -229,12 +229,13 @@ class EmployeeServiceController extends AdminController
                         $result['error_data'][$row_key][$keys[$col_key]]['error'][] = $format_error['error'];
                     }
                 }
-
+                // Kint::dump($is_mandatory);
                 //allowed values check
-                if($is_mandatory === true && isset($allowed_values) && is_array($allowed_values))
+                if(($is_mandatory === true && isset($allowed_values) && is_array($allowed_values)) || (is_array($is_mandatory) && (isset($allowed_values) && is_array($allowed_values))))
                 {
-                    
-                    if(!in_array(strtolower(trim($col)),$allowed_values))
+                    // print_r($allowed_values);
+                    // dd($col);
+                    if(!in_array((trim($col)),$allowed_values))
                     {
                         array_push($result['error_summary'],3); 
                         $result['error_data'][$row_key][$keys[$col_key]]['col_name'] = $column_dispaly_name; //push column name
@@ -263,9 +264,9 @@ class EmployeeServiceController extends AdminController
                     
                 }
 
-            }
-
-        }
+            }//col foreach
+            // break;
+        }//row foreach
 
          if(isset($result['error_summary']) && count($result['error_summary']))
                 {
@@ -349,6 +350,14 @@ class EmployeeServiceController extends AdminController
         $relationship = $this->general_relationships;
 
         $employee_data_group_by_family = data_group_by_family($excel_data);
+
+         $is_self_available_in_policy_terms = false;
+        if($policy_details['policy_type_id'] == 3) // GMC parents
+        {
+            $temp = $policy_terms['family_floaters'];
+            $temp = is_array($temp) ? $temp : (is_object($temp) ? (array)$temp : []);
+            $is_self_available_in_policy_terms = isset($temp['self']) ? true : false;
+        }
         // dd($employee_data_group_by_family);
             foreach ($employee_data_group_by_family as $emp_id => $family) 
             {
@@ -356,7 +365,7 @@ class EmployeeServiceController extends AdminController
                 //if action is DA then get all familiy members,transfrom them into excel array, addd data source as db or excel
                 if($file['action'] == 'dependent_addition')
                 {
-                    $existing_famility_details = $this->employeeModel->getEmpFamilybyEmpCode(emp_code: $emp_id,client_id: $file['client_id'],client_policy_id: $file ['policy_id'],emp_status: ['active'],policy_status:['active']);
+                    $existing_famility_details = $this->employeeModel->getEmpFamilybyEmpCode(emp_code: $emp_id,client_id: $file['client_id'],client_policy_id: $file ['policy_id'],emp_status: ['active'],policy_status:['active'],client_branch_id:[ $file['client_branch_id'] ]);
                     // dd(($existing_famility_details));
                     //transsform familiy details from db columns to exxcel row with column indexs for checking remaining functionalitites
                     $existing_famility_details = transform_db_data_to_excel($existing_famility_details,$file);
@@ -370,7 +379,7 @@ class EmployeeServiceController extends AdminController
 
                 if($file['action'] == 'inception' || $file['action'] == 'addition' || $file['action'] == 'dependent_addition')
                 {
-                    $res = name_dup_check_within_family($family,$file['action']);
+                    $res = name_dup_check_within_family($family,$file['action']);//in both file data & DB data
                     // dd($res);
                     if(count($res))
                     {
@@ -383,7 +392,7 @@ class EmployeeServiceController extends AdminController
                 }
 
                 //check self availbale in uploaded file
-                if(($file['action'] == 'inception' || $file['action'] == 'addition') && ($policy_details['policy_type_id'] == 3 && $policy_details['base_policy'] == null)) // 3 is GMC parents dep addon)
+                if(($file['action'] == 'inception' || $file['action'] == 'addition') && ($policy_details['policy_type_id'] == 3 && $is_self_available_in_policy_terms)) // 3 is GMC parents dep addon)
                 {
                     // dd('file check');
                     $res = check_self_available_in_family($family,$file['action']);
@@ -395,10 +404,10 @@ class EmployeeServiceController extends AdminController
                     }
                 }
 
-                //check self avaialbe where self data is not available either same policy (i.e.) gMC parents
-                if($file['action'] == 'dependent_addition' || ($policy_details['policy_type_id'] == 3 && $policy_details['base_policy'] == null)) // 3 is GMC parents as base policy not as dep addon)
+                //check self avaialbe  either same policy DB level(i.e.) gMC parents
+                if($file['action'] == 'dependent_addition' || ($policy_details['policy_type_id'] == 3 && !$is_self_available_in_policy_terms)) // 3 is GMC parents as base policy not as dep addon)
                 {
-                   $self_details = $this->employeeModel->getEmpFamilybyEmpCode(emp_code: $emp_id,client_id: $file['client_id'],emp_status: ['active'],policy_status:['active']);
+                   $self_details = $this->employeeModel->getEmpFamilybyEmpCode(emp_code: $emp_id,client_id: $file['client_id'],emp_status: ['active'],policy_status:['active'],client_branch_id:[ $file['client_branch_id'] ]);
                    // dd($self_details);
                     if(!count($self_details))
                     {
@@ -559,7 +568,7 @@ class EmployeeServiceController extends AdminController
                         //if action is DA then get all familiy members,transfrom them into excel array, addd data source as db or excel
                         if($file['action'] == 'dependent_addition')
                         {
-                            $existing_famility_details = $this->employeeModel->getEmpFamilybyEmpCode(emp_code: $emp_id,client_id: $file['client_id'],client_policy_id: $file ['policy_id'],emp_status: ['active'],policy_status:['active']);
+                            $existing_famility_details = $this->employeeModel->getEmpFamilybyEmpCode(emp_code: $emp_id,client_id: $file['client_id'],client_policy_id: $file ['policy_id'],emp_status: ['active'],policy_status:['active'],client_branch_id: [ $file['client_branch_id'] ]);
                             // dd($existing_famility_details);
                             //transsform familiy details from db columns to exxcel row with column indexs for checking remaining functionalitites
                             $existing_famility_details = transform_db_data_to_excel($existing_famility_details,$file);
@@ -669,7 +678,7 @@ class EmployeeServiceController extends AdminController
               break;
             }
             // echo '
START- ' . $row[2]; - $employee = $this->employeeModel->where('emp_code', $row[1])->where('name',$row[2])->where('client_id',$file['client_id'])->first(); + $employee = $this->employeeModel->where('emp_code', $row[1])->where('name',$row[2])->where('client_id',$file['client_id'])->where('client_branch_id',$file['client_branch_id'])->first(); $existing_endorsements = $this->empEndorsementModel->where('actions','d') ->where('table_name','employees') @@ -759,7 +768,7 @@ class EmployeeServiceController extends AdminController $field_value = ($field_name == 'dob' ? change_date_format($row[4],'d-M-Y','Y-m-d') : $row[4] ); - $employee = $this->employeeModel->where('emp_code', $row[1])->where('name',$row[2])->where('client_id',$file['client_id'])->first(); + $employee = $this->employeeModel->where('emp_code', $row[1])->where('name',$row[2])->where('client_id',$file['client_id'])->where('client_branch_id',$file['client_branch_id'])->first(); $existing_endorsements = $this->empEndorsementModel->where('actions','c') ->where('table_name','employees') ->where('endorsement_id is null') @@ -819,7 +828,7 @@ class EmployeeServiceController extends AdminController break; } // echo '
START- ' . $row[2]; - $employee = $this->employeeModel->where('emp_code', $row[1])->where('name',$row[2])->where('client_id',$file['client_id'])->first(); + $employee = $this->employeeModel->where('emp_code', $row[1])->where('name',$row[2])->where('client_id',$file['client_id'])->where('client_branch_id',$file['client_branch_id'])->first(); $employee_policy = $this->employeePolicyModel->where('employee_id',$employee['id'])->where('client_policy_id',$file['policy_id'])->first(); $existing_endorsements = $this->empEndorsementModel->where('actions','si') @@ -870,7 +879,7 @@ class EmployeeServiceController extends AdminController if($file['id'] == null || $value['temp']['source'] == 'excel' || (($file['action'] == 'dependent_addition' && in_array($value['temp']['source'],[10,11]) && ($slab_details['slab_rates'][0]['premium_type'] == 1 && strtolower($value['relationship']) == 'self') || ($slab_details['slab_rates'][0]['premium_type'] == 1 || $slab_details['slab_rates'][0]['premium_type'] == null)))) //insert data come from excel and from db i.e. ( $file['id'] == null for enrollment data) { - $employee = $this->employeeModel->checkExistingEmp($value); + $employee = $this->employeeModel->checkExistingEmp($value,$file['client_branch_id']); $policy_data = $value['policy_details']; $temp = $value['temp']; unset($value['policy_details']); @@ -895,6 +904,7 @@ class EmployeeServiceController extends AdminController $value['updated_by'] = $file['created_by']; $value['id'] = $employee[0]['id']; $value['emp_status'] = 'active'; + $value['client_branch_id'] = $file['client_branch_id']; $log_message = 'Update Employee - '.$employee[0]['name'].'('.$employee[0]['emp_code'].') with PK '.$employee[0]['id']; // $this->myLogger->logme('error',('Update - ' . $employee[0]['id'].' - '. $employee[0]['emp_code'] .' - '.$employee[0]['name'])); } @@ -902,6 +912,7 @@ class EmployeeServiceController extends AdminController { $value['emp_status'] = 'active'; $value['created_by'] = $file['created_by']; + $value['client_branch_id'] = $file['client_branch_id']; $log_message = 'Insert Employee- '.$value['name'] .'('.$value['emp_code'] .') with PK '; // $this->myLogger->logme('error',('Insert - ' . $value['emp_code'] .' - '. $value['name'])); } @@ -946,7 +957,7 @@ class EmployeeServiceController extends AdminController // $employee -> holds existing emp model obj and $policy_data holds new policy changes as array public function employeesSIEnhanceProcessWhileOnbboard(array $employee,array $policy_data,array $file) { - $employee = $this->employeeModel->where('emp_code', $employee['emp_code'])->where('name',$employee['name'])->where('client_id',$employee['client_id'])->where('is_active',1)->first(); + $employee = $this->employeeModel->where('emp_code', $employee['emp_code'])->where('name',$employee['name'])->where('client_id',$employee['client_id'])->where('client_branch_id',$file['client_id'])->where('is_active',1)->first(); $employee_policy = $this->employeePolicyModel->where('employee_id',$employee['id'])->where('client_policy_id',$file['policy_id'])->first(); // dd($employee_policy); @@ -1108,10 +1119,11 @@ class EmployeeServiceController extends AdminController public function getFileMetaDataByFileId($file_id, $status = 'success'){ $data = $this->fileModel - ->select('files.*, clients.client_name, clients.short_name, policies.name as policy_name') + ->select('files.*, clients.client_name, clients.short_name, policies.name as policy_name,client_branch.branch_code') ->join('clients', 'clients.id = files.client_id') ->join('client_policy', 'client_policy.id = files.policy_id') ->join('policies', 'policies.id = client_policy.policy_id') + ->join('client_branch', 'client_branch.id = files.client_branch_id') ->where('files.id', $file_id) ->first(); @@ -1124,7 +1136,7 @@ class EmployeeServiceController extends AdminController $msg_title = 'File Upload Failure'; } - $msg_txt = $data['client_name'] . ' - ' . $data['policy_name'] . ' - ' . ucfirst($data['action']); + $msg_txt = $data['client_name'] . ' ('.$data['branch_code'].') - ' . $data['policy_name'] . ' - ' . ucfirst($data['action']); $user_id = $data['created_by']; $url = 'employee/upload'; diff --git a/app/Controllers/JobWorker.php b/app/Controllers/JobWorker.php index 7b26d8cb..793ddb76 100644 --- a/app/Controllers/JobWorker.php +++ b/app/Controllers/JobWorker.php @@ -175,7 +175,16 @@ class JobWorker extends AdminController } $payload = is_array($payload) ? $payload : []; - $response = $jobHandler($payload,$job->id); + try + { + $response = $jobHandler($payload,$job->id); + } + catch(\Exception $e) + { + $job_status = self::STATUS_FAILED; + $runtime = $runtime === null ? microtime(true) - $start : $runtime; + $response = ['file_name' => $e->getFile(),'error' => $e->getMessage(),'line_no' => $e->getLine(),'info' => $e->getTraceAsString()]; + } $runtime = microtime(true) - $start; $job_status = self::STATUS_DONE; diff --git a/app/Controllers/PendingActionsController.php b/app/Controllers/PendingActionsController.php index 2e4bb8e8..c7764902 100644 --- a/app/Controllers/PendingActionsController.php +++ b/app/Controllers/PendingActionsController.php @@ -95,17 +95,20 @@ class PendingActionsController extends AdminController cp.policy_status, cp.open_for_enrollment, cp.inception_type, + cb.id as branch_id, + cb.branch_name, COUNT(ep.id) AS employee_policy_count '); $builder->join('employee_polices ep', 'cp.id = ep.client_policy_id AND ep.is_active = 1', 'left'); $builder->join('clients', 'cp.client_id = clients.id'); + $builder->join('client_branch cb', 'cb.id = cp.client_branch_id'); $builder->join('policies', 'cp.policy_id = policies.id'); $builder->where('cp.is_active', 1); $builder->where('cp.open_for_enrollment', 1); $builder->where('cp.is_addon', 1); $builder->where('cp.policy_status', 1); $builder->where('cp.inception_type', 1); - $builder->whereIn('cp.policy_type_id', [1, 2, 30]); + $builder->whereIn('cp.policy_type_id', [1, 2, 3]); $builder->groupBy('cp.id, cp.client_id, cp.policy_id, cp.policy_type_id, cp.is_addon, cp.policy_status, cp.open_for_enrollment'); $builder->having('employee_policy_count = 0 OR employee_policy_count IS NULL'); @@ -147,6 +150,8 @@ class PendingActionsController extends AdminController clients.client_name as client_name, clients.id as client_id, + client_branch.id as branch_id, + client_branch.branch_name, emp_endorsement.id, emp_endorsement.pk, emp_endorsement.endorsement_id, @@ -159,20 +164,23 @@ class PendingActionsController extends AdminController employees.name as ename ') ->join('employees', 'emp_endorsement.pk = employees.id AND employees.is_active = 1 AND employees.emp_status = \'active\'') - ->join('clients', 'employees.client_id = clients.id AND clients.is_active = 1', 'left') - ->where([ + ->join('clients', 'employees.client_id = clients.id AND clients.is_active = 1', 'left') + ->join('client_branch', 'client_branch.id = employees.client_branch_id', 'left') + ->where([ 'emp_endorsement.actions' => 'c', 'emp_endorsement.is_active' => 1, 'emp_endorsement.status' => 'pending', 'emp_endorsement.endorsement_id' => null ]) - ->groupBy('emp_endorsement.pk, emp_endorsement.emp_code, emp_endorsement.table_name, emp_endorsement.actions, emp_endorsement.name'); + ->groupBy('emp_endorsement.pk, emp_endorsement.emp_code, emp_endorsement.table_name, emp_endorsement.actions, emp_endorsement.name'); // Main query builder $builder = $this->db->table('clients'); $builder->select(" subquery.client_name, subquery.client_id, + subquery.branch_name, + subquery.branch_id, COUNT(subquery.id) AS subquery_count, ($subQueryExport) AS batch_export_count, ($subQueryImport) AS batch_import_count @@ -223,6 +231,8 @@ class PendingActionsController extends AdminController ->select(' clients.client_name as client_name, clients.id as client_id, + client_branch.id as branch_id, + client_branch.branch_name, client_policy.id as client_policy_id, policies.name as policy_name, policies.id as pid, @@ -239,6 +249,7 @@ class PendingActionsController extends AdminController ->join('employee_polices', 'emp_endorsement.pk = employee_polices.id AND employee_polices.is_active = 1 AND employee_polices.status = \'active\'') ->join('client_policy', 'employee_polices.client_policy_id = client_policy.id AND client_policy.is_active = 1 AND client_policy.policy_status = 1') ->join('clients', 'client_policy.client_id = clients.id AND clients.is_active = 1') + ->join('client_branch', 'client_branch.id = client_policy.client_branch_id') ->join('policies', 'client_policy.policy_id = policies.id AND policies.is_active = 1') ->where([ 'emp_endorsement.actions' => 'si', @@ -256,6 +267,8 @@ class PendingActionsController extends AdminController subquery.client_id, subquery.client_policy_id, subquery.policy_name, + subquery.branch_name, + subquery.branch_id, COUNT(subquery.id) AS subquery_count, ($subQueryExport) AS batch_export_count, ($subQueryImport) AS batch_import_count @@ -304,8 +317,10 @@ class PendingActionsController extends AdminController // Build the subquery $subqueryBuilder = $this->db->table('emp_endorsement') ->select(' - clients.client_name as client_name, clients.id as client_id, + clients.client_name as client_name, + client_branch.id as branch_id, + client_branch.branch_name, client_policy.id as client_policy_id, policies.name as policy_name, policies.id as pid, @@ -317,10 +332,12 @@ class PendingActionsController extends AdminController emp_endorsement.actions, emp_endorsement.name, emp_endorsement.status + ') ->join('employee_polices', 'emp_endorsement.pk = employee_polices.id AND employee_polices.is_active = 1 AND employee_polices.status = \'active\' AND emp_endorsement.table_name = \'employee_polices\'', 'left') ->join('client_policy', 'employee_polices.client_policy_id = client_policy.id AND client_policy.is_active = 1 AND client_policy.policy_status = 1', 'left') ->join('clients', 'client_policy.client_id = clients.id AND clients.is_active = 1', 'left') + ->join('client_branch', 'client_branch.id = client_policy.client_branch_id', 'left') ->join('policies', 'client_policy.policy_id = policies.id AND policies.is_active = 1', 'left') ->where([ 'emp_endorsement.actions' => 'd', @@ -339,6 +356,8 @@ class PendingActionsController extends AdminController subquery.client_id, subquery.client_policy_id, subquery.policy_name, + subquery.branch_name, + subquery.branch_id, COUNT(subquery.id) AS subquery_count, ($subQueryExport) AS batch_export_count, ($subQueryImport) AS batch_import_count @@ -389,10 +408,12 @@ class PendingActionsController extends AdminController ->select('c.short_name') ->select('p.name as policy_name') ->select('ep.uhid') + ->select('cb.branch_name, cb.id as branch_id') ->select("($subQueryExport) AS batch_export_count", false) ->select("($subQueryImport) AS batch_import_count", false) ->join('client_policy cp', 'ep.client_policy_id = cp.id AND cp.is_active = 1 AND cp.policy_status = 1') ->join('clients c', 'c.id = cp.client_id') + ->join('client_branch cb', 'cb.id = cp.client_branch_id') ->join('policies p', 'p.id = cp.policy_id') ->where('ep.uhid IS NULL') ->where('ep.status', 'active') @@ -439,13 +460,16 @@ class PendingActionsController extends AdminController clients.short_name, clients.client_name, policies.name as policy_name, - clients.id as client_id + clients.id as client_id, + client_branch.id as branch_id, + client_branch.branch_name '); $builder->select("($subQueryExport) AS batch_export_count", false); $builder->select("($subQueryImport) AS batch_import_count", false); $builder->join('client_policy', 'employee_polices.client_policy_id = client_policy.id AND client_policy.is_active = 1 AND client_policy.policy_status = 1'); $builder->join('clients', 'clients.id = client_policy.client_id'); + $builder->join('client_branch', 'client_branch.id = client_policy.client_branch_id'); $builder->join('policies', 'policies.id = client_policy.policy_id'); $builder->where('employee_polices.tpa_id', null); $builder->where('employee_polices.uhid IS NOT NULL'); diff --git a/app/Helpers/excel_import_export_helper.php b/app/Helpers/excel_import_export_helper.php index 5c29ce41..c7cec62d 100644 --- a/app/Helpers/excel_import_export_helper.php +++ b/app/Helpers/excel_import_export_helper.php @@ -359,7 +359,7 @@ if (!function_exists('read_excel_file_to_array')) { if (! function_exists('generate_filename')) { - function generate_filename($client_short_name, $event_type, $actions, $insurer_or_tpa, $policy_name) { + function generate_filename($client_short_name, $event_type, $actions, $insurer_or_tpa, $policy_name, $branch_code) { $evenTypeLabel = ''; if($event_type == 'inception'){ @@ -387,9 +387,10 @@ if (! function_exists('generate_filename')) { $currentDateTime = new DateTime('now', new DateTimeZone('Asia/Kolkata')); $formattedDateTime = $currentDateTime->format('d-m-Y_H-i-s'); $policy_name = str_replace(' ', '_', $policy_name); + $branch_code = isset($branch_code) ? str_replace(' ', '_', $branch_code) : '_'; // Generate file name - $file_name = $client_short_name. '_' . $policy_name . '_' . $insurer_or_tpa_lable . $actions . $evenTypeLabel . '_' . $formattedDateTime . '.xlsx'; + $file_name = $client_short_name. '_' . $branch_code . '_' . $policy_name . '_' . $insurer_or_tpa_lable . $actions . $evenTypeLabel . '_' . $formattedDateTime . '.xlsx'; return $file_name; } } diff --git a/app/Helpers/excel_util_helper.php b/app/Helpers/excel_util_helper.php index e4561843..ecef10e8 100644 --- a/app/Helpers/excel_util_helper.php +++ b/app/Helpers/excel_util_helper.php @@ -405,7 +405,7 @@ if (!function_exists('name_and_empid_check_in_db')) foreach ($family_data as $rkey => $row) { - if(isset($row['temp']) && $row['temp']['source'] != 'db') + if(($current_action == 'inception' || $current_action == 'addition') || ($current_action == 'dependent_addition' && (isset($row['temp']) && $row['temp']['source'] != 'db'))) { $res = $employeeModel ->join('client_policy cp',"employees.client_id = cp.client_id") diff --git a/app/Helpers/utility_helper.php b/app/Helpers/utility_helper.php index 5a1ea319..2dbcb1ce 100644 --- a/app/Helpers/utility_helper.php +++ b/app/Helpers/utility_helper.php @@ -188,6 +188,7 @@ if (!function_exists('get_base64_image')) { if (!function_exists('format_indian_number')) { function format_indian_number($number) { // Round the number to two decimal places + $number = isset($number) ? $number : 0; $number = round($number, 2); // Split the number into integer and decimal parts diff --git a/app/Models/BatchFileModel.php b/app/Models/BatchFileModel.php index 1d2b4a0d..df644790 100644 --- a/app/Models/BatchFileModel.php +++ b/app/Models/BatchFileModel.php @@ -24,6 +24,7 @@ class BatchFileModel extends Model "amount", "status", "error_data", + "client_branch_id", ]; // Callbacks diff --git a/app/Models/ClientModel.php b/app/Models/ClientModel.php index 193b9b71..35beeb4c 100644 --- a/app/Models/ClientModel.php +++ b/app/Models/ClientModel.php @@ -4,6 +4,7 @@ namespace App\Models; use CodeIgniter\Model; use App\Models\ClientPolicyModel; +use App\Models\ClientBranchModel; class ClientModel extends Model { @@ -41,7 +42,8 @@ class ClientModel extends Model foreach ($clients as &$client) { $clientPolicyModel = new ClientPolicyModel(); - $clientPolicies = $clientPolicyModel->select(['client_policy.id','p.name','pt.policy_type']) + $clientPolicies = $clientPolicyModel->select(['client_branch.id as branch_id','client_branch.branch_name','client_branch.branch_code', 'client_branch.client_id', 'client_policy.id as client_policy_id','p.name','pt.policy_type',]) + ->join('client_branch', 'client_branch.id = client_policy.client_branch_id') ->join('policies p', 'p.id = client_policy.policy_id') ->join('policy_type pt','client_policy.policy_type_id = pt.id') ->where('client_policy.client_id',$client['id']) @@ -50,6 +52,13 @@ class ClientModel extends Model ->findAll(); $client['policies'] = $clientPolicies; + + $clientBranchModel = new ClientBranchModel(); + $clientBranchs = $clientBranchModel->select(['client_branch.id','client_branch.branch_name','client_branch.branch_code', 'client_branch.client_id']) + ->where('client_branch.client_id',$client['id']) + ->findAll(); + + $client['branchs'] = $clientBranchs; } //print_r(($clients));die(); return $clients; diff --git a/app/Models/EmployeeModel.php b/app/Models/EmployeeModel.php index 7ec30755..b9a78696 100644 --- a/app/Models/EmployeeModel.php +++ b/app/Models/EmployeeModel.php @@ -37,7 +37,8 @@ class EmployeeModel extends Model "is_active", "file_id", "is_addon_value", - "is_createdby_hr" + "is_createdby_hr", + "client_branch_id" ]; // Callbacks @@ -76,7 +77,7 @@ class EmployeeModel extends Model // for emp onboard process do not change - public function checkExistingEmp($arr) + public function checkExistingEmp($arr,$client_branch_id) { if($arr['temp']['emp_id'] == null) @@ -84,9 +85,12 @@ class EmployeeModel extends Model return $this->where('emp_code',$arr['emp_code']) ->where('name',$arr['name']) ->where('client_id',$arr['client_id']) + ->where('client_branch_id',$client_branch_id) ->where('is_active',1) ->where('gender',$arr['gender']) ->where('dob',$arr['dob']) + ->where('is_active',1) + ->where('emp_status','active') ->find(); } else @@ -96,9 +100,9 @@ class EmployeeModel extends Model } - public function getEmpFamilybyEmpCode(string $client_policy_id = null,string $emp_code = null,string $client_id = null,array $emp_status = [],array $policy_status = [],array $relationship = []) + public function getEmpFamilybyEmpCode(string $client_policy_id = null,string $emp_code = null,string $client_id = null,array $emp_status = [],array $policy_status = [],array $relationship = [],array $client_branch_id = []) { - $result = $this->select(['employees.id as emp_id', 'employees.client_id', 'employees.relationship', 'employees.relationship_code', 'employees.change_event', 'employees.emp_code', 'employees.name', 'employees.email_personal', 'employees.email_corporate', 'employees.mobile', 'employees.gender', 'employees.dob', 'employees.doj', 'employees.basic_pay', 'employees.band', 'employees.designation', 'employees.emp_status','employee_polices.id as emp_policy_id', 'employee_polices.employee_id', 'employee_polices.client_policy_id', 'employee_polices.tpa_id', 'employee_polices.uhid', 'employee_polices.batch_code', 'employee_polices.status', 'employee_polices.pre_existing_alignments', 'employee_polices.basic_cover_si', 'employee_polices.date_coverage', 'employee_polices.policy_end_date', 'employee_polices.days', 'employee_polices.premium', 'employee_polices.rata_premimum', 'employee_polices.gst', 'employee_polices.date_of_exit', 'employee_polices.reason_for_exit','policies.name as policy_name','client_policy.is_addon']) + $result = $this->select(['employees.id as emp_id', 'employees.client_id','employees.client_branch_id', 'employees.relationship', 'employees.relationship_code', 'employees.change_event', 'employees.emp_code', 'employees.name', 'employees.email_personal', 'employees.email_corporate', 'employees.mobile', 'employees.gender', 'employees.dob', 'employees.doj', 'employees.basic_pay', 'employees.band', 'employees.designation', 'employees.emp_status','employee_polices.id as emp_policy_id', 'employee_polices.employee_id', 'employee_polices.client_policy_id', 'employee_polices.tpa_id', 'employee_polices.uhid', 'employee_polices.batch_code', 'employee_polices.status', 'employee_polices.pre_existing_alignments', 'employee_polices.basic_cover_si', 'employee_polices.date_coverage', 'employee_polices.policy_end_date', 'employee_polices.days', 'employee_polices.premium', 'employee_polices.rata_premimum', 'employee_polices.gst', 'employee_polices.date_of_exit', 'employee_polices.reason_for_exit','policies.name as policy_name','client_policy.is_addon']) ->join('employee_polices', 'employee_polices.employee_id = employees.id') ->join('client_policy', 'client_policy.id = employee_polices.client_policy_id') ->join('policies', 'policies.id = client_policy.policy_id') @@ -116,6 +120,9 @@ class EmployeeModel extends Model }) ->when(count($emp_status), function($query) use ($emp_status){ return $query->whereIn('employees.emp_status', $emp_status); + }) + ->when(count($client_branch_id), function($query) use ($client_branch_id){ + return $query->whereIn('employees.client_branch_id', $client_branch_id); }) ->when(count($relationship), function($query) use ($relationship){ return $query->whereIn('employees.relationship', $relationship); diff --git a/app/Models/EmployeePolicyModel.php b/app/Models/EmployeePolicyModel.php index 217e2013..2e7bcf23 100644 --- a/app/Models/EmployeePolicyModel.php +++ b/app/Models/EmployeePolicyModel.php @@ -76,7 +76,7 @@ class EmployeePolicyModel extends Model } // ----------------------------------------------------------------------------------------------------- - public function getEmployeePolicy($client_id,$policy_id,$status) + public function getEmployeePolicy($client_id,$policy_id,$status, $branch_id) { $result = $this->select(['employee_polices.*','pm.name as policy_name','im.short_name as insurer_short_name','ib.branch_name as insurer_branch_name','ib.branch_code as insurer_branch_code','tpam.name as tpa_name','tpam.short_name as tpa_short_name','tpab.branch_code as tpa_branch_code','cm.client_name','cm.short_name as client_short_name','emp.relationship','emp.relationship_code','emp.change_event','emp.emp_code','emp.name','emp.email_corporate','emp.dob','emp.gender','emp.emp_status','emp.is_active as emp_is_active','emp.mobile as mobile']) ->join('employees emp', 'employee_polices.employee_id = emp.id') @@ -88,6 +88,7 @@ class EmployeePolicyModel extends Model ->join('tpa_branch tpab', 'cp.tpa_branch_id = tpab.id') //tpab - tpa brach ->join('clients cm', 'cp.client_id = cm.id') //cm - client master ->where('emp.client_id',$client_id) + ->where('emp.client_branch_id',$branch_id) ->where('employee_polices.is_active',1) ->where('emp.is_active',1) ->where('employee_polices.client_policy_id',$policy_id) @@ -119,6 +120,7 @@ class EmployeePolicyModel extends Model public function getInceptionEmployeeDataForExportExcel($ref_data) { $client_policy_id = $ref_data['client_policy_id']; + $client_branch_id = $ref_data['client_branch_id']; $insurer_or_tpa = $ref_data['insurer_or_tpa']; $event = $ref_data['event_type']; @@ -173,7 +175,8 @@ class EmployeePolicyModel extends Model ) as batch_data ON employee_polices.id = batch_data.emp_policy_id WHERE employee_polices.client_policy_id = '{$client_policy_id}' AND (employee_polices.{$id} IS NULL OR employee_polices.{$id} = '') - AND employee_polices.is_active = 1"; + AND employee_polices.is_active = 1 + AND employees.client_branch_id = '{$client_branch_id}'"; // Get the result set $query = $this->db->query($sql); @@ -187,6 +190,7 @@ class EmployeePolicyModel extends Model $client_id = $ref_data['client_id']; $client_policy_id = $ref_data['client_policy_id']; + $client_branch_id = $ref_data['client_branch_id']; $insurer_or_tpa = $ref_data['insurer_or_tpa']; $sql = " @@ -235,6 +239,7 @@ class EmployeePolicyModel extends Model AND batch_data.bl IS NULL AND employees.client_id = '{$client_id}' AND employee_polices.client_policy_id = '{$client_policy_id}' + AND employees.client_branch_id = '{$client_branch_id}' AND emp_endorsement.actions = 'c' AND (emp_endorsement.endorsement_id IS NULL OR emp_endorsement.endorsement_id = '')"; @@ -254,6 +259,7 @@ class EmployeePolicyModel extends Model $client_id = $ref_data['client_id']; $client_policy_id = $ref_data['client_policy_id']; + $client_branch_id = $ref_data['client_branch_id']; $insurer_or_tpa = $ref_data['insurer_or_tpa']; $query = $this->db->query(" @@ -344,6 +350,7 @@ class EmployeePolicyModel extends Model batch_data.bf IS NULL AND batch_data.bl IS NULL AND employee_polices.client_policy_id = '{$client_policy_id}' + AND employees.client_branch_id = '{$client_policy_id}' AND employee_polices.is_active = '1' AND (a.endorsement_id IS NULL OR a.endorsement_id = '') AND a.field_name = 'si_enhancement_date' @@ -361,10 +368,11 @@ class EmployeePolicyModel extends Model $client_id = $ref_data['client_id']; $client_policy_id = $ref_data['client_policy_id']; + $client_branch_id = $ref_data['client_branch_id']; $insurer_or_tpa = $ref_data['insurer_or_tpa']; $query = $this->db->query(" - SELECT + SELECT DISTINCT a.id as endorsement_primarykey, employee_polices.id as primaryKey, employees.name AS emp_name, @@ -435,6 +443,7 @@ class EmployeePolicyModel extends Model batch_data.bf IS NULL AND batch_data.bl IS NULL AND employee_polices.client_policy_id = {$client_policy_id} + AND employees.client_branch_id = {$client_branch_id} AND employee_polices.is_active = 1 AND (a.endorsement_id IS NULL OR a.endorsement_id = '') AND a.field_name = 'status' "); @@ -592,7 +601,7 @@ class EmployeePolicyModel extends Model } - public function getEmployeeEndorsementList($client_id, $policy_id, $status) + public function getEmployeeEndorsementList($client_id, $policy_id, $status, $branch_id) { $query1 = $this->db->table('emp_endorsement e'); $query1->select(' @@ -609,14 +618,16 @@ class EmployeePolicyModel extends Model insurers.short_name as insurer_short_name '); $query1->distinct(); - $query1->join('employee_polices ep', 'ep.id = e.pk', 'left'); - $query1->join('employees', 'employees.id = ep.employee_id', 'left'); - $query1->join('client_policy', 'client_policy.id = ep.client_policy_id', 'left'); - $query1->join('policies', 'policies.id = client_policy.policy_id', 'left'); - $query1->join('insurers', 'insurers.id = policies.insurer_id', 'left'); + $query1->join('employee_polices ep', 'ep.id = e.pk'); + $query1->join('employees', 'employees.id = ep.employee_id'); + $query1->join('client_policy', 'client_policy.id = ep.client_policy_id'); + $query1->join('client_branch', 'client_branch.id = employees.client_branch_id'); + $query1->join('policies', 'policies.id = client_policy.policy_id'); + $query1->join('insurers', 'insurers.id = policies.insurer_id'); $query1->whereIn('e.actions', ['c']); - $query1->where('ep.client_policy_id', $client_id); - $query1->where('employees.client_id', $policy_id); + $query1->where('ep.client_policy_id', $policy_id); + $query1->where('employees.client_id', $client_id); + $query1->where('employees.client_branch_id', $branch_id); if($status != 0 && !empty($status)){ $query1->where('e.status', $status); @@ -640,14 +651,16 @@ class EmployeePolicyModel extends Model policies.name as policy_name, insurers.short_name as insurer_short_name '); - $query2->join('employee_polices ep', 'ep.id = e.pk', 'left'); - $query2->join('employees', 'employees.id = ep.employee_id', 'left'); - $query2->join('client_policy', 'client_policy.id = ep.client_policy_id', 'left'); - $query2->join('policies', 'policies.id = client_policy.policy_id', 'left'); - $query2->join('insurers', 'insurers.id = policies.insurer_id', 'left'); + $query2->join('employee_polices ep', 'ep.id = e.pk'); + $query2->join('employees', 'employees.id = ep.employee_id'); + $query2->join('client_policy', 'client_policy.id = ep.client_policy_id'); + $query2->join('client_branch', 'client_branch.id = employees.client_branch_id'); + $query2->join('policies', 'policies.id = client_policy.policy_id'); + $query2->join('insurers', 'insurers.id = policies.insurer_id'); $query2->whereIn('e.actions', ['si', 'd']); - $query2->where('ep.client_policy_id', $client_id); + $query2->where('ep.client_policy_id', $policy_id); $query2->where('employees.client_id', $policy_id); + $query1->where('employees.client_branch_id', $branch_id); if($status != 0 && !empty($status)){ $query2->where('e.status', $status); @@ -769,6 +782,72 @@ class EmployeePolicyModel extends Model return $result; + } + + + public function getECardSingleData($rand_string, $emp_code){ + + $result = $this->db->table('employees e') + ->select('e.id, + e.name, e.mobile, + e.relationship, + e.relationship_code, + e.emp_code, + e.email_personal, + e.email_corporate, + e.gender, + e.dob, + e.doj, + e.band, + TIMESTAMPDIFF(YEAR, e.dob, CURDATE()) AS emp_age, + (SELECT name FROM employees WHERE relationship = "Self" and emp_code = ' . $this->db->escape($emp_code) . ') AS self, + + + ep.tpa_id, + ep.uhid, + ep.policy_end_date, + + clients.client_name, + clients.short_name AS client_short_name, + + cp.policy_start_date, + cp.policy_no, + + policies.name AS policy_name, + + insurers.name AS insurer_name, + insurers.short_name AS insurer_short_name, + insurers.insurer_logo, + + insurer_branch.branch_name, + insurer_branch.branch_code, + insurer_branch.city as insurer_branch_city, + + tpa.name AS tpa_name, + tpa.tpa_logo AS tpa_logo, + tpa.front_card, + tpa.back_card, + tpa.short_name AS tpa_short_name' + ) + + ->join('employee_polices ep', 'ep.employee_id = e.id') + ->join('client_policy cp', 'cp.id = ep.client_policy_id') + ->join('clients', 'clients.id = cp.client_id') + ->join('policies', 'policies.id = cp.policy_id') + ->join('insurers', 'insurers.id = cp.insurer_id') + ->join('insurer_branch', 'insurer_branch.id = cp.insurer_branch_id') + ->join('tpa', 'tpa.id = cp.tpa_id') + ->where("ep.tpa_id IS NOT NULL AND ep.tpa_id <> ''") + ->where('e.emp_status', 'active') + ->where('e.is_active', '1') + ->where('ep.status', 'active') + ->where('ep.is_active', '1') + ->where('ep.rand_string', $rand_string) + ->get() + ->getResultArray(); + + return $result; + } diff --git a/app/Models/FileModel.php b/app/Models/FileModel.php index aefbb419..51f397ec 100644 --- a/app/Models/FileModel.php +++ b/app/Models/FileModel.php @@ -17,7 +17,8 @@ class FileModel extends Model "reason", "action", "client_id", - "policy_id" + "policy_id", + "client_branch_id", ]; diff --git a/app/Models/MessageModel.php b/app/Models/MessageModel.php index eac21cbe..6f2256a3 100644 --- a/app/Models/MessageModel.php +++ b/app/Models/MessageModel.php @@ -69,6 +69,7 @@ class MessageModel extends Model $builder->orWhere('messages.role_id', $roleId); $builder->orWhere('messages.team_id', $teamId); $builder->groupEnd(); + $builder->orderBy('id', 'desc'); $query = $builder->get(); return $query->getResult(); diff --git a/app/Models/PolicyPremium2Model.php b/app/Models/PolicyPremium2Model.php index a03ca381..b302a53c 100644 --- a/app/Models/PolicyPremium2Model.php +++ b/app/Models/PolicyPremium2Model.php @@ -25,6 +25,8 @@ class PolicyPremium2Model extends Model 'is_active', 'premium_type', 'relationship', + 'additional_relationship', + 'rack_rate_type', ]; diff --git a/app/Views/batch_list.php b/app/Views/batch_list.php index 9e73bbd1..04b52ec6 100644 --- a/app/Views/batch_list.php +++ b/app/Views/batch_list.php @@ -25,6 +25,7 @@ Batch
Code File Name Client + Client
Branch Client Policy Event
Type Insurer/
TPA @@ -50,6 +51,7 @@ 5 ? substr($file['file_name'], 0, 10) . "..." : $file['file_name'] ?> + diff --git a/app/Views/client_deposit_list.php b/app/Views/client_deposit_list.php index fb1adc40..bb261f17 100644 --- a/app/Views/client_deposit_list.php +++ b/app/Views/client_deposit_list.php @@ -5,7 +5,7 @@
-

Client Deposit - +

Client Deposit -

diff --git a/app/Views/client_kyc.php b/app/Views/client_kyc.php index f53b7c16..6893b31c 100644 --- a/app/Views/client_kyc.php +++ b/app/Views/client_kyc.php @@ -51,7 +51,7 @@
- +
@@ -100,6 +100,7 @@ $(document).ready(function(){ kycPrimaryKey = $('#kyc_PrimaryKey').val(); + $('#others').hide() $('#other_docs_table').hide(); @@ -176,10 +177,10 @@ $('#name_'+item.kyc_doc_type_id).html(item.file_name); $('#form_'+item.kyc_doc_type_id).hide(); - console.log('step 1') + // console.log('step 1') if(item.file_name != null && item.file_name != ""){ - console.log('step 2') + // console.log('step 2') $('#download_'+item.kyc_doc_type_id).show(); $('#download_' + item.kyc_doc_type_id).attr('href', '' + item.file_name); @@ -187,14 +188,14 @@ } else{ - console.log('step 3') + // console.log('step 3') $('#download_'+item.kyc_doc_type_id).hide(); $('#download_' + item.kyc_doc_type_id).attr('href', '#'); $('#delete_'+item.kyc_doc_type_id).hide(); } - console.log('step 4') + // console.log('step 4') }); @@ -217,6 +218,9 @@ $('.loader').fadeIn(); $('.loader-mask').fadeIn(); + + + $.ajax({ url: '' + '', type: "GET", @@ -224,6 +228,7 @@ processData: false, contentType: false, success: function (res) { + setTimeout(function() { $('.loader').fadeOut(); $('.loader-mask').delay(350).fadeOut('slow'); @@ -270,9 +275,20 @@ var table = ''; var data = ; - console.log(data) + // console.log('other documents data', data) + + $('#other_docs tr').remove(); + + var other_docs_count = 0; + $.each(data, function(index, item) { + + if(item.other_docs_name != ""){ + + other_docs_count++; + } + if(item.kyc_doc_type_id == '0'){ table += ` @@ -288,6 +304,11 @@ } }); $('#other_docs').append(table); + + if(other_docs_count > 0){ + $('#others').show() + $('#other_docs_table').show(); + } $.each(data, function(index, item) { @@ -299,19 +320,17 @@ $('#name_'+item.kyc_doc_type_id).html(item.file_name); $('#form_'+item.kyc_doc_type_id).hide(); - console.log('step 1') + // console.log('step 1') if(item.file_name != null && item.file_name != ""){ - console.log('step 2') + // console.log('step 2') $('#download_'+item.kyc_doc_type_id).show(); $('#download_' + item.kyc_doc_type_id).attr('href', '' + item.file_name); $('#delete_'+item.kyc_doc_type_id).show(); - - } else{ - console.log('step 3') + // console.log('step 3') $('#download_'+item.kyc_doc_type_id).hide(); $('#download_' + item.kyc_doc_type_id).attr('href', '#'); @@ -319,7 +338,7 @@ } - console.log('step 4') + // console.log('step 4') }, 1000); @@ -369,7 +388,7 @@ $('.loader').fadeOut(); $('.loader-mask').delay(350).fadeOut('slow'); }, 1000); - console.log(res); + // console.log(res); $('#kyc_form').trigger('reset'); if(res){ setTimeout(function() { @@ -380,23 +399,36 @@ }, 500); } + var other_docs_count = 0; + $('#other_docs tr').remove(); $.each(res.data, function(index, item) { - console.log("Current item:", item); + + if(item.other_docs_name != ""){ + + other_docs_count++; + } + + // console.log("Current item:", item); if (item.kyc_doc_type_id == '0') { - console.log("Appending item:", item); + // console.log("Appending item:", item); var rowHtml = ` ${item.other_docs_name} ${item.file_name} - + `; } $('#other_docs').append(rowHtml); + + if(other_docs_count > 0){ + $('#others').show() + $('#other_docs_table').show(); + } }); }, error: function(xhr, status, error) { @@ -431,8 +463,8 @@ var kyc_id = $(this).attr('data-id'); $.get(''+kyc_id, function (data) { - console.log('kyc-'+ kyc_id) - console.log(data) + // console.log('kyc-'+ kyc_id) + // console.log(data) if(data){ $('#form_'+kyc_id).show(); $('#name_'+kyc_id).hide(); @@ -458,7 +490,7 @@ var kyc_id = $(this).attr('data-id'); $.get(''+kyc_id, function (data) { - console.log('kyc-'+ kyc_id) + // console.log('kyc-'+ kyc_id) if(data){ $('#kyc-'+ kyc_id).remove(); } @@ -468,30 +500,4 @@ }); - function validateForm() { - var isValid = true; - - - $('#kyc_form input, #kyc_form select').each(function() { - if ($(this).is('input[type="text"]') || $(this).is('select')) { - if ($.trim($(this).val()) == '') { - console.log('Please fill in all fields'); - isValid = false; - return false; - } - } - - if ($(this).is('input[type="file"]')) { - var fileInput = $(this)[0]; - if (fileInput.files.length === 0) { - console.log('Please select an image file'); - isValid = false; - return false; - } - } - }); - - return isValid; - } - \ No newline at end of file diff --git a/app/Views/client_policy.php b/app/Views/client_policy.php index bb6e8294..bb844432 100644 --- a/app/Views/client_policy.php +++ b/app/Views/client_policy.php @@ -2,8 +2,7 @@
- +
@@ -30,9 +29,7 @@
- +

@@ -42,34 +39,31 @@ - +
- +
- +
- - + +
@@ -99,8 +93,8 @@
@@ -109,24 +103,19 @@ @@ -146,10 +135,8 @@
- - + +
@@ -163,104 +150,104 @@ \ No newline at end of file diff --git a/app/Views/employee_list.php b/app/Views/employee_list.php index 22db6b78..479260a6 100644 --- a/app/Views/employee_list.php +++ b/app/Views/employee_list.php @@ -29,6 +29,15 @@ table.dataTable tbody td {
+ + +
+
+ +
+

@@ -80,6 +89,7 @@ $(document).ready(function() { // Initialize select2 $("#clients").select2(); $("#policies").select2(); + $("#branch_id").select2(); // if ($('.select2-selection__arrow').length > 0) { // $('.select2-selection__arrow').removeClass('select2-selection__arrow').addClass('fa fa-chevron-down'); @@ -88,7 +98,12 @@ $(document).ready(function() { // Declare a global variable to store API response data var clientPolicies = []; +var clientPoliciesWithBranch = { + policies: [] +}; var client_id = ''; +var client_branch_id = ''; + $(document).ready(function() { @@ -107,7 +122,7 @@ function fetchClientPolicies() { $('#loader').show(); var apiURL = '' + 'util/clients-with-policies'; console.log('fetchClientPolicies'); - console.log(apiURL); + // console.log(apiURL); $.ajax({ url: apiURL, method: 'GET', @@ -122,17 +137,42 @@ function fetchClientPolicies() { if (response.code === 200 && response.dataStatus === true && response.data !== "") { try { clientPolicies = (response.data); - console.log('1',clientPolicies); + + response.data.forEach(policy => { + // console.log('policies', policy.policies); + policy.policies.forEach(p => { + clientPoliciesWithBranch.policies.push(p); + }); + }); + + // console.log('1',clientPolicies); appendClients(clientPolicies); //this function for reselect the policy setTimeout(function() { if (client_id != 0 ) { var foundPolicies = clientPolicies.find(function(item) { - console.log(typeof item.id) + // console.log(typeof item.id) return item.id == client_id; }); - appendPolicies(foundPolicies.policies); + appendBranch(foundPolicies.branchs); + } + }, 500); + + setTimeout(function() { + if (client_branch_id != 0 ) { + + var foundPolicies = clientPoliciesWithBranch.policies.filter(function(item) { + // console.log('item', item); + return item.branch_id === client_branch_id; + }); + + if (foundPolicies) { + // console.log('foundPolicies', foundPolicies); + appendPolicies(foundPolicies); + } else { + console.log('No policies found for the selected client'); + } } }, 500); //end @@ -170,6 +210,26 @@ function appendClients(data) { } +function appendBranch(data) { + + $('#branch_id').empty(); + $('#branch_id').append($('
+
+
+ +
+

+
+ +
+

+ +
+
+ +
+

- $value) { ?> - + $value) { ?> +
@@ -59,9 +64,7 @@ table.dataTable tbody td {
@@ -84,8 +87,7 @@ table.dataTable tbody td {
- +
@@ -101,47 +103,45 @@ table.dataTable tbody td { - $employee) { ?> + $employee) { ?> - - - - - - - - - - - - + + + + + + + + + + + +
SNO
( ) - - - - ' . $employee['status'] . ''; - } elseif ($employee['status'] == 'inprogress') { - echo '' . $employee['status'] . ''; - } elseif ($employee['status'] == 'complete') { - echo '' . $employee['status'] . ''; - } - ?> - -
( ) + + + + ' . $employee['status'] . ''; + } elseif ($employee['status'] == 'inprogress') { + echo '' . $employee['status'] . ''; + } elseif ($employee['status'] == 'complete') { + echo '' . $employee['status'] . ''; + } + ?> + +
@@ -153,7 +153,7 @@ table.dataTable tbody td { -