diff --git a/.env.sample b/.env.sample index 6af188a4..b3f6111e 100644 --- a/.env.sample +++ b/.env.sample @@ -14,13 +14,14 @@ # ENVIRONMENT #-------------------------------------------------------------------- -CI_ENVIRONMENT = development +# CI_ENVIRONMENT = development #-------------------------------------------------------------------- # APP #-------------------------------------------------------------------- -app.baseURL = 'http://localhost/nhance/' +app.baseURL = 'http://localhost/client_changes/nhance/' +app.appTimezone = 'Asia/Kolkata' # If you have trouble with `.`, you could also use `_`. # app_baseURL = '' # app.forceGlobalSecureRequests = false @@ -31,19 +32,74 @@ app.baseURL = 'http://localhost/nhance/' #-------------------------------------------------------------------- +# Dev DB Connection database.default.hostname = 119.18.54.85 database.default.database = venbaehn_nhance database.default.username = venbaehn_nhance_user1 database.default.password = 'iM~X7(cR+}A-' +database.default.DBDriver = MySQLi +database.default.DBPrefix = +database.default.port = 3306 + +database.tests.hostname = 119.18.54.85 +database.tests.database = venbaehn_nhance +database.tests.username = venbaehn_nhance_user1 +database.tests.password = 'iM~X7(cR+}A-' +database.tests.DBDriver = MySQLi +database.tests.DBPrefix = +database.tests.port = 3306 + +# Test DB Connection + +# database.default.hostname = 119.18.54.85 +# database.default.database = venbaehn_nhance_test +# database.default.username = venbaehn_nhance_user1 +# database.default.password = 'iM~X7(cR+}A-' # database.default.DBDriver = MySQLi # database.default.DBPrefix = # database.default.port = 3306 -database.default.hostname = 119.18.54.85 -database.default.database = venbaehn_nhance -database.default.username = venbaehn_nhance_user1 -database.default.password = 'iM~X7(cR+}A-' +# database.tests.hostname = 119.18.54.85 +# database.tests.database = venbaehn_nhance_test +# database.tests.username = venbaehn_nhance_user1 +# database.tests.password = 'iM~X7(cR+}A-' +# database.tests.DBDriver = MySQLi +# database.tests.DBPrefix = +# database.tests.port = 3306 + +# UAT DB Connection + +# database.default.hostname = 119.18.54.85 +# database.default.database = venbaehn_nhance_uat +# database.default.username = venbaehn_nhance_user1 +# database.default.password = 'iM~X7(cR+}A-' +# database.default.DBDriver = MySQLi +# database.default.DBPrefix = +# database.default.port = 3306 + +# database.tests.hostname = 119.18.54.85 +# database.tests.database = venbaehn_nhance_uat +# database.tests.username = venbaehn_nhance_user1 +# database.tests.password = 'iM~X7(cR+}A-' +# database.tests.DBDriver = MySQLi +# database.tests.DBPrefix = +# database.tests.port = 3306 + +# Local PhpMyAdmin DB Connection + +# database.default.hostname = localhost +# database.default.database = nhance +# database.default.username = root +# database.default.password = '' +# database.default.DBDriver = MySQLi +# database.default.DBPrefix = +# database.default.port = 3306 + +# database.tests.hostname = localhost +# database.tests.database = nhance +# database.tests.username = root +# database.tests.password = '' # database.tests.DBDriver = MySQLi # database.tests.DBPrefix = # database.tests.port = 3306 @@ -125,12 +181,12 @@ database.default.password = 'iM~X7(cR+}A-' #-------------------------------------------------------------------- # session.driver = 'CodeIgniter\Session\Handlers\FileHandler' -# session.cookieName = 'ci_session' -# session.expiration = 7200 +session.cookieName = 'ci_session_dev' +session.expiration = 86400 # session.savePath = null # session.matchIP = false -# session.timeToUpdate = 300 -# session.regenerateDestroy = false +session.timeToUpdate = 300 +session.regenerateDestroy = true #-------------------------------------------------------------------- # LOGGER @@ -151,5 +207,10 @@ database.default.password = 'iM~X7(cR+}A-' GOOGLE_OAUTH_APP_NAME = 'OAuth' GOOGLE_OAUTH_CLIENT_ID = '696241936560-m2mr272ge7vr2n4q36c22l3d2gdgi90l.apps.googleusercontent.com' GOOGLE_OAUTH_CLIENT_SECRET = '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' -GOOGLE_OAUTH_REDIRECT_URI = 'http://localhost/nhance/oauth2callback' +GOOGLE_OAUTH_REDIRECT_URI = 'http://localhost/client_changes/nhance/oauth2callback' GOOGLE_OAUTH_SCOPES = "https://www.googleapis.com/auth/userinfo.email,https://www.googleapis.com/auth/userinfo.profile" + + +App_Url = https://venbait.in/nhance/app/dev/ +POST_ENROLLMENT_APP_LINK = https://venbait.in/nhance/employee/dev/ +NHANCE_LOGO = https://venbait.in/nhance/dev/public/assets/images/Nhance_Favi.png \ No newline at end of file diff --git a/app/Config/Routes.php b/app/Config/Routes.php index a0dd7be7..9e8fd8e1 100644 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -16,6 +16,8 @@ $routes->get("testing", "ClientController::Testing"); $routes->get("update-policy-terms-for-corrections", "ClientController::updatePolicyTermsForCorrections"); $routes->get("update_rack_rate_json", "ClientController::updateRackRateJson"); $routes->get("updatajson", "EmpDataServiceController::updatajson"); +$routes->get("view", "EmployeeController::viewECard/$1"); + $routes->post("add_advertise_image", "AppContentManagementController::add_advertise_image"); @@ -109,6 +111,7 @@ $routes->group("/client", ["filter" => "authMVC"], function ($routes) { $routes->get("list/(:any)", "ClientController::getClientPolicyById/$1"); $routes->post("policyGMCTerms", "ClientController::policyGMCTerms"); $routes->get("getterms", "ClientController::getterms"); + $routes->get("remove/(:any)", "ClientController::removePolicy/$1"); }); $routes->group("kyc", ["filter" => "authMVC"], function ($routes) { @@ -252,7 +255,6 @@ $routes->group("/util", ["filter" => "authMVC"], function ($routes) { $routes->get("fetch-emp-count/(:any)", "EmployeeController::getEmpCount/$1"); $routes->get("init-Emp-onboard/(:any)", "EmployeeController::initiateManualEmployeesOnboardProcess/$1"); $routes->get("full-excel-error-file/(:any)", "EmployeeController::downloadFullExcelErrorFile/$1"); - $routes->get("id-card", "EmployeeController::viewECard/$1"); $routes->get("preview-card/(:any)", "EmployeeController::previewTemplate/$1"); $routes->get("export-import-error-list/(:any)", "EmployeeController::errorListExportImport/$1"); $routes->get("has_policy_config_completed/(:any)", "EmployeeController::hasPolicyConfigCompleted/$1"); @@ -268,6 +270,8 @@ $routes->group("/util", ["filter" => "authMVC"], function ($routes) { $routes->get("check_addition_premium_JSON/(:any)", "ClientController::checkAdditionPremiumJSON/$1"); $routes->get("get_policy_type_for_base_policy/(:any)", "ClientController::getPolicyTypeForBasePolicy/$1"); $routes->get("get_client_details/(:any)", "ClientController::getClientDetails/$1"); + $routes->get("featch_dashboard_data/(:any)", "DashboardController::featch_dashboard_data/$1"); + $routes->get("remove_rack_rate/(:any)", "ClientController::removeRackRate/$1"); }); $routes->cli('cli/processjob', 'JobWorker::processJob'); diff --git a/app/Controllers/ClientController.php b/app/Controllers/ClientController.php index 7b694d78..e6f61eb0 100644 --- a/app/Controllers/ClientController.php +++ b/app/Controllers/ClientController.php @@ -229,15 +229,24 @@ class ClientController extends AdminController public function removeClient($id = null) { $this->myLogger->logme('error','Client Remove function called'); - // $data = $this->request->getPost(); - $data['updated_by'] = get_session_userid(); - $data['is_active'] = 0; - $update = $this->clientModel->update($id,$data); - if($update){ + + $client_policy_data = $this->clientPolicyModel + ->where('policy_status', 1) + ->where('Is_active', 1) + ->where('client_id', $id) + ->countAllResults(); + if($client_policy_data == 0){ + + $data['updated_by'] = get_session_userid(); + $data['is_active'] = 0; + $update = $this->clientModel->update($id,$data); return $this->respond(['status' => true,'code' => 200], 200); + }else{ - return $this->respond(['status' => false,'code' => 404], 200); + + return $this->respond(['status' => false,'code' => 404, 'message' => 'The Client has active policy'], 200); } + } public function removeClientBranch($id = null) @@ -319,6 +328,7 @@ class ClientController extends AdminController 5 => 'Non EB', 6 => 'Refund By Insurer', 7 => 'Opening Amount', + 8 => 'Truncated', ]; $data['subTypeOptions'] = $subTypeOptions; @@ -411,6 +421,7 @@ class ClientController extends AdminController } $editData['client_policy'] = $clientPoliceData; + $editData['client_policy']['role'] = get_role_id(); $editData['notification'] =$this->notificationModel->select('template_name,enabled')->where('client_id',$id)->findAll(); $editData['placeHolders'] = ['member_name','nhance_logo','tpa_id','ecard_download_link', 'client_logo', 'policy_no', 'member_summary', 'app_link', 'post_enrollment_app_link', 'client_name']; @@ -757,8 +768,8 @@ class ClientController extends AdminController $data['no_of_lives'] = $this->request->getPost('no_of_lives'); $data['policy_status'] = $this->request->getPost('policy_status'); $data['no_of_employees'] = $this->request->getPost('no_of_employees'); - $data['earned_premium_date'] = change_date_format($this->request->getPost('earned_premium_date'), 'd-m-Y', 'Y-m-d'); - $data['claims_incurred_date'] = change_date_format($this->request->getPost('claims_incurred_date'), 'd-m-Y', 'Y-m-d'); + $data['earned_premium_date'] = change_date_format($this->request->getPost('earned_premium_date'), 'd-m-Y', 'Y-m-d') ?? null; + $data['claims_incurred_date'] = change_date_format($this->request->getPost('claims_incurred_date'), 'd-m-Y', 'Y-m-d') ?? null; $data['incurred_claims_ratio'] = $this->request->getPost('incurred_claims_ratio'); $data['no_lives_at_inception'] = $this->request->getPost('no_lives_at_inception'); $data['premium_paid_at_inception'] = $this->request->getPost('premium_paid_at_inception'); @@ -833,6 +844,7 @@ class ClientController extends AdminController $insert = $this->clientPolicyModel->insert($data); if($insert){ $clientPoliceData = $this->clientPolicyModel->getClientPolicyByClientId($this->request->getPost('client_id')); + $clientPoliceData['role'] = get_role_id(); return $this->respond(['status' => true,'code' => 200,'data' => $clientPoliceData, 'method' => 'CERATE', 'post_data' => $data], 200); }else{ return $this->respond(['status' => false,'code' => 404, 'message' => 'no data found'], 200); @@ -870,8 +882,8 @@ class ClientController extends AdminController $data['no_of_lives'] = $this->request->getPost('no_of_lives'); $data['policy_status'] = $this->request->getPost('policy_status'); $data['no_of_employees'] = $this->request->getPost('no_of_employees'); - $data['earned_premium_date'] = change_date_format($this->request->getPost('earned_premium_date'), 'd-m-Y', 'Y-m-d'); - $data['claims_incurred_date'] = change_date_format($this->request->getPost('claims_incurred_date'), 'd-m-Y', 'Y-m-d'); + $data['earned_premium_date'] = change_date_format($this->request->getPost('earned_premium_date'), 'd-m-Y', 'Y-m-d') ?? null; + $data['claims_incurred_date'] = change_date_format($this->request->getPost('claims_incurred_date'), 'd-m-Y', 'Y-m-d') ?? null; $data['incurred_claims_ratio'] = $this->request->getPost('incurred_claims_ratio'); $data['no_lives_at_inception'] = $this->request->getPost('no_lives_at_inception'); $data['premium_paid_at_inception'] = $this->request->getPost('premium_paid_at_inception'); @@ -937,7 +949,7 @@ class ClientController extends AdminController // dd($data); $data['updated_by'] = get_session_userid(); - // print_r($data);die; + // print_r(json_encode($data));die; $insert = $this->clientPolicyModel->update($id,$data); $lastQuery = $this->clientPolicyModel->getLastQuery(); @@ -946,7 +958,7 @@ class ClientController extends AdminController if($insert){ $clientPoliceData = $this->clientPolicyModel->getClientPolicyByClientId($client_id); - + $clientPoliceData['role'] = get_role_id(); // foreach ($clientPoliceData as $key => $value) { // $clientPoliceData[$key]->policy_start_date = date('d-M-Y', strtotime($value->policy_start_date)); @@ -958,6 +970,41 @@ class ClientController extends AdminController } } + public function removePolicy($id = null) + { + $this->myLogger->logme('error', 'Client Policy Remove function called'); + + $data = [ + 'updated_by' => get_session_userid(), + 'is_active' => 0 + ]; + + $emp_details = $this->employeePolicyModel + ->join('employees', 'employees.id = employee_polices.employee_id') + ->where('client_policy_id', $id) + ->where('employee_polices.status', 'active') + ->where('employee_polices.is_active', 1) + ->where('employees.emp_status', 'active') + ->where('employees.is_active', 1) + ->countAllResults(); + if($emp_details == 0){ + + $update = $this->clientPolicyModel->where('id', $id)->set($data)->update(); + + if ($update) { + return $this->respond(['status' => true, 'code' => 200], 200); + } else { + return $this->respond(['status' => false, 'code' => 404, 'message' => 'Failed to remove policy'], 200); + } + + }else{ + + return $this->respond(['status' => false, 'code' => 404, 'message' => 'The policy has active employees'], 200); + + } + + } + public function createClientPolicyPremium() { @@ -1715,10 +1762,12 @@ class ClientController extends AdminController $data['family_floaters']['parents-in-law'] =2; $data['family_floaters']['either-parents-pil'] =0; }else if($temp_family_floaters[$value] == '2EPORPIL'){ + //Parents or PIL (Any two of Father, Mother, MIl, FIL) $data['family_floaters']['parents'] =0; $data['family_floaters']['parents-in-law'] =0; $data['family_floaters']['either-parents-pil'] =2; }else if($temp_family_floaters[$value] == 'EPORPIL'){ + //Either Parents or PIL (Parents or Parents In Law) $data['family_floaters']['parents'] =0; $data['family_floaters']['parents-in-law'] =0; $data['family_floaters']['either-parents-pil'] =1; @@ -2117,7 +2166,8 @@ class ClientController extends AdminController } } - public function getClientBranch($client_id){ + public function getClientBranch($client_id) + { $branchs = $this->clientBranchModel ->select('*') @@ -2125,8 +2175,6 @@ class ClientController extends AdminController ->findAll(); return $this->respond(['status' => true,'code' => 200, 'data' => $branchs], 200); - - } public function getClientAllDetailsByUsingClientID($client_id) @@ -2136,7 +2184,7 @@ class ClientController extends AdminController $builder = $db->table('clients'); $builder->select(' - policies.name as policy_name, + policy_type.policy_type, insurers.name as insurer_name, insurers.short_name as insurer_short_name, @@ -2150,9 +2198,9 @@ class ClientController extends AdminController CASE WHEN client_policy.base_policy IS NULL THEN "Not Appear" WHEN client_policy.base_policy = 0 THEN "Not Appear" - ELSE (SELECT policies.name + ELSE (SELECT policy_type.policy_type FROM client_policy AS base_client_policy - JOIN policies ON policies.id = base_client_policy.policy_id + JOIN policy_type ON policy_type.id = base_client_policy.policy_type_id WHERE base_client_policy.id = client_policy.base_policy) END as base_policy_name, @@ -2185,13 +2233,11 @@ class ClientController extends AdminController ', false); $builder->join('client_policy', 'client_policy.client_id = clients.id'); $builder->join('client_branch', 'client_policy.client_branch_id = client_branch.id'); - $builder->join('policies', 'policies.id = client_policy.policy_id'); - $builder->join('policy_type', 'policy_type.id = policies.policy_type_id'); + $builder->join('policy_type', 'policy_type.id = client_policy.policy_type_id'); $builder->join('insurers', 'insurers.id = client_policy.insurer_id'); $builder->join('tpa', 'tpa.id = client_policy.tpa_id'); $builder->where('clients.is_active', 1); $builder->where('client_policy.is_active', 1); - $builder->where('policies.is_active', 1); $builder->where('policy_type.is_active', 1); $builder->where('client_policy.policy_status', 1); $builder->where('clients.id', $client_id); @@ -2281,8 +2327,6 @@ class ClientController extends AdminController } - - $data['client_policy'] = $client_policy; $data['client_branch'] = $this->clientModel @@ -2306,10 +2350,7 @@ class ClientController extends AdminController ->get()->getResultArray(); - $data['client'] = $this->clientModel - ->select('clients.*, states.state as state') - ->join('states', 'states.id = clients.state') - ->where('clients.id', $client_id)->first(); + $data['client'] = $this->clientModel->where('clients.id', $client_id)->first(); $client_rm = $this->clientRMModel @@ -2337,7 +2378,7 @@ class ClientController extends AdminController $data['heads'] = $heads; // dd($data); - //$this->loadLayout('client_info', $data); + // $this->loadLayout('client_info', $data); $html = view('client_info', $data); @@ -2645,7 +2686,7 @@ class ClientController extends AdminController public function updateRackRateJson() { - // $client_policy_id = 13; + // $client_policy_id = 12; $results = $this->policyPremium2Model ->select('*') @@ -2664,6 +2705,7 @@ class ClientController extends AdminController ->get() ->getResultArray(); + // dd($results, $results2); $client_policy_ids = []; $json = []; @@ -2740,7 +2782,9 @@ class ClientController extends AdminController $client_policy_id = $result['client_policy_id']; $client_policy_data = $this->clientPolicyModel->where('id', $client_policy_id)->first(); - if($client_policy_data['policy_terms']){ + // dd($client_policy_data); + + if(isset($client_policy_data) && $client_policy_data['policy_terms']){ $self = 1; $spouse = 'NA'; @@ -2784,4 +2828,38 @@ class ClientController extends AdminController } + + public function removeRackRate($rack_rate_name = null, $client_policy_id = null) + { + $this->myLogger->logme('error', 'Rack Rate Remove function called'); + + $data = [ + 'updated_by' => get_session_userid(), + 'is_active' => 0 + ]; + + $rackRateData = $this->policyPremium2Model + ->where('rack_rate_name', $rack_rate_name) + ->where('client_policy_id', $client_policy_id) + ->where('is_active',1) + ->countAllResults(); + + if($rackRateData > 0){ + $update = $this->policyPremium2Model + ->where('rack_rate_name', $rack_rate_name) + ->where('client_policy_id', $client_policy_id) + ->set($data)->update(); + + if ($update) { + return $this->respond(['status' => true, 'code' => 200, 'message' => 'Rack Rate removed successfully', 'rr_count' => $rackRateData], 200); + } else { + return $this->respond(['status' => false, 'code' => 404, 'message' => 'Failed to remove policy', 'rr_count' => $rackRateData], 200); + } + }else{ + + return $this->respond(['status' => false, 'code' => 404, 'message' => 'Rack Rate not available', 'rr_count' => $rackRateData], 200); + } + + } + } \ No newline at end of file diff --git a/app/Controllers/DashboardController.php b/app/Controllers/DashboardController.php index da5e1ac6..b1ed384e 100644 --- a/app/Controllers/DashboardController.php +++ b/app/Controllers/DashboardController.php @@ -18,16 +18,17 @@ use App\Models\JobModel; use App\Models\ClientPolicyModel; use App\Models\NotificationModel; use App\Models\EmployeePolicyModel; +use App\Controllers\PendingActionsContrller; class DashboardController extends AdminController { - + use ResponseTrait; protected $messageModel; protected $clientModel; protected $userMessageModel; protected $myLogger; - + public function __construct() { set_session_context('Dashboard'); @@ -53,6 +54,19 @@ class DashboardController extends AdminController ->join('auth_history', 'employees.id = auth_history.user_id AND "employee" = auth_history.user_type', 'left') ->findAll(); + $pendingActionsController = new PendingActionsController; + $pendingActionsData = $pendingActionsController->getPendingActionsForDashBoard(); + + $results = $this->clientModel->select('clients.id as client_id, clients.client_name, clients.short_name, + client_branch.id as client_branch_id, client_branch.branch_name, + client_branch.branch_code, employees.id as employee_id, + employees.name as employee_name, employees.relationship, + employees.emp_code, employees.emp_status, auth_history.user_type') + ->join('client_branch', 'clients.id = client_branch.client_id', 'left') + ->join('employees', 'client_branch.id = employees.client_branch_id', 'left') + ->join('auth_history', 'employees.id = auth_history.user_id AND "employee" = auth_history.user_type', 'left') + ->findAll(); + $groupedData = []; foreach ($results as $row) { @@ -62,15 +76,21 @@ class DashboardController extends AdminController $branchId = $row['client_branch_id']; $branchName = $row['branch_name']; $branchCode = $row['branch_code']; - $employeeId = $row['employee_id']; - $employeeName = $row['employee_name']; - $employeeRelationship = $row['relationship']; - $employeeEmpCode = $row['emp_code']; - $employeeEmpStatus = $row['emp_status']; - $employeeUserType = $row['user_type']; + $clientPolicyId = $row['client_policy_id']; $policyTypeId = $row['policy_type_id']; - + $employeeId =''; + if ($employeeId != $row['employee_id']) { + $employeeId = $row['employee_id']; + } else { + $employeeId = null; + } + $employeeName = $row['employee_name']; + $employeeRelationship = $row['relationship']; + $employeeEmpCode = $row['emp_code']; + $employeeEmpStatus = $row['emp_status']; + $employeeUserType = $row['user_type']; + // Initialize the client entry if it doesn't exist if (!isset($groupedData[$clientId])) { $groupedData[$clientId] = [ @@ -80,7 +100,7 @@ class DashboardController extends AdminController 'branches' => [] ]; } - + // Initialize the branch entry if it doesn't exist if (!isset($groupedData[$clientId]['branches'][$branchId])) { $groupedData[$clientId]['branches'][$branchId] = [ @@ -116,14 +136,14 @@ class DashboardController extends AdminController if (!empty($employeeUserType)) { $groupedData[$clientId]['branches'][$branchId]['emp_login']++; } - + // Increment emp_enroll if emp_status is not 'draft' if ($employeeEmpStatus !== 'draft') { $groupedData[$clientId]['branches'][$branchId]['emp_enroll']++; } } } - + // Re-index the arrays to match the expected structure foreach ($groupedData as &$client) { foreach ($client['branches'] as &$branch) { @@ -136,6 +156,7 @@ class DashboardController extends AdminController $session = \Config\Services::session(); $session->set('enrollment_data', json_encode($data)); // echo "
";
+ $data['pendingActionsData'] = $pendingActionsData;
// print_r($data);die;
@@ -154,7 +175,7 @@ class DashboardController extends AdminController
$userId = get_session_userid();
$roleId = 5;
$teamId = 1;
-
+
if ($userId != null && $roleId != null && $teamId != null) {
$messages = $this->messageModel->getMessagesForUser($userId, $roleId, $teamId);
return $this->respond(['status' => true, 'code' => 200, 'message' => $messages], 200);
@@ -163,7 +184,7 @@ class DashboardController extends AdminController
return $this->respond(['status' => false, 'code' => 404, 'message' => 'No data found'], 200);
}
}
-
+
public function acknowledgeMessage($messageId)
{
@@ -258,4 +279,41 @@ class DashboardController extends AdminController
return json_encode(true);
}
+ public function featch_dashboard_data($type)
+ {
+ $pendingActionsController = new PendingActionsController;
+ $pendingActionsData = $pendingActionsController->getPendingActionsForClientData();
+
+ $data = [];
+
+ if($type == 'insurer'){
+
+ $data = $pendingActionsData['uhid'];
+
+ }else if($type == 'TPA'){
+ $data = $pendingActionsData['tpa'];
+
+ }else if($type == 'I'){
+ $data = $pendingActionsData['inception'];
+
+ }else if($type == 'D'){
+ $data = $pendingActionsData['deletion'];
+
+ }else if($type == 'C'){
+ $data = $pendingActionsData['correction'];
+
+ }else if($type == 'SI'){
+ $data = $pendingActionsData['si_enhancement'];
+
+ }else if($type == 'policy'){
+ $data = $pendingActionsData['policy'];
+
+ }else if($type == 'ticket'){
+ $data = $pendingActionsData['uhid'];
+ }
+
+ return $this->respond(['status' => true, 'data' => $data], 200);
+ }
+
+
}
diff --git a/app/Controllers/EmpDataServiceController.php b/app/Controllers/EmpDataServiceController.php
index 2fbd2d09..2df33a79 100644
--- a/app/Controllers/EmpDataServiceController.php
+++ b/app/Controllers/EmpDataServiceController.php
@@ -26,6 +26,7 @@ use App\Models\MessageModel;
use App\Models\UserMessageModel;
use App\Models\CDMasterModel;
use App\Models\InsurerExcelExportTemplateModel;
+use App\Models\ClientBranchModel;
use App\Controllers\Jobs;
use App\Controllers\JobWorker;
@@ -56,6 +57,7 @@ class EmpDataServiceController extends BaseController
protected $userMessageModel;
protected $CDMasterModel;
protected $excelExportTemplateModel;
+ protected $clientBranchModel;
public function __construct()
@@ -77,6 +79,7 @@ class EmpDataServiceController extends BaseController
$this->userMessageModel = new UserMessageModel();
$this->CDMasterModel = new CDMasterModel();
$this->excelExportTemplateModel = new InsurerExcelExportTemplateModel();
+ $this->clientBranchModel = new ClientBranchModel();
}
@@ -1785,7 +1788,7 @@ class EmpDataServiceController extends BaseController
'endorsement_no' => null,
'client_branch_id' => $client_branch_id,
'count' => $emp_count,
- 'event' => $file['event_type'],
+ 'event_name' => $file['event_type'],
'policy_name' => $policy_name['policy_name'],
'user_id' => $user_id,
]]);
@@ -2830,7 +2833,7 @@ class EmpDataServiceController extends BaseController
'cd_ac_no' => $CD_Account_Number['cd_ac_no'] ?? null,
'endorsement_no' => $endorsement_id ?? null,
'count' => $emp_count,
- 'event' => $file['event_type'],
+ 'event_name' => $file['event_type'],
'policy_name' => $policy_name['policy_name'],
'user_id' => $user_id,
]]);
@@ -3345,7 +3348,7 @@ class EmpDataServiceController extends BaseController
'cd_ac_no' => $CD_Account_Number['cd_ac_no'] ?? null,
'endorsement_no' => $endorsement_id ?? null,
'count' => $emp_count,
- 'event' => $file['event_type'],
+ 'event_name' => $file['event_type'],
'policy_name' => $policy_name['policy_name'],
'user_id' => $user_id,
]]);
@@ -3770,38 +3773,52 @@ class EmpDataServiceController extends BaseController
{
if (!empty($arrayData)) {
- $amount = $this->employeePolicyModel->query("
- SELECT SUM(rata_premimum + gst) AS total_sum
- FROM employee_polices
- WHERE id IN (" . implode(',', $arrayData['employeeIds']) . ")
- ")->getRow();
- $insurer_id = $this->clientPolicyModel->where('id', $arrayData['client_policy_id'])->first();
- $description = 'The following amount of Rs. ' . round($amount->total_sum, 2) . '/- has been debited for the ' . $arrayData['count'] . ' employees at ' . remove_underscore_capitalize_first_letter($arrayData['event']) . ' to ' . remove_underscore_capitalize_first_letter($arrayData['policy_name']) . '.';
-
- if(get_session_userid() == null){
+ $client_branch_data = $this->clientBranchModel->where('id', $arrayData['client_branch_id'])->first();
+ $units = json_decode($client_branch_data['units']);
+
+ // dd(json_decode($client_branch_data['units']));
+
+
+ foreach($units as $unit)
+ {
+
+ $amount = $this->employeePolicyModel->query("
+ SELECT SUM(rata_premimum + gst) AS total_sum
+ FROM employee_polices
+ JOIN employees ON employees.id = employee_polices.employee_id
+ WHERE employees.unit = '$unit'
+ AND employee_polices.id IN (" . implode(',', $arrayData['employeeIds']) . ")
+ ")->getRow();
+
+ if($amount){
+
+ $insurer_id = $this->clientPolicyModel->where('id', $arrayData['client_policy_id'])->first();
+ $description = 'The following amount of Rs. ' . round($amount->total_sum, 2) . '/- has been debited for the ' . $arrayData['count'] . ' employees at ' . remove_underscore_capitalize_first_letter($arrayData['event_name']) . ' to ' . remove_underscore_capitalize_first_letter($arrayData['policy_name']) . '.';
+
+ $data = [
+ 'amount' => $amount->total_sum ?? 0,
+ 'sub_type_id' => 4,
+ 'client_id' => $arrayData['client_id'],
+ 'client_policy_id' => $arrayData['client_policy_id'],
+ 'endorsement_no' => $arrayData['endorsement_no'] ?? null,
+ 'cd_ac_no' => $arrayData['cd_ac_no'] ?? null,
+ 'insurer_id' => $insurer_id['insurer_id'],
+ 'unit' => $unit,
+ 'description' => $description,
+ 'transaction_type' => 'Debit',
+ 'updated_by' => $arrayData['user_id'],
+ 'event_name' => $arrayData['event_name'],
+ 'is_active' => 1,
+ ];
+
+ $response = DepositHelper::saveDeposit($data, $arrayData['user_id']);
+ }
}
-
- $data = [
- 'amount' => $amount->total_sum ?? 0,
- 'sub_type_id' => 4,
- 'client_id' => $arrayData['client_id'],
- 'client_policy_id' => $arrayData['client_policy_id'],
- 'endorsement_no' => $arrayData['endorsement_no'] ?? null,
- 'cd_ac_no' => $arrayData['cd_ac_no'] ?? null,
- 'insurer_id' => $insurer_id['insurer_id'],
- 'description' => $description,
- 'transaction_type' => 'Debit',
- 'updated_by' => $arrayData['user_id'],
- 'is_active' => 1,
- ];
- $response = DepositHelper::saveDeposit($data, $arrayData['user_id']);
return true;
- // print_r($response);
- // $query = $this->employeePolicyModel->getLastQuery();
- // echo $query . "
";
+
} else {
return 0;
@@ -3815,32 +3832,49 @@ class EmpDataServiceController extends BaseController
if (!empty($arrayData)) {
- $amount = $this->employeePolicyModel->query("
- SELECT SUM(rata_premimum + gst) AS total_sum
- FROM employee_polices
- WHERE id IN (" . implode(',', $arrayData['employeeIds']) . ")
- ")->getRow();
+ $client_branch_data = $this->clientBranchModel->where('id', $arrayData['client_branch_id'])->first();
+ $units = json_decode($client_branch_data['units']);
- $insurer_id = $this->clientPolicyModel->where('id', $arrayData['client_policy_id'])->first();
- $description = 'The following amount of ' . round($amount->total_sum, 2) . ' has been credited for the ' . $arrayData['count'] . ' employees at ' . remove_underscore_capitalize_first_letter($arrayData['event']) . ' to ' . remove_underscore_capitalize_first_letter($arrayData['policy_name']) . '.';
+ foreach($units as $unit)
+ {
- $data = [
+ $amount = $this->employeePolicyModel->query("
+ SELECT SUM(rata_premimum + gst) AS total_sum
+ FROM employee_polices
+ JOIN employees ON employees.id = employee_polices.employee_id
+ WHERE employees.unit = '$unit'
+ AND id IN (" . implode(',', $arrayData['employeeIds']) . ")
+ ")->getRow();
+
+ if($amount){
+
+ $insurer_id = $this->clientPolicyModel->where('id', $arrayData['client_policy_id'])->first();
+ $description = 'The following amount of ' . round($amount->total_sum, 2) . ' has been credited for the ' . $arrayData['count'] . ' employees at ' . remove_underscore_capitalize_first_letter($arrayData['event_name']) . ' to ' . remove_underscore_capitalize_first_letter($arrayData['policy_name']) . '.';
+
+ $data = [
+
+ 'amount' => $amount->total_sum,
+ 'sub_type_id' => 4,
+ 'client_id' => $arrayData['client_id'],
+ 'client_policy_id' => $arrayData['client_policy_id'],
+ 'endorsement_no' => $arrayData['endorsement_no'] ?? null,
+ 'cd_ac_no' => $arrayData['cd_ac_no'] ?? null,
+ 'insurer_id' => $insurer_id['insurer_id'],
+ 'unit' => $unit,
+ 'description' => $description,
+ 'transaction_type' => 'Debit',
+ 'updated_by' => $arrayData['user_id'],
+ 'event_name' => $arrayData['event_name'],
+ 'is_active' => 1,
+ ];
+
+ $response = DepositHelper::saveDeposit($data, $arrayData['user_id']);
+ }
+ }
+
+ $msg = "SI Enhancement Cash Deposite Updated Successfully ";
+ return [$msg];
- 'amount' => $amount->total_sum,
- 'sub_type_id' => 4,
- 'client_id' => $arrayData['client_id'],
- 'client_policy_id' => $arrayData['client_policy_id'],
- 'endorsement_no' => $arrayData['endorsement_no'] ?? null,
- 'cd_ac_no' => $arrayData['cd_ac_no'] ?? null,
- 'insurer_id' => $insurer_id['insurer_id'],
- 'description' => $description,
- 'transaction_type' => 'Debit',
- 'updated_by' => $arrayData['user_id'],
- 'is_active' => 1,
- ];
- $response = DepositHelper::saveDeposit($data, $arrayData['user_id']);
- $msg = "SI Enhancement Cash Deposite Updated Successfully -- " . $description;
- return [$msg, $response];
// print_r($response);
// $query = $this->employeePolicyModel->getLastQuery();
// echo $query . "
";
@@ -3858,34 +3892,46 @@ class EmpDataServiceController extends BaseController
// echo '';
// print_r($arrayData); die;
- $amount = $this->employeePolicyModel->query("
- SELECT SUM(rata_premimum + gst) AS total_sum
- FROM employee_polices
- WHERE id IN (" . implode(',', $arrayData['employeeIds']) . ")
- ")->getRow();
- $insurer_id = $this->clientPolicyModel->where('id', $arrayData['client_policy_id'])->first();
- $description = 'The following amount of ' . round($amount->total_sum, 2) . ' has been credited for the ' . $arrayData['count'] . ' employees at ' . remove_underscore_capitalize_first_letter($arrayData['event']) . ' to ' . remove_underscore_capitalize_first_letter($arrayData['policy_name']) . '.';
+ $client_branch_data = $this->clientBranchModel->where('id', $arrayData['client_branch_id'])->first();
+ $units = json_decode($client_branch_data['units']);
- $data = [
+ foreach($units as $unit) {
- 'amount' => $amount->total_sum,
- 'sub_type_id' => 3,
- 'client_id' => $arrayData['client_id'],
- 'client_policy_id' => $arrayData['client_policy_id'],
- 'endorsement_no' => $arrayData['endorsement_no'] ?? null,
- 'cd_ac_no' => $arrayData['cd_ac_no'] ?? null,
- 'insurer_id' => $insurer_id['insurer_id'],
- 'description' => $description,
- 'transaction_type' => 'Credit',
- 'updated_by' => $arrayData['user_id'],
- 'is_active' => 1,
- ];
- $response = DepositHelper::saveDeposit($data, $arrayData['user_id']);
- $msg = "Deletion Cash Deposite Updated Successfully -- " . $description;
- return [$msg, $response];
+ $amount = $this->employeePolicyModel->query("
+ SELECT SUM(rata_premimum + gst) AS total_sum
+ FROM employee_polices
+ JOIN employees ON employees.id = employee_polices.employee_id
+ WHERE employees.unit = '$unit'
+ AND id IN (" . implode(',', $arrayData['employeeIds']) . ")
+ ")->getRow();
+
+ if($amount){
- return true;
+ $insurer_id = $this->clientPolicyModel->where('id', $arrayData['client_policy_id'])->first();
+ $description = 'The following amount of ' . round($amount->total_sum, 2) . ' has been credited for the ' . $arrayData['count'] . ' employees at ' . remove_underscore_capitalize_first_letter($arrayData['event_name']) . ' to ' . remove_underscore_capitalize_first_letter($arrayData['policy_name']) . '.';
+
+ $data = [
+
+ 'amount' => $amount->total_sum,
+ 'sub_type_id' => 3,
+ 'client_id' => $arrayData['client_id'],
+ 'client_policy_id' => $arrayData['client_policy_id'],
+ 'endorsement_no' => $arrayData['endorsement_no'] ?? null,
+ 'cd_ac_no' => $arrayData['cd_ac_no'] ?? null,
+ 'insurer_id' => $insurer_id['insurer_id'],
+ 'description' => $description,
+ 'transaction_type' => 'Credit',
+ 'updated_by' => $arrayData['user_id'],
+ 'event_name' => $arrayData['event_name'],
+ 'is_active' => 1,
+ ];
+
+ $response = DepositHelper::saveDeposit($data, $arrayData['user_id']);
+ }
+ }
+ $msg = "Deletion Cash Deposite Updated Successfully -- ";
+ return [$msg];
// print_r($response);
// $query = $this->employeePolicyModel->getLastQuery();
// echo $query . "
";
@@ -4062,12 +4108,9 @@ class EmpDataServiceController extends BaseController
return $result;
}
-
// -----------------------------------------------------------------------------------
-
-
public function readExcelToArray($file)
{
if ($file->isValid() && !$file->hasMoved()) {
@@ -4102,8 +4145,6 @@ class EmpDataServiceController extends BaseController
}
}
-
-
public function insertBatchFileAndBatchListForImportExcel($data, $ids)
{
@@ -4126,7 +4167,6 @@ class EmpDataServiceController extends BaseController
return true;
}
-
public function sendMailForDownloadingECard(array $ids)
{
@@ -4283,7 +4323,6 @@ class EmpDataServiceController extends BaseController
public function getDataByFileId($file_id, $status = 'success')
{
-
$data = $this->batchFileModel
->select('batch_files.*, clients.client_name, clients.short_name, policy_type.policy_type as policy_name, client_branch.branch_name')
->join('clients', 'clients.id = batch_files.client_id')
@@ -4293,7 +4332,6 @@ class EmpDataServiceController extends BaseController
->where('batch_files.id', $file_id)
->first();
-
if($status == 'success'){
$msg_txt = $data['client_name'] . '( ' . $data['branch_name'] . ' )' . ' - ' . $data['policy_name'] . ' - ' . $data['event_type'] . ' - ' . $data['actions'] . ' - ' . $data['insurer_or_tpa'];
@@ -4313,8 +4351,6 @@ class EmpDataServiceController extends BaseController
public function setPullNotification($data)
{
-
-
$array = ['message_text' => $data['msg_txt'], 'action_url' => $data['url'], 'msg_status' => $data['status'], 'msg_title' => $data['title']];
$jsonEncodeData = json_encode($array);
@@ -4327,66 +4363,37 @@ class EmpDataServiceController extends BaseController
'message_type' => '1to1',
];
-
$this->messageModel->insert($msg_data);
-
-
}
public function updatajson()
{
// $columns = [
- // ["column_index" => 0, "column_name" => "MEMBERID / EMPID", "db_column_name" => "emp_code"],
- // ["column_index" => 1, "column_name" => "UHID", "db_column_name" => "uhid"],
- // ["column_index" => 2, "column_name" => "GRADE", "db_column_name" => null],
+ // ["column_index" => 0, "column_name" => "SR NO", "db_column_name" => 'index'],
+ // ["column_index" => 1, "column_name" => "EmployeeId", "db_column_name" => "emp_code"],
+ // ["column_index" => 2, "column_name" => "UHID", "db_column_name" => "uhid"],
// ["column_index" => 3, "column_name" => "DOJ", "db_column_name" => "emp_doj"],
- // ["column_index" => 4, "column_name" => "INSURED NAME", "db_column_name" => "insured_name"],
- // ["column_index" => 5, "column_name" => "ADDRESS 1", "db_column_name" => null],
- // ["column_index" => 6, "column_name" => "ADDRESS 2", "db_column_name" => null],
- // ["column_index" => 7, "column_name" => "CITY", "db_column_name" => null],
- // ["column_index" => 8, "column_name" => "STATE", "db_column_name" => null],
- // ["column_index" => 9, "column_name" => "PINCODE", "db_column_name" => null],
- // ["column_index" => 10, "column_name" => "Age", "db_column_name" => "emp_age"],
- // ["column_index" => 11, "column_name" => "DOB", "db_column_name" => "emp_dob"],
- // ["column_index" => 12, "column_name" => "RELATION SHIP", "db_column_name" => "emp_relationship"],
- // ["column_index" => 13, "column_name" => "Gender", "db_column_name" => "emp_gender"],
- // ["column_index" => 14, "column_name" => "DOC", "db_column_name" => "doc"],
- // ["column_index" => 15, "column_name" => "DOE", "db_column_name" => "doe"],
- // ["column_index" => 16, "column_name" => "SUM INSURED", "db_column_name" => "basic_cover_si"],
- // ["column_index" => 17, "column_name" => "PROPOSER NAME", "db_column_name" => null],
- // ["column_index" => 18, "column_name" => "DOS", "db_column_name" => "dos"],
- // ["column_index" => 19, "column_name" => "MOBILE NO", "db_column_name" => null],
- // ["column_index" => 20, "column_name" => "EMAIL ID", "db_column_name" => null],
- // ["column_index" => 21, "column_name" => "FATHER/HUSBAND NAME", "db_column_name" => null],
- // ["column_index" => 22, "column_name" => "REMARKS", "db_column_name" => null],
- // ["column_index" => 23, "column_name" => "FLAG STATUS", "db_column_name" => "flag_status"],
- // ["column_index" => 24, "column_name" => "EXCEPTIONS", "db_column_name" => "exceptions"],
- // ["column_index" => 25, "column_name" => "ABHA", "db_column_name" => null]
- // ];
-
- // $columns = [
- // ["column_index" => 0, "column_name" => "Sr.No", "db_column_name" => "index"],
- // ["column_index" => 1, "column_name" => "Tata Aig Ref. No", "db_column_name" => "uhid"],
- // ["column_index" => 2, "column_name" => "EMP ID", "db_column_name" => "emp_code"],
- // ["column_index" => 3, "column_name" => "Name of Insured", "db_column_name" => "emp_name"],
- // ["column_index" => 4, "column_name" => "GC Current Details", "db_column_name" => "old_value"],
- // ["column_index" => 5, "column_name" => "Modified Details", "db_column_name" => "new_value"],
- // ["column_index" => 6, "column_name" => "Revision W.E.F (DD/MM/YYYY)", "db_column_name" => null],
- // ["column_index" => 7, "column_name" => "NEW TTD", "db_column_name" => null],
- // ["column_index" => 8, "column_name" => "New Category's", "db_column_name" => null],
- // ["column_index" => 9, "column_name" => "Remarks", "db_column_name" => "remarks"],
- // ["column_index" => 10, "column_name" => "DOC", "db_column_name" => null],
- // ["column_index" => 11, "column_name" => "Errors", "db_column_name" => null]
+ // ["column_index" => 4, "column_name" => "Name OF Insured", "db_column_name" => "emp_name"],
+ // ["column_index" => 5, "column_name" => "Age", "db_column_name" => "emp_age"],
+ // ["column_index" => 6, "column_name" => "Gender", "db_column_name" => "emp_gender"],
+ // ["column_index" => 7, "column_name" => "DOC", "db_column_name" => null],
+ // ["column_index" => 8, "column_name" => "TOTALSI", "db_column_name" => "basic_cover_si"],
+ // ["column_index" => 9, "column_name" => "DOS", "db_column_name" => "dateofexit"],
+ // ["column_index" => 10, "column_name" => "Mobile", "db_column_name" => 'emp_mobile'],
+ // ["column_index" => 11, "column_name" => "EmailID", "db_column_name" => 'emp_email_c'],
+ // ["column_index" => 12, "column_name" => "REMARKS", "db_column_name" => "remarks"],
+ // ["column_index" => 13, "column_name" => "FLAG STATUS", "db_column_name" => null],
+ // ["column_index" => 14, "column_name" => "EXCEPTIONS", "db_column_name" => null],
+ // ["column_index" => 15, "column_name" => "ABHA", "db_column_name" => null]
// ];
+
// $json = json_encode($columns);
- // $this->excelExportTemplateModel->where('id', 31)->set('jsoncolumns', $json)->update();
+ // $this->excelExportTemplateModel->where('id', 37)->set('jsoncolumns', $json)->update();
}
-
-
}
diff --git a/app/Controllers/EmployeeController.php b/app/Controllers/EmployeeController.php
index 4e87cdb1..42bd37bd 100644
--- a/app/Controllers/EmployeeController.php
+++ b/app/Controllers/EmployeeController.php
@@ -7,6 +7,8 @@ use CodeIgniter\HTTP\RequestInterface;
use CodeIgniter\HTTP\ResponseInterface;
use Psr\Log\LoggerInterface;
+use App\Helpers\DepositHelper;
+
use App\Models\EmployeeModel;
use App\Models\EmployeePolicyModel;
@@ -21,6 +23,7 @@ use App\Models\ClientPolicyModel;
use App\Models\TPAModel;
use App\Models\InsurerExcelExportTemplateModel;
use App\Models\InsurerModel;
+use App\Models\ClientDepositModel;
use App\Controllers\Jobs;
@@ -58,6 +61,7 @@ class EmployeeController extends AdminController
protected $policiesModel;
protected $excelExportTemplateModel;
protected $insurerModel;
+ protected $cashDepositModel;
public function __construct()
{
@@ -76,13 +80,14 @@ class EmployeeController extends AdminController
$this->TPAModel = new TPAModel();
$this->policiesModel = new PolicesModel();
$this->insurerModel = new InsurerModel();
+ $this->cashDepositModel = new ClientDepositModel();
}
public function list()
{
// $model = new UserModel();
$data = [];
- $data['status'] = ['draft' => 'Draft', 'active' => 'Active', 'inactive' => 'In-Active', 'expired' => 'Expired'];
+ $data['status'] = ['draft' => 'Draft', 'active' => 'Active', 'inactive' => 'In-Active', 'pending' => 'Pending'];
if (count($this->request->getGet())) {
$filterData = $this->request->getGet();
$data['employees'] = $this->employeePolicyModel->getEmployeePolicy(
@@ -247,7 +252,7 @@ class EmployeeController extends AdminController
//for TPA/insurer upload
- $data['events'] = ['inception' => 'Inception (Employee + Dependents)', 'addition' => 'Addition (Employee + Dependents)', 'dependent_addition' => 'Dependent Addition (Only Dependents)', 'deletion' => 'Deletion', 'correction' => 'Correction', 'si_enhancement' => 'SI Enhancement'];
+ $data['events'] = ['inception' => 'Inception (Employee + Dependents)', 'missed_inception' => 'Missed Inception (Employee + Dependents)', 'addition' => 'Addition (Employee + Dependents)', 'dependent_addition' => 'Dependent Addition (Only Dependents)', 'deletion' => 'Deletion', 'correction' => 'Correction', 'si_enhancement' => 'SI Enhancement'];
//for inception upload
$data['actions'] = ['inception' => 'Inception (Employee + Dependents)', 'missed_inception' => 'Missed Inception (Employee + Dependents)', 'addition' => 'Addition (Employee + Dependents)', 'dependent_addtion' => 'Dependent Addition (Only Dependents)', 'deletion' => 'Deletion', 'correction' => 'Correction', 'si_enhancement' => 'SI Enhancement','enrollment' => 'Enrollment'];
@@ -433,7 +438,7 @@ class EmployeeController extends AdminController
if ($actions == 'export') {
- if ($event_type == 'inception' || $event_type == 'addition' || $event_type == 'dependent_addition') {
+ if ($event_type == 'inception' || $event_type == 'addition' || $event_type == 'dependent_addition' || $event_type == 'missed_inception') {
$return = $empDataServiceController->generateExcelForAdditionandInception($batch_data);
@@ -555,7 +560,7 @@ class EmployeeController extends AdminController
$batch_data['status'] = 'pending';
$batch_data['file_name'] = $filename;
- if ($event_type == 'inception' || $event_type == 'addition' || $event_type == 'dependent_addition') {
+ if ($event_type == 'inception' || $event_type == 'addition' || $event_type == 'dependent_addition' || $event_type == 'missed_inception') {
$file_id = $this->batchFileModel->insert($batch_data);
@@ -818,7 +823,6 @@ class EmployeeController extends AdminController
return redirect()->to(base_url('/employee/upload'));
}
-
public function downloadFileList($file_id = null)
{
// $actionType = $this->request->getGet();
@@ -852,7 +856,6 @@ class EmployeeController extends AdminController
}
}
-
public function featchEmpList()
{
$client_id = $this->request->getGet('client_id');
@@ -864,7 +867,6 @@ class EmployeeController extends AdminController
return $this->respond(['dataStatus' => true, 'code' => 200, 'data' => $html], 200);
}
-
public function viewUploadedEmployeeList()
{
@@ -913,7 +915,6 @@ class EmployeeController extends AdminController
}
}
-
public function getEmpCount($id = null)
{
@@ -928,7 +929,6 @@ class EmployeeController extends AdminController
}
-
public function downloadFullExcelErrorFile($file_id, $rowIndex = 1, $colIndex = 1)
{
// Get file data from the database
@@ -1162,115 +1162,56 @@ class EmployeeController extends AdminController
{
// $this->loadLayout('ecard_template/default_ecard');
-
- $empDataServiceController = new EmpDataServiceController();
- $file_name = generate_filename("TCS", 'inception', 'export', 'insurer', 'policy', 'branch');
-
- $export_data = [
- 'client_id' => 12,
- 'client_policy_id' => 12,
- 'client_branch_id' => 1,
- 'insurer_or_tpa' => 'insurer',
- 'event_type' => 'inception',
- 'actions' => 'export',
- 'file_name' => $file_name,
- ];
-
- $template_json = $this->clientPolicyModel
- ->select('insurer_excel_export_template.jsoncolumns')
- ->join('insurer_excel_export_template', 'insurer_excel_export_template.insurer_id = client_policy.insurer_id and insurer_excel_export_template.policy_type_id = client_policy.policy_type_id')
- ->where('client_policy.id', $export_data['client_policy_id'])
- ->where('insurer_excel_export_template.event_name', $export_data['event_type'])
- ->where('insurer_excel_export_template.type_name', $export_data['actions'])
- ->first();
-
- $template_array = json_decode($template_json['jsoncolumns'], true);
-
- // dd($template_array);
-
- $objects = $this->employeePolicyModel->getInceptionEmployeeDataForExportExcel($export_data);
-
- $totals = 0;
- foreach ($objects as $item) {
- $totals += $item->total;
- }
-
- dd($objects, $totals);
-
- $excel_data_info = generate_insurer_based_excel($template_array, $objects);
-
- // Generate Excel file
- $tempFile = tmpfile();
- $success = generate_excel($excel_data_info['header'], $excel_data_info['data'], $tempFile, 1);
-
- // If Excel generation is successful
- if ($success) {
-
- $random_number_count = 4;
- $export_data['batch_code'] = generate_random_string($random_number_count);
- $export_data['created_by'] = get_session_userid();
-
- $insert = $this->batchFileModel->insert($export_data);
- $batch_file_batch_code = $this->batchFileModel->where('id', $insert)->first();
- $batch_code = $batch_file_batch_code['batch_code'];
-
- // $this->insertBatchList(['batch_code' => $batch_code, 'batch_list_data' => $objects ]);
-
- $job_details = new Jobs();
- $r = Jobs::addJob(['job_name' => 'insertBatchList', 'payload' => ['batch_code' => $batch_code, 'user_id' => get_session_userid(), 'batch_list_data' => $objects]]);
-
-
- // If batch operation is successful
- if (true) {
-
- // Clear the output buffer to avoid any unwanted output
- if (ob_get_level()) {
- ob_end_clean();
- }
-
- // Set headers for Excel file download
- header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
- header('Content-Disposition: attachment; filename="' . $export_data['file_name'] . '"');
- header('Content-Transfer-Encoding: binary');
- header('Cache-Control: must-revalidate');
- header('Pragma: public');
- header('Expires: 0');
-
- // Output file contents
- rewind($tempFile);
- fpassthru($tempFile);
-
- // Close and remove temporary file
- fclose($tempFile);
-
- return true; // Excel file successfully generated and exported
-
- } else {
-
- return false; // Batch operation failed
- }
- }
-
-
-
+ $data = [
+ 'employeeIds' => [6,8,10],
+ 'client_id' => 12,
+ 'client_policy_id' => 12,
+ 'client_branch_id' => 1,
+ 'cd_ac_no' => '34567834567892',
+ 'endorsement_no' => null,
+ 'count' => 3,
+ 'event_name' =>'inception',
+ 'policy_name' => 'new policy',
+ 'user_id' => 1,
+ ];
+ $empDataServiceController = new EmpDataServiceController();
+ $empData= $empDataServiceController->cashDepositCalculationForInception($data);
}
-
- public function truncateFileData() //truncateFileDataIn DB (de activate rows)
+
+ //truncateFileDataIn DB (de activate rows)
+ public function truncateFileData($file_id, $role_id = null)
{
$file_id = $this->request->uri->getSegment(3);
// $file_id = 112;
$file = $this->fileModel->find($file_id);
+ $client_id = $file['client_id'];
+ $client_policy_id = $file['policy_id'];
+ $loggedInUserID = get_session_userid();
+
+ $policy_data = $this->clientPolicyModel->where('id', $client_policy_id)->first();
+ $cd_tranction = $this->cashDepositModel
+ ->where('client_id', $client_id)
+ ->where('insurer_id', $policy_data['insurer_id'])
+ ->where('event_name',$file['action'])
+ ->where('client_policy_id', $client_policy_id)
+ ->orderBy('id', 'desc')
+ ->first();
+
// $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);
+ if (count($result) && $role_id == null) {
+ if(get_role_id() == 1 || get_role_id() == 5){
+ return $this->respond(['role' => get_role_id(), 'dataStatus' => false, 'code' => 404, 'message' => 'File data already processed. Do you want to truncate data from uploaded file?'], 200);
+ }else{
+ return $this->respond(['role' => get_role_id(), 'dataStatus' => false, 'code' => 404, 'message' => 'File data already processed'], 200);
+ }
} else {
//update emp and emp plocies
@@ -1283,9 +1224,30 @@ class EmployeeController extends AdminController
//update file status
$this->fileModel->where('id', $file_id)->set(['status' => 'truncated'])->update();
+ if($cd_tranction){
+
+ $cd_data = [
+ 'amount' => $cd_tranction['amount'],
+ 'sub_type_id' => 8,
+ 'endorsement_no' => null,
+ 'insurer_id' =>$policy_data['insurer_id'],
+ 'description' => 'The policy Truncated by Admin or Head',
+ 'transaction_type' => 'Credit',
+ 'updated_by' => 1,
+ 'client_id' => $client_id,
+ 'client_policy_id' => $client_policy_id,
+ 'cd_ac_no' => $policy_data['cd_ac_no'] ?? null,
+ 'event_name' => $file['action'],
+ ];
+
+ $response = DepositHelper::saveDeposit($cd_data, $loggedInUserID);
+ }
+
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()
@@ -1294,18 +1256,48 @@ class EmployeeController extends AdminController
->groupEnd()
->get()
->getResult();
+
// print_r($this->empEndorsementModel->getLastQuery());
// echo $res[0]->count;die();
- if ($res[0]->count == 0) {
+ if ($res[0]->count == 0 || $role_id == 5 || $role_id == 1) {
//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();
+
+ if($cd_tranction && $file['action'] != 'correction'){
+
+ $transaction_type = 'Credit';
+ if($file['action'] == 'deletion'){
+ $transaction_type = 'Debit';
+ }
+
+ $cd_data = [
+ 'amount' => $cd_tranction['amount'],
+ 'sub_type_id' => 8,
+ 'endorsement_no' => null,
+ 'insurer_id' =>$policy_data['insurer_id'],
+ 'description' => 'The policy Truncated by Admin or Head',
+ 'transaction_type' => $transaction_type,
+ 'updated_by' => 1,
+ 'client_id' => $client_id,
+ 'client_policy_id' => $client_policy_id,
+ 'cd_ac_no' => $policy_data['cd_ac_no'] ?? null,
+ 'event_name' => $file['action'],
+ ];
+
+ $response = DepositHelper::saveDeposit($cd_data, $loggedInUserID);
+ }
+
return $this->respond(['dataStatus' => true, 'code' => 200, 'data' => 'success'], 200);
} else {
- return $this->respond(['dataStatus' => false, 'code' => 404, 'message' => 'File data already processed'], 200);
+ if(get_role_id() == 1 || get_role_id() == 5){
+ return $this->respond(['role' => get_role_id(), 'dataStatus' => false, 'code' => 404, 'message' => 'File data already processed. Do you want to truncate data from uploaded file?'], 200);
+ }else{
+ return $this->respond(['dataStatus' => false, 'code' => 404, 'message' => 'File data already processed'], 200);
+ }
}
}
}
diff --git a/app/Controllers/EmployeeRestController.php b/app/Controllers/EmployeeRestController.php
index 1458100e..01735912 100644
--- a/app/Controllers/EmployeeRestController.php
+++ b/app/Controllers/EmployeeRestController.php
@@ -954,7 +954,7 @@ class EmployeeRestController extends AdminController
public function getEmployeePolicy()
{
- // try {
+ try {
$id = $this->request->getGet('id');
$emp_code = $this->request->getGet('emp_code');
@@ -1114,21 +1114,21 @@ class EmployeeRestController extends AdminController
// Add family floter buttons placement data for FE validation
if(count($floters)){
- foreach ($floters as $familyFloatesValue) {
+ foreach ($floters as $familyFloatesValue) {
- $temp2['is_value_exist'] = false;
- $temp2['data']['family_floater_key'] = $familyFloatesValue;
- $temp2['data']['client_policy_id'] = $array->ClientPolicyId;
- $temp2['data']['button_name'] = 'Add '.ucfirst(str_replace('_', ' ', preg_replace('/\d/', '', $familyFloatesValue)));
- $temp2['data']['form_type'] = preg_replace('/\d/', '', $familyFloatesValue);
-
-
- $temp2['data']['age_validation'] = $this->getAgeRange($decodedArray,$familyFloatesValue);
+ $temp2['is_value_exist'] = false;
+ $temp2['data']['family_floater_key'] = $familyFloatesValue;
+ $temp2['data']['client_policy_id'] = $array->ClientPolicyId;
+ $temp2['data']['button_name'] = 'Add '.ucfirst(str_replace('_', ' ', preg_replace('/\d/', '', $familyFloatesValue)));
+ $temp2['data']['form_type'] = preg_replace('/\d/', '', $familyFloatesValue);
+
+
+ $temp2['data']['age_validation'] = $this->getAgeRange($decodedArray,$familyFloatesValue);
- array_push($data,$temp2);
+ array_push($data,$temp2);
+ }
}
- }
$array->mapped_family_floaters = $data;
$array->type = "Group Medical Coverage";
@@ -1164,9 +1164,9 @@ class EmployeeRestController extends AdminController
}else{
return $this->respond(['status' => 'failed','code' => 404,'data' => []], 200);
}
- // } catch (\Exception $e) {
- // return $this->respond(['status' => 'failed','code' => 500,'data' => $e->getMessage()], 500);
- // }
+ } catch (\Exception $e) {
+ return $this->respond(['status' => 'failed','code' => 500,'data' => $e->getMessage()], 500);
+ }
}
@@ -1178,6 +1178,7 @@ class EmployeeRestController extends AdminController
->where('client_branch_id',$client_branch_id)
->where('is_active', 1 )
->where('is_addon_value',0)->findAll();
+ // return $employeeData;
foreach ($GmcParrentsPolicy as $key => $array) {
@@ -1241,6 +1242,7 @@ class EmployeeRestController extends AdminController
// Convert familyFloaters terms data to plain array
$floters = $this->FloterConvertion($familyFloates);
+
$data = [];
foreach ($floters as $familyFloatesValue) {
$dependent = preg_replace('/\d/', '', $familyFloatesValue);
@@ -1363,8 +1365,10 @@ class EmployeeRestController extends AdminController
$result = ' ';
foreach ($array as $key => $value) {
if ($value > 0) {
- if($value != 0 && $key ==='either-parents-pil') {
+ if($value == 1 && $key ==='either-parents-pil') {
$result .= ' + Either 2 Parents or 2 Parents in law';
+ }if($value == 2 && $key ==='either-parents-pil') {
+ $result .= ' + Any 2 of Parents and Parents in law';
}else if($value != 0 && $key ==='spouse') {
$string = str_replace('-', ' ', $key);
$string = ucwords($string);
@@ -1373,15 +1377,29 @@ class EmployeeRestController extends AdminController
$result = 'Can Add Self ';
}else if($value != 0 && $key ==='childrens') {
if($value > 1){ $result .= ' + '.$value.' Children'; }else{ $result .= ' + '.$value.' Child'; }
+ }else if($value != 0 && $key ==='elders_count') {
+
}else{
$string = str_replace('-', ' ', $key);
$string = ucwords($string);
$result .= ' + '.$value.' '.$string;
}
+
+
}
}
+
+ $first_two_chars = substr($result, 0, 3);
+
+ if($first_two_chars == " +"){
+ $modified_string = substr($result, 3);
+ return "Can Add ".$modified_string;
+ }else{
+ return $result;
+ }
+ return substr($result, 0, 2) !== " +";
- return $result;
+
}
public function getClientDetails()
@@ -1874,7 +1892,7 @@ class EmployeeRestController extends AdminController
{
$transformed_famility_details = transform_db_data_to_excel($family);
// print_r($transformed_famility_details);die();
- $data = calculate_premimum($transformed_famility_details,$policy_terms,$slab_details,$file,$default_si);
+ $data = calculate_premium($transformed_famility_details,$policy_terms,$slab_details,$file,$default_si);
// dd($data);
$employee_data_group_by_family[$emp_id] = $data;
@@ -2404,7 +2422,8 @@ class EmployeeRestController extends AdminController
$firebase->send($message);
return $this->response->setJSON(['status' => 'success']);
} catch (MessagingException $e) {
- return $this->response->setJSON(['status' => 'error', 'message' => $e->getMessage()]);
+ //return $this->response->setJSON(['status' => 'error', 'message' => $e->getMessage()]);
+ log_message('error', $e->getMessage());
}
}
diff --git a/app/Controllers/EmployeeServiceController.php b/app/Controllers/EmployeeServiceController.php
index 0a6a9ba1..4ddd51e6 100644
--- a/app/Controllers/EmployeeServiceController.php
+++ b/app/Controllers/EmployeeServiceController.php
@@ -161,7 +161,7 @@ class EmployeeServiceController extends AdminController
'format' => null,
'allowed_values' => null,
'custom' => 'check_si',
- 'params' => ['row', 'policy_terms', 'slab_details']
+ 'params' => ['row', 'policy_details', 'slab_details']
],
'doc' => [
'col_idx' => 7,
@@ -1496,17 +1496,43 @@ class EmployeeServiceController extends AdminController
if(!count($existing_endorsements))
{
//transform data to send
+
+ //get applicable slab rate for current member relation
+ $pre_rack_rate_name = '';
+ $applicable_rack_rate_name = '';
+ $applicable_rack_rate_master = '';
foreach ($slab_details['slab_rates'] as $skey => $slab_value)
{
- if($slab_value['si'] == $row[3])
+ if($pre_rack_rate_name != $slab_value['rack_rate_name'])
{
- $group_key = rand(100000, 999999);
- $this->empEndorsementModel->save(['pk' => (int)$employee_policy['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' => $row[3],'created_by' => $file['created_by'],'remarks' => 'general si enhancement','group_key' => $group_key,'file_id' => $file['id'],'status' => 'pending']);
- $this->empEndorsementModel->save(['pk' => (int)$employee_policy['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' => 'general si enhancement','group_key' => $group_key,'file_id' => $file['id'],'status' => 'pending']);
- $this->empEndorsementModel->save(['pk' => (int)$employee_policy['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' => change_date_format($row[4],'d-M-Y','Y-m-d'),'created_by' => $file['created_by'],'remarks' => 'general si enhancement','group_key' => $group_key,'file_id' => $file['id'],'status' => 'pending']);
- break;
+ $pre_rack_rate_name = $slab_value['rack_rate_name'];
+ $rack_rate_json = json_decode($slab_value['additional_relationship']);
+ if(in_array(strtolower($employee['relationship']), $rack_rate_json) && $rack_rate_json[ strtolower($employee['relationship']) ] != 0 && $rack_rate_json[ strtolower($employee['relationship']) ] != NA)
+ {
+ $applicable_rack_rate_name = $slab_value['rack_rate_name'];
+ $applicable_rack_rate_master = $slab_value['grid_master'];
+ break;
+ }
}
}
+
+ //get max age,max count of the familiy
+ $max_age_and_max_count_of_current_member = $this->employeeModel->getFamiliyCountAndMaxage($employee['emp_code']);
+ //transform SI excel row data as inception excel OR premium calculateable fomart
+
+ $data = transform_si_excel_row_to_calculatable_format(employee: $employee,employee_policy: $employee_policy,maxage_and_maxcount: $max_age_and_max_count_of_current_member,slab_details: $slab_details,applicable_slab_name: $applicable_rack_rate_name,augmented_si: $row[3],grid_master: $applicable_rack_rate_master);
+ $policy_terms = $this->clientPolicyModel->getPolicyDetails($file['client_id'],$file['policy_id']);
+ //grouping slab details by rack rate name
+ $temp_slab_rates = group_slab_rates_basedon_name($slab_details);
+
+ $calculated_data = premium_calculation_manager($data,$policy_terms,$temp_slab_rates,$row[3]);
+
+ $group_key = rand(100000, 999999);
+ $this->empEndorsementModel->save(['pk' => (int)$employee_policy['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' => $row[3],'created_by' => $file['created_by'],'remarks' => 'general si enhancement','group_key' => $group_key,'file_id' => $file['id'],'status' => 'pending']);
+ $this->empEndorsementModel->save(['pk' => (int)$employee_policy['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' => $calculated_data['policy_details']['premium'],'created_by' => $file['created_by'],'remarks' => 'general si enhancement','group_key' => $group_key,'file_id' => $file['id'],'status' => 'pending']);
+ $this->empEndorsementModel->save(['pk' => (int)$employee_policy['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' => change_date_format($row[4],'d-M-Y','Y-m-d'),'created_by' => $file['created_by'],'remarks' => 'general si enhancement','group_key' => $group_key,'file_id' => $file['id'],'status' => 'pending']);
+
+
}
@@ -1522,109 +1548,114 @@ class EmployeeServiceController extends AdminController
// insert or update in db for inception addition depent addition
- public function employeesOnboardProcess($params)
+ public function employeesOnboardProcess($params)
{
$familiy_data = $params['familiy_data'];
$file = $params['file'];
foreach($familiy_data as $fkey => $value)
{
- if($file['id'] == null || $value['temp']['source'] == 'excel' || (($file['action'] == 'dependent_addition' && ($value['temp']['premium_type'] == 1 && strtolower($value['relationship']) == 'self') || ($value['temp']['premium_type'] == 2 || $value['temp']['premium_type'] == null)))) //insert data come from excel and from db i.e. ( $file['id'] == null for enrollment data)
+ if(is_array($value))
{
-
- $employee = $this->employeeModel->checkExistingEmp($value,$file['client_branch_id']);
- $policy_data = $value['policy_details'];
- $temp = $value['temp'];
- unset($value['policy_details']);
- unset($value['temp']);
- // Kint::dump($value);
- // Kint::dump($temp);
- // Kint::dump($policy_data);
- // echo '---------------------------------------';
-
- //start implemet of si enhancement of grid type 10,11
- if(count($employee) && $file['action'] == 'dependent_addition' && $temp['source'] == 'db' && in_array($value['temp']['grid_id'],[10,11]) && ( ($value['temp']['premium_type'] == 1 && (strtolower($value['relationship']) == 'self' || $temp['acting_self'])) || ($value['temp']['premium_type'] == 2 || $value['temp']['premium_type'] == null)))
- {
- $log_message = 'Employee record from DB,Checking SI for - '.$employee[0]['name'].'('.$employee[0]['emp_code'].')';
- $this->myLogger->logme('error',$log_message);
- $res = $this->employeesSIEnhanceProcessWhileOnbboard(employee:$employee[0],policy_data: $policy_data,file:$file);// where employee holds existing emp data and policy_data holds new si enhancement
- break;//skip db employee
- }
- //end implemet of si enhancement of grid type
-
- //save employee table
- $value['relationship'] = ucfirst(trim($value['relationship']));
- if(count($employee))
- {
- $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']));
- // echo 'insert emp';
- }
- else
- {
- $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']));
- // echo 'update emp';
- }
-
- $this->employeeModel->save($value);
- $emp_id = $this->employeeModel->getInsertID();
- if($emp_id != 0){ $log_message .= $emp_id; }
- else{ $emp_id = $employee[0]['id']; }
-
- $this->myLogger->logme('error',$log_message);
-
- //save policy table
- $employee_policy = $this->employeePolicyModel->checkExistingEmpPolicy(['employee_id' => $emp_id,'client_policy_id' => $file['policy_id']]);
- if(count($employee_policy))
- {
- $policy_data['updated_by'] = $file['created_by'];
- $policy_data['id'] = $employee_policy[0]['id'];
- $policy_data['status'] = 'active';
-
- $log_message = 'Update Employee Policy for '. $value['name'].'('. $value['emp_code'].') with PK- ' . $employee_policy[0]['id'] .' client policy ID '.$employee_policy[0]['client_policy_id'].' with SI '.$policy_data['basic_cover_si'];
- // echo 'insert policy';
- }
- else
- {
- $policy_data['employee_id'] = $emp_id;
- $policy_data['client_policy_id'] = $file['policy_id'];
- $policy_data['created_by'] = $file['created_by'];
- $policy_data['status'] = 'active';
- $log_message = 'Insert Employee Policy for '. $value['name'].'('. $value['emp_code'].') - client policy id -'. $file['policy_id'].' - with SI '.$policy_data['basic_cover_si'];
- // echo 'update policy';
- }
-
- $this->employeePolicyModel->save($policy_data);
- $emp_policy_id = $this->employeePolicyModel->getInsertID();
- if($emp_policy_id != 0)//emp policy inserted
- {
- $log_message .= ' with PK ' . $emp_policy_id;
-
- //make endorsement entry if action is addition OR Dependt addition
- if(($file['action'] == 'missed_inception' || $file['action'] == 'dependent_addition' || $file['action'] == 'addition') && $temp['source'] == 'excel')
+
+ if($file['id'] == null || $value['temp']['source'] == 'excel' || (($file['action'] == 'dependent_addition' && ($value['temp']['premium_type'] == 1 && strtolower($value['relationship']) == 'self') || ($value['temp']['premium_type'] == 2 || $value['temp']['premium_type'] == null)))) //insert data come from excel and from db i.e. ( $file['id'] == null for enrollment data)
{
- $log_message = $file['action'].' - endorsement'. $value['emp_code'].' - '.$value['name'].' - with policy id'.$emp_policy_id;
- $this->myLogger->logme('error',$log_message);
- $actions = ($file['action'] == 'dependent_addition' ? 'da' : ($file['action'] == 'addition' ? 'a' : NULL));
- $addition_endorse_data = ['pk' => $emp_policy_id,'group_key' => rand(100000, 999999),'emp_code' => $value['emp_code'],'table_name' => 'employee_polices','actions' => $actions,'name' => $value['name'],'field_name' => 'basic_cover_si','old_value' => NULL,'new_value' => $policy_data['basic_cover_si'],'remarks' => 'addition endorsement','file_id' => $file['id'],'created_by' => $file['created_by']];
- $this->employeeEndorsementforAddtionAndDependentAddition($addition_endorse_data);
- }
+
+ $employee = $this->employeeModel->checkExistingEmp($value,$file['client_branch_id']);
+ $policy_data = $value['policy_details'];
+ $temp = $value['temp'];
+ unset($value['policy_details']);
+ unset($value['temp']);
+ // Kint::dump($value);
+ // Kint::dump($temp);
+ // Kint::dump($policy_data);
+ // echo '---------------------------------------';
+
+ //start implemet of si enhancement of grid type 10,11
+ if(count($employee) && $file['action'] == 'dependent_addition' && $temp['source'] == 'db' && in_array($value['temp']['grid_id'],[10,11]) && ( ($value['temp']['premium_type'] == 1 && (strtolower($value['relationship']) == 'self' || $temp['acting_self'])) || ($value['temp']['premium_type'] == 2 || $value['temp']['premium_type'] == null)))
+ {
+ $log_message = 'Employee record from DB,Checking SI for - '.$employee[0]['name'].'('.$employee[0]['emp_code'].')';
+ $this->myLogger->logme('error',$log_message);
+ $res = $this->employeesSIEnhanceProcessWhileOnbboard(employee:$employee[0],policy_data: $policy_data,file:$file);// where employee holds existing emp data and policy_data holds new si enhancement
- }
- else{ $emp_policy_id = $employee_policy[0]['id']; }
+ break;//skip db employee
+ }
+ //end implemet of si enhancement of grid type
+
+ //save employee table
+ $value['relationship'] = ucfirst(trim($value['relationship']));
+ if(count($employee))
+ {
+ $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']));
+ // echo 'insert emp';
+ }
+ else
+ {
+ $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']));
+ // echo 'update emp';
+ }
+
+ $this->employeeModel->save($value);
+ $emp_id = $this->employeeModel->getInsertID();
+ if($emp_id != 0){ $log_message .= $emp_id; }
+ else{ $emp_id = $employee[0]['id']; }
+
+ $this->myLogger->logme('error',$log_message);
+
+ //save policy table
+ $employee_policy = $this->employeePolicyModel->checkExistingEmpPolicy(['employee_id' => $emp_id,'client_policy_id' => $file['policy_id']]);
+ if(count($employee_policy))
+ {
+ $policy_data['updated_by'] = $file['created_by'];
+ $policy_data['id'] = $employee_policy[0]['id'];
+ $policy_data['status'] = 'active';
+
+ $log_message = 'Update Employee Policy for '. $value['name'].'('. $value['emp_code'].') with PK- ' . $employee_policy[0]['id'] .' client policy ID '.$employee_policy[0]['client_policy_id'].' with SI '.$policy_data['basic_cover_si'];
+ // echo 'insert policy';
+ }
+ else
+ {
+ $policy_data['employee_id'] = $emp_id;
+ $policy_data['client_policy_id'] = $file['policy_id'];
+ $policy_data['created_by'] = $file['created_by'];
+ $policy_data['status'] = 'active';
+ $log_message = 'Insert Employee Policy for '. $value['name'].'('. $value['emp_code'].') - client policy id -'. $file['policy_id'].' - with SI '.$policy_data['basic_cover_si'];
+ // echo 'update policy';
+ }
+
+ $this->employeePolicyModel->save($policy_data);
+ $emp_policy_id = $this->employeePolicyModel->getInsertID();
+ if($emp_policy_id != 0)//emp policy inserted
+ {
+ $log_message .= ' with PK ' . $emp_policy_id;
+
+ //make endorsement entry if action is addition OR Dependt addition
+ if(($file['action'] == 'missed_inception' || $file['action'] == 'dependent_addition' || $file['action'] == 'addition') && $temp['source'] == 'excel')
+ {
+ $log_message = $file['action'].' - endorsement'. $value['emp_code'].' - '.$value['name'].' - with policy id'.$emp_policy_id;
+ $this->myLogger->logme('error',$log_message);
+ $actions = ($file['action'] == 'dependent_addition' ? 'da' : ($file['action'] == 'addition' ? 'a' : NULL));
+ $addition_endorse_data = ['pk' => $emp_policy_id,'group_key' => rand(100000, 999999),'emp_code' => $value['emp_code'],'table_name' => 'employee_polices','actions' => $actions,'name' => $value['name'],'field_name' => 'basic_cover_si','old_value' => NULL,'new_value' => $policy_data['basic_cover_si'],'remarks' => 'addition endorsement','file_id' => $file['id'],'created_by' => $file['created_by']];
+ $this->employeeEndorsementforAddtionAndDependentAddition($addition_endorse_data);
+ }
+
+ }
+ else{ $emp_policy_id = $employee_policy[0]['id']; }
- $this->myLogger->logme('error',$log_message);
+ $this->myLogger->logme('error',$log_message);
}// if end
- }// for end
+ }// is array check end
+ }// for end
}//function end
diff --git a/app/Controllers/MasterController.php b/app/Controllers/MasterController.php
index 18e73a8e..603f9e51 100644
--- a/app/Controllers/MasterController.php
+++ b/app/Controllers/MasterController.php
@@ -1062,10 +1062,9 @@ class MasterController extends AdminController
//start CD Master list
public function CDMasterList()
{
-
$data['CD_Master_Data'] = $this->CDMasterModel->getCDMasterList();
- $data['insurers'] = $this->insurerModel->findAll();
- $data['clients'] = $this->clientModel->findAll();
+ $data['insurers'] = $this->insurerModel->where('is_active', 1)->findAll();
+ $data['clients'] = $this->clientModel->where('is_active', 1)->findAll();
$this->loadLayout('cd_master_list', $data);
}
@@ -1087,6 +1086,7 @@ class MasterController extends AdminController
'insurer_id' => $data['insurer_id'],
'description' => 'opening Amount',
'transaction_type' => 'Credit',
+ 'event_name' => null,
'updated_by' => 1,
];
@@ -1157,7 +1157,12 @@ class MasterController extends AdminController
public function getCDMasterDataByID($id = null)
{
- $cd_data = $this->CDMasterModel->where('id', $id)->first();
+ $cd_data = $this->CDMasterModel
+ ->where('id', $id)
+ ->where('is_active', 1)
+ ->first();
+
+ // convert the date formate 2000-01-01 to 01-01-2000
$cd_data['opening_date'] = date('d-m-Y', strtotime($cd_data['opening_date']));
if ($cd_data) {
@@ -1169,7 +1174,10 @@ class MasterController extends AdminController
public function checkUniqueCDAccountNumber($AccountNumber)
{
- $uniqueAC = $this->CDMasterModel->where('cd_ac_no', $AccountNumber)->findAll();
+ $uniqueAC = $this->CDMasterModel
+ ->where('cd_ac_no', $AccountNumber)
+ ->where('is_active', 1)
+ ->findAll();
if($uniqueAC != null){
return $this->respond(['status' => true, 'message' => 'The CD Account Number is Already Exist', 'code' => 200], 200);
@@ -1184,7 +1192,18 @@ class MasterController extends AdminController
$this->myLogger->logme('error','CDMaster Remove function called');
$data['updated_by'] = get_session_userid();
$data['is_active'] = 0;
- $update = $this->CDMasterModel->where('id', $id)->set($data)->update();
+ $cash_transaction_data = $this->CDMasterModel->where('id', $id)->first();
+
+ $update = $this->CDMasterModel->where('id', $id)->set($data)->update();
+
+ $cd_tranction_update = $this->clientDepositModel
+ ->where('client_id', $cash_transaction_data['client_id'])
+ ->where('insurer_id', $cash_transaction_data['insurer_id'])
+ ->where('cd_ac_no', $cash_transaction_data['cd_ac_no'])
+ ->where('sub_type', 7)
+ ->set($data)
+ ->update();
+
if($update){
return $this->respond(['status' => true,'code' => 200], 200);
}else{
diff --git a/app/Controllers/PendingActionsController.php b/app/Controllers/PendingActionsController.php
index b47a4b2f..bb8f2e92 100644
--- a/app/Controllers/PendingActionsController.php
+++ b/app/Controllers/PendingActionsController.php
@@ -7,7 +7,6 @@ use CodeIgniter\HTTP\RequestInterface;
use CodeIgniter\HTTP\ResponseInterface;
use Psr\Log\LoggerInterface;
-use App\Helpers\DepositHelper;
use App\Helpers\MailHelper;
use App\Helpers\sendMailNotification;
@@ -43,10 +42,10 @@ class PendingActionsController extends AdminController
public function __construct()
{
- //section
+ //session
set_session_context('PendingActionsController Called');
- //services
+ //log services
$this->myLogger = \Config\Services::mylogger();
$this->db = \Config\Database::connect();
@@ -60,7 +59,7 @@ class PendingActionsController extends AdminController
$this->empEndorsementModel = new EmpEndorsementModel();
}
-
+ //for AJAX
public function getPendingActions()
{
//get pending actions like inception, corrections,deletions,SI enhanccnement to users
@@ -71,12 +70,144 @@ class PendingActionsController extends AdminController
$deletion = $this->getPendingActionForDeletion();
$tpa = $this->getPendingActionForTPAIDEmpty();
$uhid = $this->getPendingActionForUHIDEmpty();
+ $PolicyRenewalData = $this->getPolicyRenewalDataForAllClient();
+
// dd($inception, $si_enhancement, $correction, $deletion, $tpa, $uhid);
- $data = ['inception' => $inception, 'correction' => $correction, 'si_enhancement' => $si_enhancement, 'deletion' => $deletion, 'tpa' => $tpa, 'uhid' => $uhid];
+ $data = ['inception' => $inception, 'correction' => $correction, 'si_enhancement' => $si_enhancement, 'deletion' => $deletion, 'tpa' => $tpa, 'uhid' => $uhid, 'policy' => $PolicyRenewalData];
return $this->respond($data);
}
+
+ //for NORMAL
+ public function getPendingActionsForClientData()
+ {
+
+ $inception = $this->getPendingActionForInception();
+ $correction = $this->getPendingActionForCorrection();
+ $si_enhancement = $this->getPendingActionForSIEnhancement();
+ $deletion = $this->getPendingActionForDeletion();
+ $tpa = $this->getPendingActionForTPAIDEmpty();
+ $uhid = $this->getPendingActionForUHIDEmpty();
+ $PolicyRenewalData = $this->getPolicyRenewalDataForAllClient();
+
+ // dd($inception, $si_enhancement, $correction, $deletion, $tpa, $uhid);
+
+ $data = ['inception' => $inception, 'correction' => $correction, 'si_enhancement' => $si_enhancement, 'deletion' => $deletion, 'tpa' => $tpa, 'uhid' => $uhid, 'policy' => $PolicyRenewalData];
+ return $data;
+ }
+
+ //for only COUNT
+ public function getPendingActionsForDashBoard()
+ {
+ $tpa = $this->getPendingActionForTPAIDEmpty();
+ $uhid = $this->getPendingActionForUHIDEmpty();
+ $deletion = $this->getPendingActionForDeletion();
+ $inception = $this->getPendingActionForInception();
+ $ticketData = $this->getTicketsDataForDashBoard();
+ $correction = $this->getPendingActionForCorrection();
+ $si_enhancement = $this->getPendingActionForSIEnhancement();
+ $PolicyRenewalData = $this->getPolicyRenewalDataForAllClient();
+
+ $uhid_export_count = [];
+ $uhid_not_export_count = [];
+ foreach ($uhid as $value) {
+ if($value['batch_export_count'] == 1){
+ $uhid_export_count[] = $value['batch_export_count'];
+ }else{
+ $uhid_not_export_count[] = $value['batch_export_count'];
+ }
+ }
+ $tpa_export_count = [];
+ $tpa_not_export_count = [];
+ foreach ($tpa as $value) {
+ if($value['batch_export_count'] == 1){
+ $tpa_export_count[] = $value['batch_export_count'];
+ }else{
+ $tpa_not_export_count[] = $value['batch_export_count'];
+ }
+ }
+ $deletion_export_count = [];
+ $deletion_not_export_count = [];
+ foreach ($deletion as $value) {
+ if($value['batch_export_count'] == 1){
+ $deletion_export_count[] = $value['batch_export_count'];
+ }else{
+ $deletion_not_export_count[] = $value['batch_export_count'];
+ }
+ }
+ $correction_export_count = [];
+ $correction_not_export_count = [];
+ foreach ($correction as $value) {
+ if($value['batch_export_count'] == 1){
+ $correction_export_count[] = $value['batch_export_count'];
+ }else{
+ $correction_not_export_count[] = $value['batch_export_count'];
+ }
+ }
+ $si_export_count = [];
+ $si_not_export_count = [];
+ foreach ($si_enhancement as $value) {
+ if($value['batch_export_count'] == 1){
+ $si_export_count[] = $value['batch_export_count'];
+ }else{
+ $si_not_export_count[] = $value['batch_export_count'];
+ }
+ }
+
+ // dd($uhid_export_count, $tpa_export_count ,$deletion_export_count, $correction_export_count, $si_export_count, $ticketData, $inception, $si_enhancement, $correction, $deletion, $tpa, $uhid, $PolicyRenewalData);
+
+ $inception = count($inception);
+ $correction = count($correction);
+ $si_enhancement = count($si_enhancement);
+ $deletion = count($deletion);
+ $tpa = count($tpa);
+ $uhid = count($uhid);
+ $PolicyRenewalData = count($PolicyRenewalData);
+ $ticketData = count($ticketData);
+
+ $uhid_export_count = count($uhid_export_count);
+ $tpa_export_count = count($tpa_export_count);
+ $deletion_export_count = count($deletion_export_count);
+ $correction_export_count = count($correction_export_count);
+ $si_export_count = count($si_export_count);
+
+ $uhid_not_export_count = count($uhid_not_export_count);
+ $tpa_not_export_count = count($tpa_not_export_count);
+ $deletion_not_export_count = count($deletion_not_export_count);
+ $correction_not_export_count = count($correction_not_export_count);
+ $si_not_export_count = count($si_not_export_count);
+
+
+ // dd($inception, $si_enhancement, $correction, $deletion, $tpa, $uhid, $PolicyRenewalData);
+
+ $data = [
+ 'inception' => $inception,
+ 'correction' => $correction,
+ 'si_enhancement' => $si_enhancement,
+ 'deletion' => $deletion,
+ 'tpa' => $tpa,
+ 'uhid' => $uhid,
+ 'PolicyRenewalData' => $PolicyRenewalData,
+ 'ticketData' => $ticketData,
+
+ 'uhid_export_count' => $uhid_export_count,
+ 'tpa_export_count' => $tpa_export_count,
+ 'deletion_export_count' => $deletion_export_count,
+ 'correction_export_count' => $correction_export_count,
+ 'si_export_count' => $si_export_count,
+
+ 'uhid_not_export_count' => $uhid_not_export_count,
+ 'tpa_not_export_count' => $tpa_not_export_count,
+ 'deletion_not_export_count' => $deletion_not_export_count,
+ 'correction_not_export_count' => $correction_not_export_count,
+ 'si_not_export_count' => $si_not_export_count,
+ ];
+ return $data;
+ }
+
+
+
public function getPendingActionForInception()
@@ -121,7 +252,6 @@ class PendingActionsController extends AdminController
return $results;
}
-
public function getPendingActionForCorrection()
{
@@ -152,6 +282,7 @@ class PendingActionsController extends AdminController
clients.id as client_id,
client_branch.id as branch_id,
client_branch.branch_name,
+ policy_type.policy_type as policy_name,
emp_endorsement.id,
emp_endorsement.pk,
emp_endorsement.endorsement_id,
@@ -161,10 +292,20 @@ class PendingActionsController extends AdminController
emp_endorsement.actions,
emp_endorsement.name,
emp_endorsement.status,
- employees.name as ename
+ employees.name as ename,
+ (
+ SELECT COUNT(*)
+ FROM batch_files bl
+ WHERE bl.client_id = clients.id
+ AND bl.actions = "export"
+ AND bl.event_type = "correction"
+ AND bl.insurer_or_tpa = "tpa"
+ ) AS export_count
')
->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')
+ ->join('client_policy', 'client_policy.client_id = clients.id AND clients.is_active = 1', 'left')
+ ->join('policy_type', 'client_policy.policy_type_id = policy_type.id ')
->join('client_branch', 'client_branch.id = employees.client_branch_id', 'left')
->where([
'emp_endorsement.actions' => 'c',
@@ -195,14 +336,16 @@ class PendingActionsController extends AdminController
$results = $query->getResultArray();
- $filteredResults = array_filter($results, function ($value) {
- return $value['subquery_count'] != 0;
- });
+ $filteredResults = [];
+ foreach ($results as $value) {
+ if ($value['subquery_count'] != 0) {
+ $filteredResults[] = $value;
+ }
+ }
return $filteredResults;
}
-
public function getPendingActionForSIEnhancement()
{
@@ -282,14 +425,16 @@ class PendingActionsController extends AdminController
$results = $query->getResultArray();
- $filteredResults = array_filter($results, function ($value) {
- return $value['subquery_count'] != 0;
- });
+ $filteredResults = [];
+ foreach ($results as $value) {
+ if ($value['subquery_count'] != 0) {
+ $filteredResults[] = $value;
+ }
+ }
return $filteredResults;
}
-
public function getPendingActionForDeletion()
{
@@ -369,14 +514,16 @@ class PendingActionsController extends AdminController
// Fetch the results
$results = $query->getResultArray();
- $filteredResults = array_filter($results, function ($value) {
- return $value['subquery_count'] != 0;
- });
-
+ $filteredResults = [];
+ foreach ($results as $value) {
+ if ($value['subquery_count'] != 0) {
+ $filteredResults[] = $value;
+ }
+ }
+
return $filteredResults;
}
-
public function getPendingActionForUHIDEmpty()
{
// Subquery for batch_export_count
@@ -425,7 +572,6 @@ class PendingActionsController extends AdminController
return $results;
}
-
public function getPendingActionForTPAIDEmpty()
{
@@ -483,4 +629,86 @@ class PendingActionsController extends AdminController
return $results;
}
+
+ public function getPolicyRenewalDataForAllClient()
+ {
+ $PolicyRenewalData = $this->clientPolicyModel
+ ->select('
+ clients.client_name,
+ client_branch.branch_name,
+ policy_type.policy_type as policy_name,
+ client_policy.policy_end_date,
+ client_branch.id as branch_id
+ ')
+ ->join('clients', 'clients.id = client_policy.client_id')
+ ->join('client_branch', 'client_branch.id = client_policy.client_branch_id')
+ ->join('policy_type', 'policy_type.id = client_policy.policy_type_id')
+ ->where('client_policy.is_active', 1)
+ ->where('client_policy.policy_status', 0)
+ ->where('clients.is_active', 1)
+ ->where('client_branch.is_active', 1)
+ ->where('client_policy.policy_end_date < DATE_ADD(CURDATE(), INTERVAL 2 MONTH)', null, false)
+ ->get()
+ ->getResultArray();
+
+ return $PolicyRenewalData;
+
+ }
+
+ public function getTicketsDataForDashBoard()
+ {
+ $db = \Config\Database::connect();
+
+ $ticket_data = $db->table('hdz_tickets')
+ ->select('hdz_tickets.*, hdz_status.status')
+ ->join('hdz_status', 'hdz_status.id = hdz_tickets.status')
+ ->where('hdz_status.active', 1)
+ ->where('hdz_tickets.status !=', 5)
+ ->get()
+ ->getResultArray();
+
+ return $ticket_data;
+ }
+
+ //ticket status count
+ public function getTicketStatusCount()
+ {
+
+ $db = \Config\Database::connect();
+
+ // Count status = 1
+ $countStatus1 = $db->table('hdz_tickets')
+ ->selectCount('status')
+ ->where('status', 1)
+ ->get()
+ ->getRowArray()['status'];
+
+ // Count status = 4
+ $countStatus4 = $db->table('hdz_tickets')
+ ->selectCount('status')
+ ->where('status', 4)
+ ->get()
+ ->getRowArray()['status'];
+
+ // Count status = 2
+ $countStatus2 = $db->table('hdz_tickets')
+ ->selectCount('status')
+ ->where('status', 2)
+ ->get()
+ ->getRowArray()['status'];
+
+ // Count status = 3
+ $countStatus3 = $db->table('hdz_tickets')
+ ->selectCount('status')
+ ->where('status', 3)
+ ->get()
+ ->getRowArray()['status'];
+
+
+ }
+
+ public function getexportCount()
+ {
+
+ }
}
diff --git a/app/Controllers/RestAuthenticationController.php b/app/Controllers/RestAuthenticationController.php
index bb6013d5..b313789e 100644
--- a/app/Controllers/RestAuthenticationController.php
+++ b/app/Controllers/RestAuthenticationController.php
@@ -125,14 +125,12 @@ class RestAuthenticationController extends AdminController
{
try {
$mobile_number = $this->request->getJSON()->mobile_number;
- $randomNumber = rand(100000, 999999);
- $randomNumber = 123456;
+
$HrData = $this->hrModel->where('mobile', $mobile_number)->where('contact_type', 'client')->first();
if ($HrData) {
- $id= $HrData["id"];
- $otp = $this->hrModel->where('id', $id)->set('otp', $randomNumber)->update();
- $result = ['user_verification' => true ,'message' => "Verified Successfully", 'otp'=>$randomNumber];
+
+ $result = ['user_verification' => true ,'message' => "Verified Successfully"];
return $this->respond(['status' => 'success','code' => 200,'data' => $result],200);
} else {
$result = ['user_verification' => false , 'message' => "User not found"];
@@ -149,10 +147,10 @@ class RestAuthenticationController extends AdminController
{
try {
$mobile_number = $this->request->getJSON()->mobile_number;
- $otp = $this->request->getJSON()->otp;
+ $otp_verification = $this->request->getJSON()->otp_verification;
$hrData = $this->hrModel->where('mobile', $mobile_number)->first();
- if ($hrData && $otp == $hrData["otp"]) {
+ if ($hrData && $otp_verification == true) {
$auth = HttpRequestHelper::getRequestInfo();
if ($auth) {
$data = [
@@ -163,10 +161,10 @@ class RestAuthenticationController extends AdminController
'broswer' => $auth['browser'],
];
- $authdata= $this->authHistoryModel->insert($data);
+ $this->authHistoryModel->insert($data);
}
- $otp_null = $this->hrModel->where('id', $hrData["id"])->set('otp', null)->update();
+
$hrData = $this->hrModel ->select('level_contacts.* , client_branch.client_id as client_id')
->join('client_branch', 'level_contacts.ref_id = client_branch.id', 'left')
@@ -174,7 +172,7 @@ class RestAuthenticationController extends AdminController
->find();
$result = JWTToken::encode($hrData['0']);
- return $this->respond(['status' => 'success','code' => 200,'data' => $result],200);
+ return $this->respond(['status' => 'success','code' => 200,'data' => $result],200);
} else {
return $this->respond(['status' => 'failed','code' => 404,'data' => "Invalid OTP"],200);
}
diff --git a/app/Helpers/DepositHelper.php b/app/Helpers/DepositHelper.php
index 3565646e..5d45709e 100644
--- a/app/Helpers/DepositHelper.php
+++ b/app/Helpers/DepositHelper.php
@@ -54,7 +54,9 @@ class DepositHelper
'cd_ac_no' => $data['cd_ac_no'],
'endorsement_no' => $data['endorsement_no'],
'insurer_id' => $data['insurer_id'],
+ 'unit' => $data['unit'] ?? null,
'description' => $data['description'],
+ 'event_name' => $data['event_name'],
'transaction_type' => $data['transaction_type'],
'is_active' => 1,
'created_by' => $loggedInUserID,
diff --git a/app/Helpers/excel_util_helper.php b/app/Helpers/excel_util_helper.php
index 80a40917..4f81d9d3 100644
--- a/app/Helpers/excel_util_helper.php
+++ b/app/Helpers/excel_util_helper.php
@@ -225,11 +225,19 @@ if(!function_exists('check_employee_band'))
if(!function_exists('check_si'))
{
- function check_si($row,$policy_terms,$slab_details)
+ function check_si($row,$policy_details,$slab_details)
{
$return_array = array('status' => true,'error' => '');
$is_si_found = false;
$is_age_slab_found = false;
+
+ if($policy_details[0]['policy_type_id'] == 1 && $slab_details[0]['policy_grid_id'] == 1 && $slab_details[0]['si_or_bp'] == 2) // GPA && grid type 1 for GPA && sub type is basic pay
+ {
+ $is_si_found = true;
+ $is_age_slab_found = true;
+ $return_array = array('status' => true,'error' => '');
+ }
+
if($row['current_action'] != null && in_array(strtoupper($row['current_action']), ['I','A','DA','SI','MI']))// check rule only of action column data available
{
$received_si = $row['current_action'] == 'SI' ? $row[3] : $row[6];
@@ -868,25 +876,11 @@ if (!function_exists('calculate_premium'))
if (!function_exists('calculate_premium_new'))
{
- function calculate_premium_new(array $family_data,array $policy_terms,array $slab_details,array $fileArr,string $default_si = null,array $existing_units)
+ function calculate_premium_new(array $family_data,array $policy_terms,array $slab_details,array $fileArr,array $existing_units,string $default_si = null,)
{
//grouping slab details by rack rate name
- $temp_slab_rates = [];
- $pre_name = '';
- $pre_grid_master = [];
- foreach ($slab_details as $key => $value)
- {
- $pre_grid_master = $value['grid_master'];
- unset($value['grid_master']);
- if($value['rack_rate_name'] != $pre_name)
- {
- $pre_name = $value['rack_rate_name'];
- $temp_slab_rates[ $value['rack_rate_name'] ]['slab_rates'][] = $value;
- }
- $temp_slab_rates[ $value['rack_rate_name'] ]['slab_rates'][] = $value;
- $temp_slab_rates[ $value['rack_rate_name'] ]['grid_master'] = $pre_grid_master;
- }
+ $temp_slab_rates = group_slab_rates_basedon_name($slab_details);
// dd($temp_slab_rates);
/* 1. construct available/incoming family members composition & count */
$incoming_familiy_composition = get_familiy_composition($family_data);
@@ -899,8 +893,8 @@ if (!function_exists('calculate_premium_new'))
{
// dd($slab);
$res = compare_incoming_family_slab_with_configured_slab($slab,$incoming_familiy_composition);
- kint::dump($key);
- kint::dump($res);
+ // kint::dump($key);
+ // kint::dump($res);
if($res['is_applicable'])
{
@@ -972,9 +966,9 @@ if (!function_exists('calculate_premium_new'))
// // Final combined condition
if ($conditions['isEmployeeSourceEnrollment'] || $conditions['isEmployeeSourceExcelFile'] || $primaryGridTypeCondition ) {
-
+ // dd($transformed_familiy_member_data);
$transformed_familiy_member_data = premium_calculation_manager($transformed_familiy_member_data,$policy_terms,$temp_slab_rates,$default_si);
-
+ // dd($transformed_familiy_member_data);
$result[] = $transformed_familiy_member_data;
}
@@ -1041,6 +1035,7 @@ if (!function_exists('transform_excel_data_to_db'))
$result['temp'] = [];
if(isset($memArr['temp'])) $result['temp'] = array_merge($result['temp'],$memArr['temp']);
$result['temp']['grid_type'] = $actionArr['grid_info']['type'];
+ $result['temp']['band'] = $result['band'];
$result['temp']['grid_id'] = $actionArr['grid_info']['grid_id'];
$result['temp']['action'] = isset($memArr['current_action']) ? $memArr['current_action'] : $current_column_action;
$result['temp']['source'] = isset($memArr['temp']['source']) ? $memArr['temp']['source'] : 'excel';
@@ -1062,7 +1057,7 @@ if (!function_exists('premium_calculation_manager'))
{
function premium_calculation_manager($emp_data,$policy_terms,$slab_details,$default_si = null)
{
- // Kint::dump($emp_data);
+ // Kint::dump($emp_data);die();
$myLogger = \Config\Services::mylogger();
// grid type
@@ -1143,7 +1138,28 @@ if (!function_exists('premium_calculation_manager'))
break;
}
}
+ //auto calculate of SI and premium for basic pay type
+ if(!$is_match_found)
+ {
+ if($temp_slab_rates[0]['si_or_bp'] == 2)
+ {
+ $temp_si = $emp_data['basic_pay'] * $temp_slab_rates[0]['si_or_bp'];
+ $temp_premium = ($temp_si * $temp_slab_rates[0]['multiplier']) / 1000;
+ $emp_data['policy_details']['basic_cover_si'] = $temp_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']);
+ $emp_data['policy_details']['policy_end_date'] = $policy_terms['policy_end_date'];
+ $emp_data['policy_details']['days'] = (calculate_days_bw_dates($emp_data['policy_details']['date_coverage'],$policy_terms['policy_end_date'])->days + 1);
+ $emp_data['policy_details']['premium'] = $temp_premium;
+ $emp_data['policy_details']['rata_premimum'] = calculate_pro_rata_premimum($emp_data['policy_details']['premium'],$emp_data['policy_details']['days'],(calculate_days_bw_dates($policy_terms['policy_start_date'],$policy_terms['policy_end_date'])->days + 1));
+ $emp_data['policy_details']['gst'] = (float) number_format(($emp_data['policy_details']['rata_premimum'] * ($gst/100)),2,'.','');
+ $is_match_found = true;
+
+ $log_message = 'Pre defined SI not found. auto calc SI & premium for -' . $emp_data['emp_code'].' - '. $emp_data['name'].' - '. $temp_si.' - '. $temp_premium;
+ $myLogger->logme('error',$log_message);
+
+ }
+ }
break;
case "2":
//GPA - Flat Rate for all SI
@@ -1905,8 +1921,8 @@ if(!function_exists('compare_incoming_family_slab_with_configured_slab'))
$configured_familiy_composition = json_decode($slab['slab_rates'][0]['additional_relationship'], true);
// Remove unnecessary keys
- kint::dump($incoming_familiy_composition);
- kint::dump($configured_familiy_composition);
+ // kint::dump($incoming_familiy_composition);
+ // kint::dump($configured_familiy_composition);
unset($configured_familiy_composition['either-parents-pil']);
unset($configured_familiy_composition['elders_count']);
@@ -2023,4 +2039,59 @@ if(!function_exists('check_unit'))
return array('status' => true);
}
}
+}
+
+
+if(!function_exists('transform_si_excel_row_to_calculatable_format'))
+{
+ function transform_si_excel_row_to_calculatable_format(array $employee,array$employee_policy,array $maxage_and_maxcount,array $slab_details,string $applicable_slab_name,string $augmented_si,array $grid_master)
+ {
+ $employee['temp'] = [];
+ $employee['temp']['max_age'] = $maxage_and_maxcount[0]['max_age'];
+ $employee['temp']['max_count'] = $maxage_and_maxcount[0]['family_member_count'];
+ $employee['temp']['grid_name'] = $applicable_slab_name;
+ $employee['temp']['grid_master'] = $grid_master;
+ $employee['temp']['acting_self'] = true;
+ $employee['temp']['premium_type'] = $grid_master['premium_type'];
+ $employee['temp']['grid_type'] = $applicable_slab_name;
+ $employee['temp']['grid_id'] = $grid_master['ui_type'];
+ $employee['temp']['action'] = 'SI';
+ $employee['temp']['source'] = 'excel';
+ $employee['temp']['emp_id'] = null;
+ $employee['temp']['emp_policy_id'] = null;
+ $employee['temp']['policy_status'] = null;
+ $employee['temp']['emp_status'] = null;
+ $employee['temp']['rata_premimum'] = null;
+
+ return $employee;
+
+
+
+ }
+}
+
+if(!function_exists('group_slab_rates_basedon_name'))
+{
+ function group_slab_rates_basedon_name($slab_details)
+ {
+ // dd($slab_details);
+ //grouping slab details by rack rate name
+ $temp_slab_rates = [];
+ $pre_name = '';
+ $pre_grid_master = [];
+ foreach ($slab_details['slab_rates'] as $key => $value)
+ {
+ $pre_grid_master = $value['grid_master'];
+ unset($value['grid_master']);
+ if($value['rack_rate_name'] != $pre_name)
+ {
+ $pre_name = $value['rack_rate_name'];
+ $temp_slab_rates[ $value['rack_rate_name'] ]['slab_rates'][] = $value;
+ }
+ $temp_slab_rates[ $value['rack_rate_name'] ]['slab_rates'][] = $value;
+ $temp_slab_rates[ $value['rack_rate_name'] ]['grid_master'] = $pre_grid_master;
+ }
+
+ return $temp_slab_rates;
+ }
}
\ No newline at end of file
diff --git a/app/Models/CDMasterModel.php b/app/Models/CDMasterModel.php
index b936650f..8c7581a3 100644
--- a/app/Models/CDMasterModel.php
+++ b/app/Models/CDMasterModel.php
@@ -42,7 +42,7 @@ class CDMasterModel extends Model
protected function checkAndADDCreatedByValue(array $data)
{
// Check if 'updated_by' value is null or empty
- if (empty($data['data']['created_by'])) {
+ if (empty($data['data']['created_by'])) {
// Set 'updated_by' value to the current session user ID
$data['data']['created_by'] = get_session_userid();
}
@@ -53,7 +53,7 @@ class CDMasterModel extends Model
protected function checkAndUpdateUpdatedByValue(array $data)
{
// Check if 'updated_by' value is null or empty
- if (empty($data['data']['updated_by'])) {
+ if (empty($data['data']['updated_by'])) {
// Set 'updated_by' value to the current session user ID
$data['data']['updated_by'] = get_session_userid();
}
@@ -65,31 +65,37 @@ class CDMasterModel extends Model
{
$query = $this->db->table('cd_master')
- ->select('cd_master.*, clients.client_name, clients.short_name, insurers.name AS insurer_name, user_profiles.first_name AS user_name, IFNULL(cd_ac_counts.cd_ac_no_count, 0) AS cd_ac_no_count, IFNULL(cd_ac_counts_for_cdt.cd_ac_no_count_cd_tranction, 0) AS cd_ac_no_count_cd_tranction')
- ->join('clients', 'clients.id = cd_master.client_id')
- ->join('insurers', 'insurers.id = cd_master.insurer_id')
- ->join('user_profiles', 'user_profiles.id = cd_master.created_by')
- ->join(
- '(SELECT cd_master.cd_ac_no, COUNT(client_policy.cd_ac_no) AS cd_ac_no_count
+ ->select('cd_master.*, clients.client_name, clients.short_name, insurers.name AS insurer_name, user_profiles.first_name AS user_name, IFNULL(cd_ac_counts.cd_ac_no_count, 0) AS cd_ac_no_count, IFNULL(cd_ac_counts_for_cdt.cd_ac_no_count_cd_tranction, 0) AS cd_ac_no_count_cd_tranction')
+ ->join('clients', 'clients.id = cd_master.client_id')
+ ->join('insurers', 'insurers.id = cd_master.insurer_id')
+ ->join('user_profiles', 'user_profiles.id = cd_master.created_by')
+ ->join(
+ '(SELECT cd_master.cd_ac_no, COUNT(client_policy.cd_ac_no) AS cd_ac_no_count
FROM cd_master
JOIN client_policy ON client_policy.cd_ac_no = cd_master.cd_ac_no
+ WHERE client_policy.is_active = 1
+ AND cd_master.is_active = 1
GROUP BY cd_master.cd_ac_no) AS cd_ac_counts',
- 'cd_ac_counts.cd_ac_no = cd_master.cd_ac_no',
- 'left'
- )
- ->join(
- '(SELECT cd_master.cd_ac_no, COUNT(cash_deposit.cd_ac_no) AS cd_ac_no_count_cd_tranction
+ 'cd_ac_counts.cd_ac_no = cd_master.cd_ac_no',
+ 'left'
+ )
+ ->join(
+ '(SELECT cd_master.cd_ac_no, COUNT(cash_deposit.cd_ac_no) AS cd_ac_no_count_cd_tranction
FROM cd_master
JOIN cash_deposit ON cash_deposit.cd_ac_no = cd_master.cd_ac_no
+ WHERE cash_deposit.is_active = 1
+ AND cd_master.is_active = 1
GROUP BY cd_master.cd_ac_no) AS cd_ac_counts_for_cdt',
- 'cd_ac_counts_for_cdt.cd_ac_no = cd_master.cd_ac_no',
- 'left'
- )
- ->where('cd_master.is_active', 1)
- ->get();
-
+ 'cd_ac_counts_for_cdt.cd_ac_no = cd_master.cd_ac_no',
+ 'left'
+ )
+ ->where('cd_master.is_active', 1)
+ ->where('clients.is_active', 1)
+ ->where('insurers.is_active', 1)
+ ->where('user_profiles.is_active', 1)
+ ->get();
+
$result = $query->getResultArray();
return $result;
}
-
}
diff --git a/app/Models/ClientDepositModel.php b/app/Models/ClientDepositModel.php
index 9f520dd2..00530dec 100644
--- a/app/Models/ClientDepositModel.php
+++ b/app/Models/ClientDepositModel.php
@@ -25,6 +25,8 @@ class ClientDepositModel extends Model
"client_policy_id",
"cd_ac_no",
"endorsement_no",
+ "event_name",
+ "unit",
];
diff --git a/app/Models/ClientPolicyModel.php b/app/Models/ClientPolicyModel.php
index f3bed1e8..29027630 100644
--- a/app/Models/ClientPolicyModel.php
+++ b/app/Models/ClientPolicyModel.php
@@ -50,6 +50,7 @@ class ClientPolicyModel extends Model
"cd_ac_no",
"gst",
"enrolment_visibility",
+ "is_active",
];
public function getClientPolicyById($id){
diff --git a/app/Models/EmployeeModel.php b/app/Models/EmployeeModel.php
index aa1fb9fa..bd6a5e6f 100644
--- a/app/Models/EmployeeModel.php
+++ b/app/Models/EmployeeModel.php
@@ -190,4 +190,24 @@ class EmployeeModel extends Model
return ($result);
}
+
+ public function getFamiliyCountAndMaxage(string $emp_code)
+ {
+ $query = "
+ SELECT emp_code,family_member_count,max_age
+ FROM
+ (
+ SELECT
+ emp_code,
+ COUNT(*) AS family_member_count,
+ MAX(TIMESTAMPDIFF(YEAR, dob, CURDATE())) AS max_age
+ FROM employees where emp_code = '{$emp_code}'
+ GROUP BY emp_code
+ ) AS family_stats
+ ORDER BY family_member_count DESC, max_age DESC
+ LIMIT 1;";
+ $results = $this->db->query($query)->getResult();
+ return $results;
+ }
+
}
diff --git a/app/Models/EmployeePolicyModel.php b/app/Models/EmployeePolicyModel.php
index 1438c730..52ffe324 100644
--- a/app/Models/EmployeePolicyModel.php
+++ b/app/Models/EmployeePolicyModel.php
@@ -130,7 +130,15 @@ class EmployeePolicyModel extends Model
$result->where('employee_polices.client_policy_id', $policy_id);
}
if ($status !=0 && !empty($status)) {
- $result->where('employee_polices.status', $status);
+ if($status == 'active'){
+ $result->where('employee_polices.tpa_id IS NOT NULL');
+ $result->where('employee_polices.uhid IS NOT NULL');
+ }else if($status == 'pending'){
+ $status = 'active';
+ $result->where('employee_polices.status', $status);
+ }else{
+ $result->where('employee_polices.status', $status);
+ }
}
if (!empty($emp_code)) {
$result->where('emp.emp_code', $emp_code);
diff --git a/app/Models/PolicesModel.php b/app/Models/PolicesModel.php
index cd1c62ba..ec010b82 100644
--- a/app/Models/PolicesModel.php
+++ b/app/Models/PolicesModel.php
@@ -50,9 +50,9 @@ class PolicesModel extends Model
{
// echo '2';
$policyPremium2Model = new PolicyPremium2Model();
- $premium_slab_data = $policyPremium2Model->where(['client_id' => $client_id, 'client_policy_id' => $policy_id, 'is_active' => 1,'rack_rate_type' => 0])->findAll();
+ $premium_slab_data = $policyPremium2Model->where(['client_id' => $client_id, 'client_policy_id' => $policy_id, 'is_active' => 1])->findAll();
- //check any additional rack rate configured
+ // check any additional rack rate configured
$additional_premium_slab_data = $policyPremium2Model->where(['client_id' => $client_id, 'client_policy_id' => $policy_id, 'is_active' => 1,'rack_rate_type' => 1])->findAll();
diff --git a/app/Views/DashBoard.php b/app/Views/DashBoard.php
index 7d8243a5..c174e936 100644
--- a/app/Views/DashBoard.php
+++ b/app/Views/DashBoard.php
@@ -35,9 +35,9 @@ body {
-
+
-
+
@@ -50,10 +50,10 @@ body {
-
-
-
-
+
+
-
+
diff --git a/app/Views/cd_master_list.php b/app/Views/cd_master_list.php
index 30c848f6..04a52784 100644
--- a/app/Views/cd_master_list.php
+++ b/app/Views/cd_master_list.php
@@ -57,17 +57,25 @@ table.dataTable thead th {
by
-
diff --git a/app/Views/client_branch.php b/app/Views/client_branch.php
index e40cc1db..b5ee306d 100644
--- a/app/Views/client_branch.php
+++ b/app/Views/client_branch.php
@@ -216,6 +216,7 @@ $(document).ready(function() {
var branchTable = '';
var data = = isset($client_branch) ? json_encode($client_branch) : '[]' ?>;
+ console.log('branch data', data)
var role = data.role
delete data.role;
console.log(role)
diff --git a/app/Views/client_info.php b/app/Views/client_info.php
index 94bc56ee..879eceea 100644
--- a/app/Views/client_info.php
+++ b/app/Views/client_info.php
@@ -8,7 +8,8 @@
- Client Basic Info
+ Client Basic Info - = $client['client_name'] ?> (
+ = $client['short_name'] ?> )
@@ -35,16 +36,15 @@
-
+
@@ -62,18 +62,16 @@
-
+
@@ -142,7 +140,7 @@
data-id="= htmlspecialchars($value['policy_terms']) ?>"
data-toggle="modal" data-target="#bs-example-modal-lg">
= $value['branch_name'] ?>
- = $value['policy_name'] ?> ( = $value['policy_type'] ?> )
+ = $value['policy_type'] ?>
= $value['insurer_short_name'] ?>
= $value['tpa_short_name'] ?>
= $value['policy_start_date'] ?> / = $value['policy_end_date'] ?>
diff --git a/app/Views/client_list.php b/app/Views/client_list.php
index 09850d79..f0609f71 100644
--- a/app/Views/client_list.php
+++ b/app/Views/client_list.php
@@ -81,83 +81,91 @@ table.dataTable thead th {
-
\ No newline at end of file
diff --git a/app/Views/endorsement_dash.php b/app/Views/endorsement_dash.php
index a097be06..20b2710d 100644
--- a/app/Views/endorsement_dash.php
+++ b/app/Views/endorsement_dash.php
@@ -1,4 +1,390 @@
-
+
+
+
+
+
+
+
+
+ Inception Pending
+ = $pendingActionsData['inception'] ?>
+
+
+
+
+
+
+
+
+
+ Pending Insurer
+ = $pendingActionsData['uhid'] ?>
+ Exported = $pendingActionsData['uhid_export_count'] ?>
+ Not Exported = $pendingActionsData['uhid_not_export_count'] ?>
+
+
+
+
+
+
+
+ Pending TPA
+ = $pendingActionsData['tpa'] ?>
+ Exported = $pendingActionsData['tpa_export_count'] ?>
+ Not Exported = $pendingActionsData['tpa_not_export_count'] ?>
+
+
+
+
+
+
+
+ Correction Pending
+ = $pendingActionsData['correction'] ?>
+ Exported = $pendingActionsData['correction_export_count'] ?>
+ Not Exported = $pendingActionsData['correction_not_export_count'] ?>
+
+
+
+
+
+
+
+ Deletion Pending
+ = $pendingActionsData['deletion'] ?>
+ Exported = $pendingActionsData['deletion_export_count'] ?>
+ Not Exported = $pendingActionsData['deletion_not_export_count'] ?>
+
+
+
+
+
+
+
+ SI Enhancment Pending
+ = $pendingActionsData['si_enhancement'] ?>
+ Exported = $pendingActionsData['si_export_count'] ?>
+ Not Exported = $pendingActionsData['si_not_export_count'] ?>
+
+
+
+
+
+
+
+ Policy
+ = $pendingActionsData['PolicyRenewalData'] ?>
+
+
+
+
+
+
+
+
+
+ Ticket
+ = $pendingActionsData['ticketData'] ?>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/Views/file_list.php b/app/Views/file_list.php
index e05fc213..3fcc2609 100644
--- a/app/Views/file_list.php
+++ b/app/Views/file_list.php
@@ -93,26 +93,15 @@
class="mdi mdi-dots-horizontal">
@@ -256,6 +245,7 @@ $('body').on('click', '.upload_button', function() {
$('#file_upload_actions').val(fileId.action)
})
+
$('body').on('click', '.truncate', function(event) {
event.preventDefault();
// console.log(event);
@@ -273,40 +263,29 @@ $('body').on('click', '.truncate', function(event) {
if (result.isConfirmed) {
$('.loader').fadeIn();
$('.loader-mask').fadeIn();
- var apiURL = '' + 'employee/truncate/' + fileId;
+ var apiURL = 'employee/truncate/' + fileId;
+
$.ajax({
url: apiURL,
method: 'GET',
headers: {
- // "Content-Type": "application/json",
"X-Requested-With": "XMLHttpRequest"
},
success: function(response) {
- // console.log(response.code);
- // console.log(response.dataStatus);
- // console.log(response.data);
setTimeout(function() {
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
}, 1000);
-
- if (response.code === 200 && response.dataStatus === true && response
- .data !== "") {
+ if (response.code === 200 && response.dataStatus === true && response.data !== "") {
Swal.fire({
title: "Deleted!",
- // text: "Data from truncated",
icon: "success"
});
} else if (response.code === 404 && response.dataStatus === false) {
- console.error('no data found', response);
- Swal.fire({
- title: "Failed!",
- text: response.message,
- icon: "error"
- });
+ console.error('No data found', response);
+ handleNoDataFound(response, fileId);
} else {
-
Swal.fire({
title: "Failed!",
text: 'Something went wrong! Try later',
@@ -324,13 +303,77 @@ $('body').on('click', '.truncate', function(event) {
toastr.error('Something went wrong! Try later', 'Error');
}
});
-
}
});
-
-
})
+function handleNoDataFound(response, fileId) {
+ if (response.role == 1 || response.role == 5) {
+ Swal.fire({
+ title: response.message,
+ showCancelButton: true,
+ confirmButtonText: "Delete",
+ confirmButtonColor: "#ff3333",
+ }).then((result) => {
+
+ console.log(result);
+ if (result.isConfirmed) {
+ $('.loader').fadeIn();
+ $('.loader-mask').fadeIn();
+ var apiURL = 'employee/truncate/' + fileId + '/' + = get_role_id(); ?>;
+
+ $.ajax({
+ url: apiURL,
+ method: 'GET',
+ headers: {
+ "X-Requested-With": "XMLHttpRequest"
+ },
+ success: function(response) {
+ setTimeout(function() {
+ $('.loader').fadeOut();
+ $('.loader-mask').delay(350).fadeOut('slow');
+ }, 1000);
+
+ if (response.code === 200 && response.dataStatus === true && response.data !== "") {
+ Swal.fire({
+ title: "Deleted!",
+ icon: "success"
+ });
+ } else if (response.code === 404 && response.dataStatus === false) {
+ console.error('No data found', response);
+ Swal.fire({
+ title: "Failed!",
+ text: response.message,
+ icon: "error"
+ });
+ } else {
+ Swal.fire({
+ title: "Failed!",
+ text: 'Something went wrong! Try later',
+ icon: "error"
+ });
+ }
+ },
+ error: function(xhr, status, error) {
+ setTimeout(function() {
+ $('.loader').fadeOut();
+ $('.loader-mask').delay(350).fadeOut('slow');
+ }, 1000);
+
+ console.error('Error fetching data from API:', error);
+ console.error('Something went wrong! Try later', 'Error');
+ }
+ });
+ }
+ });
+ } else {
+ Swal.fire({
+ title: "Failed!",
+ text: response.message,
+ icon: "error"
+ });
+ }
+}
$('#uploadForm').submit(function() {
@@ -392,7 +435,6 @@ $('#uploadForm').submit(function() {
});
})
-
$('body').on('click', '.reload', function() {
console.log('status');
diff --git a/app/Views/layout/footer.php b/app/Views/layout/footer.php
index 066a324a..700faa5f 100644
--- a/app/Views/layout/footer.php
+++ b/app/Views/layout/footer.php
@@ -243,9 +243,6 @@
let PNCount = parseInt(localStorage.getItem('pullNotificationCount'));
let PACount = parseInt(localStorage.getItem('pendingActionCount'));
- console.log('PNCount', PNCount);
- console.log('PACount', PACount);
-
totalcount = PNCount + PACount
$('#notification_count').html(totalcount);
@@ -319,30 +316,99 @@
}
for (let key in response) {
- pendingActionCount += response[key].length;
+ // console.log(response[key].length)
+ // console.log('type', typeof response[key].length)
+ // console.log('key', response[key])
+ if(response[key].length != 'undefined' && response[key].length != undefined)
+ {
+ pendingActionCount = pendingActionCount + response[key].length;
+ }
}
+ console.log(pendingActionCount);
+
let messagesList = $('#messages-list-2');
messagesList.empty();
- console.log(response.inception)
- console.log('correction', typeof response.inception)
-
if (response.inception) {
- if (Array.isArray(response.inception)) {
- response.inception.forEach(function(item, index) {
+ $.each(response.inception, function(index, item) {
+
+ var queryParams = {
+ client_id: item.client_id,
+ client_policy_id: item.client_policy_id,
+ client_branch_id: item.branch_id,
+ actions: 'inception'
+ };
+
+ const queryString = objectToQueryString(queryParams);
+
+ var url = 'employee/upload?' + queryString
+ ////console.log(url)
+
+
+ var toast_body_css = 'background : #bfd7eb !important;';
+ var toast_head_css = 'background-color : rgb(2, 168, 181) !important; color :#000; border-bottom: 0;';
+ var toast_icon = 'mdi mdi-checkbox-marked-circle mr-auto';
+ var toast_status_word = 'Info';
+
+ if (!item.branch_name.toLowerCase().includes('branch')) {
+
+ //console.log(item.branch_name)
+ item.branch_name += ' branch';
+ }
+
+ ////console.log(item.branch_name);
+
+ var toast_body_data = item.client_name + '( ' + item.branch_name + ' ) ' + ' - ' + item.policy_name;
+
+ ////console.log(toast_body_data);
+
+ var html = `
+
+
+
+ ${toast_status_word}
+
+
+
+ Inception Pending
+ ${toast_body_data}
+
+
+
+
+ `
+
+
+ messagesList.append(html);
+
+ });
+ } else {
+ console.log('response.inception is undefined or null');
+ }
+
+ if (response.correction) {
+ $.each(response.correction, function(index, item) {
+ if (item.batch_export_count == 0 || item.batch_import_count == 0) {
+
var queryParams = {
client_id: item.client_id,
- client_policy_id: item.client_policy_id,
client_branch_id: item.branch_id,
- actions: 'inception'
+ event: 'correction',
+ actions: 'export',
+ insurer_or_tpa: 'tpa',
};
const queryString = objectToQueryString(queryParams);
- var url = 'employee/upload?' + queryString
+ var url = 'employee/upload?' + queryString + '#KYC-DOC-tab'
////console.log(url)
@@ -351,16 +417,101 @@
var toast_icon = 'mdi mdi-checkbox-marked-circle mr-auto';
var toast_status_word = 'Info';
+ var title = 'Correction Pending';
+
+
if (!item.branch_name.toLowerCase().includes('branch')) {
//console.log(item.branch_name)
item.branch_name += ' branch';
+
}
////console.log(item.branch_name);
- var toast_body_data = item.client_name + '( ' + item.branch_name + ' ) ' + ' - ' + item.policy_name;
+ // if (item.batch_export_count > 0) {
+ // title = 'Correction Import Pending';
+ // }
+
+ var toast_body_data = item.client_name + ' - ' + item.branch_name;
+ ////console.log(toast_body_data);
+
+ var html = `
+
+
+
+ ${toast_status_word}
+
+
+
+ ${title}
+ ${toast_body_data}
+
+
+
+
+ `
+
+
+ messagesList.append(html);
+
+ }
+ });
+ }else{
+ console.log('response.correction is undefined or null');
+ }
+
+ if (response.deletion) {
+ $.each(response.deletion, function(index, item) {
+
+ if (item.batch_export_count == 0 || item.batch_import_count == 0) {
+
+
+ var queryParams = {
+
+ client_id: item.client_id,
+ client_policy_id: item.client_policy_id,
+ client_branch_id: item.branch_id,
+ event: 'deletion',
+ actions: 'export',
+ insurer_or_tpa: 'tpa',
+
+ };
+
+ const queryString = objectToQueryString(queryParams);
+
+ var url = 'employee/upload?' + queryString + '#KYC-DOC-tab'
+ ////console.log(url)
+
+
+ var toast_body_css = 'background : #bfd7eb !important;';
+ var toast_head_css = 'background-color : rgb(2, 168, 181) !important; color :#000; border-bottom: 0;';
+ var toast_icon = 'mdi mdi-checkbox-marked-circle mr-auto';
+ var toast_status_word = 'Info';
+ var title = 'Deletion Pending';
+
+
+ if (!item.branch_name.toLowerCase().includes('branch')) {
+
+ //console.log(item.branch_name)
+ item.branch_name += ' branch';
+
+ }
+
+ ////console.log(item.branch_name);
+
+ // if (item.batch_export_count > 0) {
+
+ // title = 'Deletion Import Pending';
+ // }
+
+ var toast_body_data = item.client_name + '( ' + item.branch_name + ' ) ' + ' - ' + item.policy_name;
////console.log(toast_body_data);
var html = `
@@ -373,7 +524,7 @@
- Inception Pending
+ ${title}
${toast_body_data}