diff --git a/app/Config/Constants.php b/app/Config/Constants.php index d86cf312..fb86b921 100755 --- a/app/Config/Constants.php +++ b/app/Config/Constants.php @@ -102,6 +102,7 @@ define('CLAIMS_TEAM_ID', '2'); define('BUSINESS_TEAM_ID', '3'); define('FINANCE_TEAM_ID', '4'); define('SALES_TEAM_ID', '5'); +define('MANAGEMENT_TEAM_ID', '6'); /** * @User Teams Constant diff --git a/app/Config/Routes.php b/app/Config/Routes.php index ccfd0a66..ca0cbe4f 100755 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -12,7 +12,7 @@ $routes->get('/swagger', 'SwaggerController::index', ['filter' => 'authMVC']); // Reminder Mail Notification $routes->get("reminder_mail", "NotificationController::reminder_mail"); -// $routes->get("testing", "ClientController::Testing"); +$routes->get("getClientData", "ClientController::getClientData"); $routes->get("testing_for_review_mail/(:any)", "ClientController::testingForReviewMail/$1"); $routes->get("update-policy-terms-for-corrections", "ClientController::updatePolicyTermsForCorrections"); $routes->get("update_rack_rate_json", "ClientController::updateRackRateJson"); @@ -48,7 +48,6 @@ $routes->group("/user", ["filter" => "authMVC"], function ($routes) { $routes->get("rolesandteams", "UserController::getRolesAndTeams"); }); - $routes->group("/dashboard", ["filter" => "authMVC"], function ($routes) { $routes->get("view", "DashboardController::dashboard"); $routes->get('get-notification', 'DashboardController::getDashboardNotifications'); @@ -56,33 +55,21 @@ $routes->group("/dashboard", ["filter" => "authMVC"], function ($routes) { $routes->get('get-pending-action', 'PendingActionsController::getPendingActions'); }); - $routes->group("/client", ["filter" => "authMVC"], function ($routes) { $routes->get("list", "ClientController::index"); $routes->get("create", "ClientController::clientOnboarding"); $routes->get('deposit/(:num)', 'ClientController::deposit/$1'); $routes->get('remove/(:num)', 'ClientController::removeClient/$1'); + $routes->get("list/(:any)", "ClientController::editClientOnboarding/$1"); // application/config/routes.php // Add a route for the view_Deposit method $routes->get('view_deposit/(:num)', 'ClientController::view_Deposit/$1'); $routes->get('createtransaction', 'ClientController::createtransaction'); - $routes->post('save_deposit', 'ClientController::saveDeposit'); - - - - - - // $routes->get('view_Deposit/(:num)/(:num)','ClientController/view_Deposit/$1/$2'); - - - $routes->get("list/(:any)", "ClientController::editClientOnboarding/$1"); - - $routes->group("notification", ["filter" => "authMVC"], function ($routes) { $routes->post("create", "NotificationController::createNotification"); $routes->post("update_enable", "NotificationController::update_enable"); @@ -141,7 +128,6 @@ $routes->group("/client", ["filter" => "authMVC"], function ($routes) { }); }); - $routes->group("/employee", ["filter" => "authMVC"], function ($routes) { $routes->get("list", "EmployeeController::list"); $routes->get("search", "EmployeeController::search"); @@ -156,13 +142,10 @@ $routes->group("/employee", ["filter" => "authMVC"], function ($routes) { $routes->post("test-rack-rate", "EmployeeController::testRackRate"); }); - $routes->group("/master", ["filter" => "authMVC"], function ($routes) { - $routes->group("insurer", ["filter" => "authMVC"], function ($routes) { - $routes->get("list", "MasterController::insurerList"); $routes->get("remove/(:any)", "MasterController::insurerRemove/$1"); $routes->get("create", "MasterController::insurerOnboarding"); @@ -197,6 +180,7 @@ $routes->group("/master", ["filter" => "authMVC"], function ($routes) { }); $routes->group("kyc", ["filter" => "authMVC"], function ($routes) { + $routes->get("list", "MasterController::kycList"); $routes->get("create", "MasterController::kycOnboarding"); $routes->post("createpost", "MasterController::createKYCInfo"); @@ -205,7 +189,6 @@ $routes->group("/master", ["filter" => "authMVC"], function ($routes) { $routes->get("remove/(:any)", "MasterController::kycRemove/$1"); $routes->get("delete/(:any)", "MasterController::deleteClientKycDocs/$1"); - $routes->group("kycdocs", ["filter" => "authMVC"], function ($routes) { $routes->post("createpost", "MasterController::createKycDocs"); $routes->get("editget/(:any)", "MasterController::editKYCGet/$1"); @@ -217,6 +200,7 @@ $routes->group("/master", ["filter" => "authMVC"], function ($routes) { }); $routes->group("policy", ["filter" => "authMVC"], function ($routes) { + $routes->get("list", "MasterController::policyTypeList"); $routes->get("create", "MasterController::policyTypeOnboarding"); $routes->post("createpost", "MasterController::createPolicyType"); @@ -224,7 +208,6 @@ $routes->group("/master", ["filter" => "authMVC"], function ($routes) { $routes->get("list/(:any)", "MasterController::editPolicyTypeOnboarding/$1"); $routes->get("remove/(:any)", "MasterController::policyTypeRemove/$1"); - $routes->group("policies", ["filter" => "authMVC"], function ($routes) { $routes->post("createpost", "MasterController::createPolicies"); $routes->get("editget/(:any)", "MasterController::editPoliciesGet/$1"); @@ -250,7 +233,6 @@ $routes->group("/master", ["filter" => "authMVC"], function ($routes) { }); }); - $routes->group("/util", ["filter" => "authMVC"], function ($routes) { $routes->get("clients-with-policies", "EmployeeController::getClientWithPolicies"); $routes->get("police-by-insurer/(:any)", "ClientController::getPolicesByInsurerId/$1"); @@ -316,10 +298,10 @@ $routes->group("/util", ["filter" => "authMVC"], function ($routes) { $routes->get("sentTestMail/(:any)", "NotificationController::sentTestMail/$1"); $routes->get("send_manual_reminder/(:any)", "DashboardController::sendManualReminder/$1"); $routes->get("get_client_policy_list_for_remainder/(:any)", "EmployeeController::get_client_policy_list_for_remainder/$1"); + $routes->get("get_client_branch_data/(:any)", "ClientController::get_client_branch_data/$1"); }); - $routes->group("policy_tranction", ["filter" => "authMVC"], function ($routes) { $routes->group("inception", ["filter" => "authMVC"], function ($routes) { @@ -341,6 +323,7 @@ $routes->group("policy_tranction", ["filter" => "authMVC"], function ($routes) { $routes->get("report-varience-list", "PolicyTransactionController::reportVarience"); $routes->get("report-business-list", "PolicyTransactionController::reportBusinessList"); $routes->get("report-finance-list", "PolicyTransactionController::reportFinanceList"); + $routes->get("report-outstanding-list", "PolicyTransactionController::reportOutstanding"); }); $routes->group("statement", ["filter" => "authMVC"], function ($routes) { @@ -355,6 +338,13 @@ $routes->group("policy_tranction", ["filter" => "authMVC"], function ($routes) { }); +$routes->group("leads", ["filter" => "authMVC"], function ($routes) { + + $routes->get("list", "LeadsController::viewLeadsList"); + $routes->post("create", "LeadsController::createLead"); + $routes->get("list/(:any)", "LeadsController::getLeadDataForEdit/$1"); +}); + $routes->get("driveListFiles", "GoogleDriveController::listFiles"); $routes->post('dmsSearch', 'PolicyTransactionController::dmsSearch', ['filter' => 'authMVC']); $routes->get('dmsSearch', 'PolicyTransactionController::dmsSearch', ['filter' => 'authMVC']); @@ -370,7 +360,6 @@ $routes->cli('cli/app_check_list', 'MasterController::appCheckList'); $routes->cli('cli/new_gdrive_token', 'GoogleDriveController::generateNewGoogleDriveAccessToken'); - //Employee login api's $routes->post("/employeeRest/verifyEmployeeNumber", "RestAuthenticationController::verifyEmployeeWithMobileNumber"); $routes->post("/employeeRest/getVerifiedUserData", "RestAuthenticationController::getVerifiedUserData"); diff --git a/app/Controllers/ClientController.php b/app/Controllers/ClientController.php index 6bad026d..020ff116 100755 --- a/app/Controllers/ClientController.php +++ b/app/Controllers/ClientController.php @@ -207,7 +207,7 @@ class ClientController extends AdminController $this->myLogger->logme("info", $mail_send_return2); } } - + }else{ $this->myLogger->logme("error", 'Client HR Mail Configuration not Enable for this client'); } @@ -3458,7 +3458,12 @@ class ClientController extends AdminController public function get_client_policy_data_using_policy_no($policy_no) { $data = $this->clientPolicyModel - ->select('client_policy.*, clients.client_type') + ->select(" + client_policy.*, + clients.client_type, + DATE_FORMAT(client_policy.policy_start_date, '%d/%m/%Y') as policy_start_date, + DATE_FORMAT(client_policy.policy_end_date, '%d/%m/%Y') as policy_end_date + ") ->join('clients', 'client_policy.client_id = clients.id') ->where('client_policy.policy_no', $policy_no) ->where('client_policy.is_active', 1) @@ -3487,4 +3492,27 @@ class ClientController extends AdminController return $this->respond(['status' => false, 'message' => 'No Data Found', 'code' => 404], 200); } } + + public function get_client_branch_data($id = null) + { + if ($id) { + $branch_data = $this->clientBranchModel + ->select('client_branch.*, clients.pan') + ->join('clients', 'client_branch.client_id = clients.id') + ->where(['client_branch.id' => $id, 'client_branch.is_active' => 1]) + ->first(); + $branch_contact_data = $this->levelContactModel->where(['ref_id' => $id, 'contact_type' => 'client', 'is_active' => 1])->orderBy('id','asc')->first(); + return $this->respond(['status' => true, 'code' => 200, 'data' => $branch_data, 'contact' => $branch_contact_data], 200); + } else { + return $this->respond(['status' => false, 'code' => 404, 'message' => 'no data found'], 200); + } + } + + public function getClientData() + { + $client_id = $this->request->getGet('client_id') ?? null; + $result = $this->clientModel->getClientData($client_id); + dd($result); + } + } diff --git a/app/Controllers/DashboardController.php b/app/Controllers/DashboardController.php index 38b727a2..bd126144 100755 --- a/app/Controllers/DashboardController.php +++ b/app/Controllers/DashboardController.php @@ -32,6 +32,8 @@ class DashboardController extends AdminController protected $notificationModel; protected $employeePolicyModel; protected $policyTransactionModel; + protected $policyStatus; + protected $colorShades; protected $myLogger; @@ -48,6 +50,48 @@ class DashboardController extends AdminController $this->myLogger = \Config\Services::mylogger(); + $this->policyStatus = [ + 'under_process' => 'Under Process', + 'client_pending' => 'Client Pending', + 'insurer_pending' => 'Insurer Pending', + 'co_insurer_pending' => 'Co-Insurer Pending', + 'tpa_pending' => 'TPA Pending', + 'validated' => 'Validated', + 'cancelled' => 'Cancelled', + 'instalment_pending' => 'Instalment Pending', + 'completed' => 'Completed', + ]; + + $this->colorShades = [ + + [ + 'linear-gradient(45deg, #66e9eb, #5cc7d2)', // Lighter shade 1 + 'linear-gradient(45deg, #4ce2e5, #45bcc9)', // Lighter shade 2 + 'linear-gradient(45deg, #33dbe0, #2baebd)', // Original shade (slightly lighter) + 'linear-gradient(45deg, #00d6db, #00a8b5)', // Original + 'linear-gradient(45deg, #00bfc4, #00929f)', // Darker shade 1 + 'linear-gradient(45deg, #009ea1, #00767a)' // Darker shade 2 + ], + // Shades for Grenadier + [ + 'linear-gradient(45deg, #ff9d37, #ff7a10)', // Grenadier shade 1 + 'linear-gradient(45deg, #ff8b30, #ff7310)', // Grenadier shade 2 + 'linear-gradient(45deg, #ff8020, #ff5a00)', // Grenadier shade 3 + 'linear-gradient(45deg, #f06d15, #e05505)', // Grenadier shade 4 + 'linear-gradient(45deg, #d85f10, #c04805)', // Grenadier shade 5 + 'linear-gradient(45deg, #b85606, #a04605)' // Grenadier shade 6 + ], + // Shades for SilverChalice + [ + 'linear-gradient(45deg, #a3a8a8, #8f9494)', // SilverChalice shade 1 + 'linear-gradient(45deg, #989d9d, #848989)', // SilverChalice shade 2 + 'linear-gradient(45deg, #7e8484, #686e6e)', // SilverChalice shade 3 + 'linear-gradient(45deg, #6c7676, #545e5e)', // SilverChalice shade 4 + 'linear-gradient(45deg, #5c6363, #434949)', // SilverChalice shade 5 + 'linear-gradient(45deg, #494f4f, #353d3d)' // SilverChalice shade 6 + ] + ]; + } public function dashboard() @@ -70,7 +114,9 @@ class DashboardController extends AdminController $pendingActionsData = $pendingActionsController->getPendingActionsForDashBoard(); $businessTeamData = $this->policyTransactionModel->getBusinessReportList(); $financeTeamData = $this->policyTransactionModel->getFinanceReportList(); - + $businessTeamStatusData = $this->data_construct_for_bds($businessTeamData); + $financeTeamStatusData = $this->data_construct_for_bds($financeTeamData); + $groupedData = []; foreach ($results as $row) { @@ -163,6 +209,10 @@ class DashboardController extends AdminController $data['pendingActionsData'] = $pendingActionsData; $data['businessTeamCount'] = count($businessTeamData) ?? 0; $data['financeTeamCount'] = count($financeTeamData) ?? 0; + $data['businessTeamStatusData'] = $businessTeamStatusData; + $data['financeTeamStatusData'] = $financeTeamStatusData; + $data['policyStatus'] = $this->policyStatus; + $data['colorShades'] = $this->colorShades; // print_r($data);die; $data['page_name'] = 'Dashboard'; @@ -494,5 +544,54 @@ class DashboardController extends AdminController } } + public function data_construct_for_bds($data){ + + $groupedData = [ + 'under_process' => [], + 'client_pending' => [], + 'insurer_pending' => [], + 'co_insurer_pending' => [], + 'tpa_pending' => [], + 'validated' => [], + 'cancelled' => [], + 'instalment_pending' => [], + 'completed' => [], + ]; + + // Loop through results and group them by their status + foreach ($data as $row) { + switch ($row['status']) { + case 'completed': + $groupedData['completed'][] = $row; + break; + case 'cancelled': + $groupedData['cancelled'][] = $row; + break; + case 'client_pending': + $groupedData['client_pending'][] = $row; + break; + case 'insurer_pending': + $groupedData['insurer_pending'][] = $row; + break; + case 'co_insurer_pending': + $groupedData['co_insurer_pending'][] = $row; + break; + case 'tpa_pending': + $groupedData['tpa_pending'][] = $row; + break; + case 'validated': + $groupedData['validated'][] = $row; + break; + case 'instalment_pending': + $groupedData['instalment_pending'][] = $row; + break; + default: + $groupedData['under_process'][] = $row; + break; + } + } + + return $groupedData; + } } diff --git a/app/Controllers/EmpDataServiceController.php b/app/Controllers/EmpDataServiceController.php index 09e81058..20353e2f 100755 --- a/app/Controllers/EmpDataServiceController.php +++ b/app/Controllers/EmpDataServiceController.php @@ -319,6 +319,7 @@ class EmpDataServiceController extends BaseController ->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.is_active', 1) //Live issue changes 17-10-2024 ->where('insurer_excel_export_template.type_name', $export_data['actions']) ->first(); @@ -530,6 +531,7 @@ class EmpDataServiceController extends BaseController ->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.is_active', 1) //Live issue changes 17-10-2024 ->where('insurer_excel_export_template.type_name', $export_data['actions']) ->first(); @@ -665,6 +667,7 @@ class EmpDataServiceController extends BaseController ->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.is_active', 1) //Live issue changes 17-10-2024 ->where('insurer_excel_export_template.type_name', $export_data['actions']) ->first(); @@ -776,6 +779,7 @@ class EmpDataServiceController extends BaseController ->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.is_active', 1) //Live issue changes 17-10-2024 ->where('insurer_excel_export_template.type_name', $export_data['actions']) ->first(); @@ -868,7 +872,7 @@ class EmpDataServiceController extends BaseController }else if($value == 'inception'){ $export_data['event_type'] = 'inception'; - $dependentAdditionData = $this->employeePolicyModel->getInceptionEmployeeDataForExportExcel($export_data); + $inceptionData = $this->employeePolicyModel->getInceptionEmployeeDataForExportExcel($export_data); //Live issue changes 17-10-2024 }else if($value == 'dependent_addition'){ $export_data['event_type'] = 'dependent_addition'; @@ -943,12 +947,13 @@ class EmpDataServiceController extends BaseController $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', 'all') - ->where('insurer_excel_export_template.type_name', $export_data['actions']) - ->first(); + ->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', 'all') + ->where('insurer_excel_export_template.is_active', 1) //Live issue changes 17-10-2024 + ->where('insurer_excel_export_template.type_name', $export_data['actions']) + ->first(); if(!empty($template_json) && $template_json != null){ diff --git a/app/Controllers/EmployeeServiceController.php b/app/Controllers/EmployeeServiceController.php index b045b055..ef99ee20 100755 --- a/app/Controllers/EmployeeServiceController.php +++ b/app/Controllers/EmployeeServiceController.php @@ -1619,9 +1619,17 @@ class EmployeeServiceController extends AdminController } $this->employeeModel->save($value); - $emp_id = $this->employeeModel->getInsertID(); - if($emp_id != 0){ $log_message .= $emp_id; } - else{ $emp_id = $employee[0]['id']; } + if (isset($value['id'])) { + $emp_id = $value['id']; + } else { + $emp_id = $this->employeeModel->getInsertID(); + $log_message .= $emp_id; + } + + //commanded for last insert id is coming from buffer + // $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); @@ -1647,7 +1655,14 @@ class EmployeeServiceController extends AdminController } $this->employeePolicyModel->save($policy_data); - $emp_policy_id = $this->employeePolicyModel->getInsertID(); + if(isset($policy_data['id'])) + { + $emp_policy_id = $policy_data['id']; + }else + { + $emp_policy_id = $this->employeePolicyModel->getInsertID(); + } + if($emp_policy_id != 0)//emp policy inserted { $log_message .= ' with PK ' . $emp_policy_id; @@ -1663,7 +1678,7 @@ class EmployeeServiceController extends AdminController } } - else{ $emp_policy_id = $employee_policy[0]['id']; } + // else{ $emp_policy_id = $employee_policy[0]['id']; } $this->myLogger->logme('error',$log_message); @@ -2004,9 +2019,15 @@ public function employeesEnrollmentInsert($params) } $this->employeeModel->save($value); - $emp_id = $this->employeeModel->getInsertID(); - if($emp_id != 0){ $log_message .= $emp_id; } - else{ $emp_id = $employee['id']; } + if (isset($value['id'])) + { $emp_id = $value['id']; } + else { $emp_id = $this->employeeModel->getInsertID(); + $log_message .= $emp_id; + } + + // $emp_id = $this->employeeModel->getInsertID(); + // if($emp_id != 0){ $log_message .= $emp_id; } + // else{ $emp_id = $employee['id']; } $this->myLogger->logme('error',$log_message); diff --git a/app/Controllers/LeadsController.php b/app/Controllers/LeadsController.php new file mode 100644 index 00000000..9c9d153f --- /dev/null +++ b/app/Controllers/LeadsController.php @@ -0,0 +1,299 @@ +myLogger = \Config\Services::mylogger(); + + $this->clientModel = new ClientModel(); + $this->userModel = new UserModel(); + $this->clientBranchModel = new ClientBranchModel(); + $this->clientPolicyModel = new ClientPolicyModel(); + $this->levelContactModel = new LevelContactModel(); + $this->leadsModel = new LeadsModel(); + $this->policyTypeModel = new PolicyTypeModel(); + $this->kycEntityTypeModel = new KYCEntityTypeModel(); + $this->policyTransactionStatusModel = new PolicyTransactionStatusModel(); + $this->insurerBranchModel = new InsurerBranchModel(); + $this->tpaBranchModel = new TPABranchModel(); + + $this->issuer = [1 => 'JIBS', 2 => 'Nhance']; + $this->clientType = [1 => 'Group', 2 => 'Individual']; + $this->leadType = [1 => 'Fresh', 2 => 'Renewal', 3 => 'Roll Over']; + $this->leadsStatus = [ + 'queued' => 'Queued', + 'qcr_sent' => 'QCR sent', + 'lost' => 'Lost', + 'co_insurer_pending' => 'Co-Insurer Pending', + 'won' => 'Won', + 'completed_with_corrections' => 'Completed with Corrections', + 'completed_without_corrections' => 'Completed w/o Corrections', + ]; + } + + public function viewLeadsList() + { + $data['page_name'] = 'Leads'; + + // Set basic data + $data['issuer'] = $this->issuer; + $data['client_type'] = $this->clientType; + $data['lead_type'] = $this->leadType; + $data['lead_status'] = $this->leadsStatus; + + // Fetch policy types and entity data + $data['policy_type'] = $this->policyTypeModel->where('is_active', 1)->findAll(); + $data['entity'] = $this->kycEntityTypeModel->where('is_active', 1)->findAll(); + + // Fetch insurer and TPA branch data + $data['insurer'] = $this->insurerBranchModel->getInsurerBranchesWithInsurerNames(); + $data['tpa'] = $this->tpaBranchModel->getTpaBranchesWithTpaNames(); + + // Fetch sales team members who are active in team 5 + $data['salse_team'] = $this->userModel + ->select('user_profiles.*') + ->join('user_teams', 'user_profiles.id = user_teams.user_id') + ->where('user_teams.team_id', 5) + ->where('user_teams.is_active', 1) + ->where('user_profiles.is_active', 1) + ->findAll(); + + // dd($data); + + // Fetch leads data + $data['lead_data_list'] = $this->leadsModel->getLeadDataForLising(); + + // Load layout and pass data + $this->loadLayout('leads_list', $data); + } + + public function createLead() + { + // print_r($this->request->getPost()); die; + $id = $this->request->getPost('id'); + $data = $this->prepareLeadData(); + // print_r($this->request->getPost()); die; + + + if (!$id) { + return $this->insertNewLead($data); + } else { + return $this->updateOldLead($id, $data); + } + } + + private function prepareLeadData() + { + $data = $this->request->getPost(); + + if($data['lead_type'] == 2){ + $client_data = $this->clientModel->where('id', $data['client_id'])->where('is_active', 1)->first(); + $data['client_name'] = $client_data['client_name']; + $data['client_short_name'] = $client_data['short_name']; + $data['entity_type_id'] = $client_data['entity_type_id']; + $data['client_type'] = $client_data['client_type']; + }else{ + $data['client_id'] = 0; + $data['client_branch_id'] = 0; + $data['source_policy_id'] = 0; + } + + $data['client_code'] = generate_client_code(); + if($data['client_code'] == 2){ + $data['client_code'] = generate_client_code('IC'); + } + + $data = $this->prepareMultipleLeadData($data); + // print_r($data); die; + return $data; + } + + private function prepareMultipleLeadData($data) + { + $processedData = []; + foreach($data['policy_type_id'] as $index => $value){ + + // Separate the insurer and insurer branch + list($insurer_branch_id, $insurer_id) = explode('-',$data['insurer'][$index]); + // Separate the tpa and tpa branch + list($tpa_branch_id, $tpa_id) = explode('-',$data['tpa'][$index]); + + // Separate the insurer and insurer branch, handle missing or invalid data + if (isset($data['proposed_insurer'][$index]) && strpos($data['proposed_insurer'][$index], '-') !== false) { + list($proposed_insurer_branch_id, $proposed_insurer_id) = explode('-', $data['proposed_insurer'][$index]); + } else { + $proposed_insurer_branch_id = 0; + $proposed_insurer_id = 0; + } + + // Separate the TPA and TPA branch, handle missing or invalid data + if (isset($data['proposed_tpa'][$index]) && strpos($data['proposed_tpa'][$index], '-') !== false) { + list($proposed_tpa_branch_id, $proposed_tpa_id) = explode('-', $data['proposed_tpa'][$index]); + } else { + $proposed_tpa_branch_id = 0; + $proposed_tpa_id = 0; + } + + if(!empty($data['policy_start_date'][$index])){ + $policy_start_date = change_date_format($data['policy_start_date'][$index], 'd/m/Y', 'Y-m-d'); + }else{ + $policy_start_date = null; + } + + if(!empty($data['policy_end_date'][$index])){ + $policy_end_date = change_date_format($data['policy_end_date'][$index], 'd/m/Y', 'Y-m-d'); + }else{ + $policy_end_date = null; + } + + $processedData[] = [ + 'lead_type' => $data['lead_type'], + 'issuer' => $data['issuer'], + 'client_type' => $data['client_type'], + 'client_name' => $data['client_name'], + 'client_short_name' => $data['client_short_name'], + 'entity_type_id' => $data['entity_type_id'], + 'client_code' => $data['client_code'], + 'pan' => $data['pan'], + 'gst' => $data['gst'], + 'branch_name' => $data['branch_name'], + 'branch_code' => $data['branch_code'], + 'contact_person_name' => $data['contact_person_name'], + 'contact_person_mobile' => $data['contact_person_mobile'], + 'client_id' => $data['client_id'] ?? 0, + 'client_branch_id' => $data['client_branch_id'] ?? 0, + 'source_policy_id' => $data['source_policy_id'] ?? 0, + 'policy_type_id' => $value, + 'salse_person_id' => $data['salse_person_id'] ?? 0, + + 'insurer_id' => $insurer_id ?? 0, + 'insurer_branch_id' => $insurer_branch_id ?? 0, + 'tpa_id' => $tpa_id ?? 0, + 'tpa_branch_id' => $tpa_branch_id ?? 0, + 'policy_start_date' => $policy_start_date, + 'policy_end_date' => $policy_end_date, + 'no_of_lives' => $data['no_of_lives'][$index] ?? null, + 'claims' => $data['claims'][$index] ?? null, + 'location' => $data['location'][$index] ?? null, + 'proposed_insurer_id' => $proposed_insurer_id ?? 0, + 'proposed_insurer_branch_id' => $proposed_insurer_branch_id ?? 0, + 'proposed_tpa_id' => $proposed_tpa_id ?? 0, + 'proposed_tpa_branch_id' => $proposed_tpa_branch_id ?? 0, + + 'status' => $data['status'] ?? null, + 'notes' => $data['notes'] ?? null, + ]; + } + + return $processedData; + } + + private function insertNewLead($data) + { + $insertCount = []; + foreach($data as $value){ + $insert = $this->leadsModel->insert($value); + $insertCount[] = $insert; + $this->insertLeadStatus($insert, $value['status'], 3); + } + + if (count($insertCount) > 0) { + return $this->respond(['status' => true, 'lead_id' => $insert, 'message' => 'New Lead created successfully', 'data' =>$data], 200); + } + + return $this->respond(['status' => false, 'lead_id' => $insert, 'message' => "Failed to create Lead", 'data' =>$data], 200); + } + + private function updateOldLead($id, $data) + { + if ($this->leadsModel->where('id', $id)->set($data[0])->update()) { + $this->insertLeadStatus($id, $data[0]['status'], 3); + return $this->respond(['status' => true, 'lead_id' => $id, 'message' => "Lead updated successfully", 'data' =>$data], 200); + } + return $this->respond(['status' => false, 'lead_id' => $id, 'message' => "Failed to update Lead", 'data' =>$data], 200); + } + + // Get the Single Lead data for edit + public function getLeadDataForEdit($id) + { + + $data = $this->leadsModel + ->where('leads.id', $id) + ->where('leads.is_active', 1) + ->first(); + + if(!empty($data['policy_start_date'])){ + $data['policy_start_date'] = change_date_format($data['policy_start_date'], 'Y-m-d', 'd/m/Y'); + }else{ + $data['policy_start_date'] = null; + } + + if(!empty($data['policy_end_date'])){ + $data['policy_end_date'] = change_date_format($data['policy_end_date'], 'Y-m-d', 'd/m/Y'); + }else{ + $data['policy_end_date'] = null; + } + + if($data){ + return $this->respond(['status' => true, 'data' => $data], 200); + }else{ + return $this->respond(['status' => false], 200); + } + + } + + private function insertLeadStatus($primaryKey, $status, $statusType) + { + $statusData = [ + 'policy_tran_id' => $primaryKey, + 'status' => $status, + 'status_type' => $statusType, + 'created_by' => get_session_userid(), + ]; + $this->policyTransactionStatusModel->insert($statusData); + } + + +} diff --git a/app/Controllers/PolicyTransactionController.php b/app/Controllers/PolicyTransactionController.php index 1eacb67f..0f735bdc 100644 --- a/app/Controllers/PolicyTransactionController.php +++ b/app/Controllers/PolicyTransactionController.php @@ -101,9 +101,10 @@ class PolicyTransactionController extends BaseController // Policy Transaction Inception public function viewInception() - { + { $data['page_name'] = 'Policy'; - + + // Static arrays for dropdowns $data['issuer'] = [1 => 'JIBS', 2 => 'Nhance']; $data['client_type'] = [1 => 'Group', 2 => 'Individual']; $data['issuing_type'] = [1 => 'Fresh', 2 => 'Renewal', 3 => 'Roll Over']; @@ -143,8 +144,8 @@ class PolicyTransactionController extends BaseController 'policy_start_date' => 'Policy Start Date', 'policy_end_date' => 'Policy End Date', ]; - - //filter datas + + // Filter data $start_date = $this->request->getGet('start_date'); $end_date = $this->request->getGet('end_date'); $client_id = $this->request->getGet('client_id'); @@ -153,28 +154,44 @@ class PolicyTransactionController extends BaseController $date_type = $this->request->getGet('date_type'); $issuer = $this->request->getGet('issuer'); $status = $this->request->getGet('status'); - - $start_date = (!isset($start_date) || $start_date === '' || $start_date === null) ? 0 : $start_date; - $end_date = (!isset($end_date) || $end_date === '' || $end_date === null) ? 0 : $end_date; - - $client_id = (!isset($client_id) || $client_id === '' || $client_id === null) ? 0 : $client_id; - $insurer_id = (!isset($insurer_id) || $insurer_id === '' || $insurer_id === null) ? 0 : $insurer_id; - $policy_type_id = (!isset($policy_type_id) || $policy_type_id === '' || $policy_type_id === null) ? 0 : $policy_type_id; - $date_type = (!isset($date_type) || $date_type === '' || $date_type === null) ? 0 : $date_type; - $issuer = (!isset($issuer) || $issuer === '' || $issuer === null) ? 0 : $issuer; - $status = (!isset($issuer) || $status === '' || $status === null) ? 0 : $status; - - - $data['inception_data_list'] = $this->policyTransactionModel->getInceptionTranctionListData($start_date, $end_date, $client_id, $insurer_id, $policy_type_id, $date_type, $issuer, $status); - + + // Handle null or empty values + $start_date = empty($start_date) ? 0 : $start_date; + $end_date = empty($end_date) ? 0 : $end_date; + $client_id = empty($client_id) ? 0 : $client_id; + $insurer_id = empty($insurer_id) ? 0 : $insurer_id; + $policy_type_id = empty($policy_type_id) ? 0 : $policy_type_id; + $date_type = empty($date_type) ? 0 : $date_type; + $issuer = empty($issuer) ? 0 : $issuer; + $status = empty($status) ? 0 : $status; // Corrected from `$issuer` + + // Fetch inception data list + $data['inception_data_list'] = $this->policyTransactionModel->getInceptionTranctionListData( + $start_date, + $end_date, + $client_id, + $insurer_id, + $policy_type_id, + $date_type, + $issuer, + $status + ); + + // Fetch additional data $data['client'] = $this->clientModel->where('is_active', 1)->findAll(); $data['policy_type'] = $this->policyTypeModel->where('is_active', 1)->findAll(); $data['insurer'] = $this->insurerModel->where('is_active', 1)->findAll(); - $data['entity'] = $this->kycEntityTypeModel->where('is_active', 1)->findAll(); + $data['entity'] = $this->kycEntityTypeModel->where('is_active', 1)->findAll(); $data['policy_types'] = $this->policyTypeModel->where('is_active', 1)->findAll(); - $data['insurer_branch'] = $this->insurerBranchModel->getInsurerBranchesWithInsurerNames(); - $data['tpa'] = $this->tpaBranchModel->getTpaBranchesWithTpaNames(); + $data['insurer_branch'] = $this->insurerBranchModel->getInsurerBranchesWithInsurerNames(); + $data['tpa'] = $this->tpaBranchModel->getTpaBranchesWithTpaNames(); + + // Fetch PP Teams Data + $data['ppTeamsData'] = $this->userModel + ->where('is_active', 1) + ->findAll(); + // Fetch Sales Team $data['salse_team'] = $this->userModel ->select('user_profiles.*') ->join('user_teams', 'user_profiles.id = user_teams.user_id') @@ -182,16 +199,22 @@ class PolicyTransactionController extends BaseController ->where('user_teams.is_active', 1) ->where('user_profiles.is_active', 1) ->findAll(); - + + // Fetch ACM $data['ACM'] = $this->userModel - ->where('user_profiles.role', 3) - ->where('user_profiles.is_active', 1) + ->where('role', 3) // Assuming `role` is in `user_profiles` + ->where('is_active', 1) ->findAll(); - - $this->loadLayout('policy_transaction_inception_list', $data); + // echo '
';
+        // print_r($data['ppTeamsData']); die;
+        
+        // dd($data);
+    
+        // Load view
+        $this->loadLayout('policy_transaction_inception_list', $data);
     }
-
+    
     // policy Transaction Create function start
     public function createInceptionPolicy()
     {
@@ -297,8 +320,8 @@ class PolicyTransactionController extends BaseController
             $data['ct_type'] = 1;
         }
 
-        $month = '01-'.(string)$this->request->getPost('month');
-        $data['month'] = empty($data['month']) ? null : date('Y-m-d', strtotime($month));    
+        // $month = '01-'.(string)$this->request->getPost('month');
+        // $data['month'] = empty($data['month']) ? null : date('Y-m-d', strtotime($month));    
     
         // Determine $is_addon value
         $data['is_addon'] = in_array($data['policy_type_id'], [1, 2, 6, 7]) ? 1 :
@@ -729,6 +752,8 @@ class PolicyTransactionController extends BaseController
     
             if(!empty($data['month'])){
                 $data['month'] =  change_date_format($data['month'], 'Y-m-d', 'M/Y');
+            }else{
+                $data['month'] = null;
             }
     
             
@@ -744,7 +769,7 @@ class PolicyTransactionController extends BaseController
             ->findAll();
 
        
-           $data['base_policy_data'] = $this->clientPolicyModel
+        $data['base_policy_data'] = $this->clientPolicyModel
                 ->select('client_policy.*, policy_type.policy_type')
                 ->join('policy_type', 'policy_type.id = client_policy.policy_type_id')
                 ->where('client_policy.client_id', $data['client_id'])
@@ -752,13 +777,18 @@ class PolicyTransactionController extends BaseController
                 ->whereIn('client_policy.policy_type_id', [2, 3])
                 ->where('client_policy.is_active', 1)
                 ->findAll();
-
+        
         $data['pt_files'] = $this->PTFileModel
-                        ->join('policy_transaction', 'pt_files.pt_id = policy_transaction.id')
-                        ->where('pt_files.pt_id', $id)
-                        ->where('pt_files.is_active', 1)
+                ->join('policy_transaction', 'pt_files.pt_id = policy_transaction.id')
+                ->where('pt_files.pt_id', $id)
+                ->where('pt_files.is_active', 1)
+                ->findAll();
+                
+        $data['pt_co_share_details'] = $this->PTCOShareDetailsModel
+                        ->where('pt_id', $id)
+                        ->where('is_active', 1)
+                        ->orderBy('id', 'asc')
                         ->findAll();
-        $data['pt_co_share_details'] = $this->PTCOShareDetailsModel->where('pt_id', $id)->where('is_active', 1)->findAll();
         $data['emp_data'] = $this->employeeModel
                         ->select('employees.*, employee_polices.id as emp_policy_id')
                         ->join('employee_polices', 'employees.id = employee_polices.employee_id', 'left')
@@ -1146,9 +1176,9 @@ class PolicyTransactionController extends BaseController
                         'created_by' => get_session_userid(),
                     ];
 
-                    $uploadFilePath = $uploadFilePath . '/' . $uploadedFileName;
+                    // $uploadFilePath = $uploadFilePath . '/' . $uploadedFileName;
 
-                    $GoogleDriveController->uploadFiletoGdrive(client_policy_id: $client_policy_id, doc_type: 'POLICY', file_path: $uploadFilePath, file_name: $uploadedFileName);
+                    // $GoogleDriveController->uploadFiletoGdrive(client_policy_id: $client_policy_id, doc_type: 'POLICY', file_path: $uploadFilePath, file_name: $uploadedFileName);
 
                     // Insert into database
                     $insert = $this->PTFileModel->insert($docData);
@@ -1374,8 +1404,6 @@ class PolicyTransactionController extends BaseController
         $date_type = (!isset($date_type) || $date_type === '' || $date_type === null) ? 0 : $date_type;      
         $issuer = (!isset($issuer) || $issuer === '' || $issuer === null) ? 0 : $issuer;   
 
-
-
         $data['varience_list'] = $this->policyTransactionModel->getVarienceReportLIst($start_date, $end_date, $client_id, $insurer_id, $policy_type_id, $date_type, $issuer);
         $this->loadLayout('variance_report_list', $data); 
 
@@ -1462,6 +1490,46 @@ class PolicyTransactionController extends BaseController
         $this->loadLayout('finance_team_list', $data); 
     }
 
+    public function reportOutstanding()
+    {   
+        $data['page_name'] = 'Outstanding Report';
+
+        $data['issuer'] = [1 => 'JIBS', 2 => 'Nhance'];
+        $data['insurer'] = $this->insurerModel->where('is_active', 1)->findAll();
+        $data['policy_types'] = $this->policyTypeModel->where('is_active', 1)->findAll();
+        $data['clients'] = $this->clientModel->where('is_active', 1)->findAll();
+        $data['date_type'] = [
+            'policy_issue_date' => 'Policy Issue Date',
+            'policy_start_date' => 'Policy Start Date',
+            'policy_end_date' => 'Policy End Date',
+            'data_received_date' => 'Data Received Date',
+            'closure_date' => 'Closure Date',
+        ];
+
+        //filter datas
+        $start_date = $this->request->getGet('start_date');
+        $end_date = $this->request->getGet('end_date');
+        $client_id = $this->request->getGet('client_id');
+        $insurer_id = $this->request->getGet('insurer_id');
+        $policy_type_id = $this->request->getGet('policy_type_id');
+        $date_type = $this->request->getGet('date_type');
+        $issuer = $this->request->getGet('issuer');
+        
+        $start_date = (!isset($start_date) || $start_date === '' || $start_date === null) ? 0 : $start_date;
+        $end_date = (!isset($end_date) || $end_date === '' || $end_date === null) ? 0 : $end_date;
+        
+        $client_id = (!isset($client_id) || $client_id === '' || $client_id === null) ? 0 : $client_id;
+        $insurer_id = (!isset($insurer_id) || $insurer_id === '' || $insurer_id === null) ? 0 : $insurer_id;      
+        $policy_type_id = (!isset($policy_type_id) || $policy_type_id === '' || $policy_type_id === null) ? 0 : $policy_type_id;      
+        $date_type = (!isset($date_type) || $date_type === '' || $date_type === null) ? 0 : $date_type;      
+        $issuer = (!isset($issuer) || $issuer === '' || $issuer === null) ? 0 : $issuer;   
+
+        $data['outstanting_list'] = $this->policyTransactionModel->getOutstandingReportLIst($start_date, $end_date, $client_id, $insurer_id, $policy_type_id, $date_type, $issuer);
+        // dd($this->policyTransactionModel->getLastQuery());
+        // dd($data);
+        $this->loadLayout('outstanding_report_list', $data); 
+
+    }
 
     //---------------------------------------------------------------------------------------------------
 
diff --git a/app/Helpers/excel_util_helper.php b/app/Helpers/excel_util_helper.php
index 90c1c64e..6de54c74 100755
--- a/app/Helpers/excel_util_helper.php
+++ b/app/Helpers/excel_util_helper.php
@@ -1133,7 +1133,10 @@ if (!function_exists('premium_calculation_manager'))
             $insurer = ($insurer->find($policy_terms['insurer_id']));
             if($insurer['addition_add_day'] == true)
             {
-                $emp_data['policy_details']['date_coverage'] = (new DateTime($emp_data['policy_details']['date_coverage']))->modify('+1 day')->format('Y-m-d');
+                // $emp_data['policy_details']['date_coverage'] = (new DateTime($emp_data['policy_details']['date_coverage']))->modify('+1 day')->format('Y-m-d');
+
+                 $emp_data['policy_details']['date_coverage'] = isset($emp_data['policy_details']['date_coverage']) && $emp_data['policy_details']['date_coverage'] != '' && $emp_data['policy_details']['date_coverage'] != null ? 
+                    (new DateTime($emp_data['policy_details']['date_coverage']))->modify('+1 day')->format('Y-m-d') : null ;
             }
         }
         // dd($emp_data);
diff --git a/app/Helpers/sendMailNotification.php b/app/Helpers/sendMailNotification.php
index c8d65de8..6a729c56 100755
--- a/app/Helpers/sendMailNotification.php
+++ b/app/Helpers/sendMailNotification.php
@@ -234,13 +234,11 @@ class sendMailNotification
                             $policy_name = $inner_item['policy_name'];
                             
                             if ($inner_item['relationship'] == 'Self') {
-                                $emp_code = ' (' . $inner_item['emp_code'] . ')';
+                                $emp_code = '(' . $inner_item['emp_code'] . ')';
                                 $mail = $inner_item['email_corporate'];
-                            } else {
-                                $emp_code = '';
-                            }
+                                $name = $inner_item['name'];
+                            } 
 
-                            
                             $si = '';
                             $premium = '';
                             $gst_forself = '';
@@ -251,7 +249,7 @@ class sendMailNotification
                             }
                     
                             $temp_data .= '';
-                            $temp_data .= '' . $inner_item['name'] . $emp_code . '';
+                            $temp_data .= '' . $inner_item['name'] . ($inner_item['relationship'] == 'Self' ? ' (' . $inner_item['emp_code'] . ')' : '') . '';
                             $temp_data .= '' . $inner_item['relationship'] . '';
                             $temp_data .= '' . \DateTime::createFromFormat('Y-m-d', $inner_item['dob'])->format('d-m-Y') . '';
                             $temp_data .= '' . $si . '';
diff --git a/app/Helpers/utility_helper.php b/app/Helpers/utility_helper.php
index 6e627287..f42e3c32 100755
--- a/app/Helpers/utility_helper.php
+++ b/app/Helpers/utility_helper.php
@@ -466,3 +466,12 @@ function numberToWords($number)
 
     return $number; // Fallback for numbers beyond the supported range
 }
+
+if (!function_exists('print_rr')) {
+    function print_rr($data)
+    {
+        echo "
";
+        print_r($data);
+        echo "
"; + } +} \ No newline at end of file diff --git a/app/Models/ClientModel.php b/app/Models/ClientModel.php index e188b5bd..3b40a3fb 100755 --- a/app/Models/ClientModel.php +++ b/app/Models/ClientModel.php @@ -114,5 +114,96 @@ class ClientModel extends Model } + + public function getClientData($client_id = null) + { + // Load the database if not already loaded + $db = \Config\Database::connect(); + + // Clients query + $clientQuery = $db->table('clients') + ->groupStart() // Start grouping OR conditions + ->where('client_type IS NULL OR client_type = ""') + ->orWhere('entity_type_id IS NULL OR entity_type_id = ""') + ->orWhere('client_name IS NULL OR client_name = ""') + ->orWhere('short_name IS NULL OR short_name = ""') + ->orWhere('pan IS NULL OR pan = ""') + ->groupEnd(); // End grouping OR conditions + + if ($client_id) { + // If client_id is passed, fetch data for this particular client + $clientQuery->where('id', $client_id); + } + + $clients = $clientQuery->get()->getResultArray(); + + // Client Branch query + $branchQuery = $db->table('client_branch') + ->groupStart() + ->where('branch_name IS NULL OR branch_name = ""') + ->orWhere('branch_code IS NULL OR branch_code = ""') + ->orWhere('gst IS NULL OR gst = ""') + ->orWhere('units IS NULL OR units = ""') + ->groupEnd(); + + if ($client_id) { + // Add filter for particular client's branches if client_id is passed + $branchQuery->where('client_id', $client_id); + } + + $clientBranches = $branchQuery->get()->getResultArray(); + + // Client Policy query + $policyQuery = $db->table('client_policy') + ->groupStart() + ->where('client_id IS NULL OR client_id = ""') + ->orWhere('client_branch_id IS NULL OR client_branch_id = ""') + ->orWhere('policy_id IS NULL OR policy_id = ""') + ->orWhere('policy_type_id IS NULL OR policy_type_id = ""') + ->orWhere('insurer_id IS NULL OR insurer_id = ""') + ->orWhere('insurer_branch_id IS NULL OR insurer_branch_id = ""') + ->orWhere('tpa_id IS NULL OR tpa_id = ""') + ->orWhere('tpa_branch_id IS NULL OR tpa_branch_id = ""') + ->orWhere('policy_start_date IS NULL OR policy_start_date = ""') + ->orWhere('policy_end_date IS NULL OR policy_end_date = ""') + ->orWhere('policy_no IS NULL OR policy_no = ""') + ->orWhere('cd_ac_no IS NULL OR cd_ac_no = ""') + ->orWhere('policy_terms IS NULL OR policy_terms = ""') + ->orWhere('gst IS NULL OR gst = ""') + ->groupEnd(); + + if ($client_id) { + // Add filter for particular client's policies if client_id is passed + $policyQuery->where('client_id', $client_id); + } + + $clientPolicies = $policyQuery->get()->getResultArray(); + + // Client RM query + $rmQuery = $db->table('client_rm') + ->groupStart() + ->where('client_id IS NULL OR client_id = ""') + ->orWhere('user_id IS NULL OR user_id = ""') + ->orWhere('level IS NULL OR level = ""') + ->groupEnd(); + + if ($client_id) { + // Add filter for particular client's RM if client_id is passed + $rmQuery->where('client_id', $client_id); + } + + $clientRms = $rmQuery->get()->getResultArray(); + + // Combine all results into a single array + $result = [ + 'clients' => $clients, + 'client_branches' => $clientBranches, + 'client_policies' => $clientPolicies, + 'client_rms' => $clientRms + ]; + + return $result; + } + } diff --git a/app/Models/LeadsModel.php b/app/Models/LeadsModel.php new file mode 100644 index 00000000..239ce3c5 --- /dev/null +++ b/app/Models/LeadsModel.php @@ -0,0 +1,108 @@ +select(' + leads.*, + kyc_entity_type.name as entity_type, + policy_type.policy_type, + user_profiles.first_name as salse_person_name + ') + ->join('kyc_entity_type', 'leads.entity_type_id = kyc_entity_type.id', 'left') + ->join('user_profiles', 'leads.salse_person_id = user_profiles.id', 'left') + ->join('policy_type', 'leads.policy_type_id = policy_type.id', 'left') + ->where('leads.is_active', 1) + ->where('leads.is_active', 1) + ->where('leads.is_active', 1) + ->orderBy('id', 'desc') + ->findAll(); + + } + + +} diff --git a/app/Models/PolicyTransactionModel.php b/app/Models/PolicyTransactionModel.php index dca5d9b4..3fa28edd 100644 --- a/app/Models/PolicyTransactionModel.php +++ b/app/Models/PolicyTransactionModel.php @@ -565,7 +565,8 @@ class PolicyTransactionModel extends Model 'policy_transaction.action_type as action_type_full', 'pt_co_share_details.bp_amt', 'pt_co_share_details.tp_amt', - 'pt_co_share_details.tep_amt' + 'pt_co_share_details.tep_amt', + 'policy_transaction.status' ]) ->join('pt_co_share_details', 'policy_transaction.id = pt_co_share_details.pt_id', 'left') ->join('clients', 'clients.id = policy_transaction.client_id', 'left') @@ -573,7 +574,7 @@ class PolicyTransactionModel extends Model ->join('client_policy', 'policy_transaction.client_policy_id = client_policy.id', 'left') ->join('policy_type', 'policy_transaction.policy_type_id = policy_type.id', 'left') ->where('policy_transaction.is_active', 1) - ->where('policy_transaction.status', 'completed') + // ->where('policy_transaction.status', 'completed') ->where('pt_co_share_details.bp_amt IS NULL OR pt_co_share_details.bp_amt = 0'); if ($start_date != 0 && $end_date != 0 && $date_type != 0) { @@ -633,7 +634,8 @@ class PolicyTransactionModel extends Model END AS action_type, policy_transaction.action_type AS action_type_full, pt_co_share_details.exp_amt, - pt_co_share_details.variance + pt_co_share_details.variance, + policy_transaction.status ") ->join('pt_co_share_details', 'policy_transaction.id = pt_co_share_details.pt_id', 'left') ->join('clients', 'clients.id = policy_transaction.client_id', 'left') @@ -641,7 +643,7 @@ class PolicyTransactionModel extends Model ->join('client_policy', 'policy_transaction.client_policy_id = client_policy.id', 'left') ->join('policy_type', 'policy_transaction.policy_type_id = policy_type.id', 'left') ->where('policy_transaction.is_active', 1) - ->where('policy_transaction.status', 'completed') + // ->where('policy_transaction.status', 'completed') ->where('COALESCE(pt_co_share_details.agreed_bp_per, 0) + COALESCE(pt_co_share_details.agreed_tp_per, 0) + COALESCE(pt_co_share_details.agreed_tep_per, 0) = 0') ->where('COALESCE(pt_co_share_details.actual_bp_amt, 0) + COALESCE(pt_co_share_details.actual_tp_amt, 0) + COALESCE(pt_co_share_details.actual_tep_amt, 0) = 0') ->where('COALESCE(pt_co_share_details.actual_bp_brokerage_amt, 0) + COALESCE(pt_co_share_details.actual_tp_brokerage_amt, 0) + COALESCE(pt_co_share_details.actual_tep_brokerage_amt, 0) = 0'); @@ -687,4 +689,103 @@ class PolicyTransactionModel extends Model return $builder->get()->getResultArray(); } + + public function getOutstandingReportList($start_date = 0, $end_date = 0, $client_id = 0, $insurer_id = 0, $policy_type_id = 0, $date_type = 0, $issuer = 0, $status = 0) + { + $builder = $this->db->table('policy_transaction') + ->select(" + policy_transaction.id, + clients.client_name, + insurers.name AS insurer_name, + policy_type.policy_type, + policy_transaction.policy_no, + policy_transaction.endorsement_no, + CASE + WHEN policy_transaction.action_type = 'inception' THEN 'I' + ELSE 'E' + END AS action_type, + pt_co_share_details.exp_amt, + pt_co_share_details.variance, + insurer_statements.invoice_amount, + insurer_statements.invoice_status, + + ROUND((pt_co_share_details.actual_bp_brokerage_amt + pt_co_share_details.actual_tp_brokerage_amt + pt_co_share_details.actual_tep_brokerage_amt), 2) AS realization_amount2, + + ( + SELECT + (SUM(inv_payment_details.inv_amt) + SUM(inv_payment_details.tds)) AS realization_amount + FROM + inv_payment_details + WHERE + inv_payment_details.statement_id = insurer_statements.id + AND inv_payment_details.is_active = 1 + + ) AS realization_amount, + + ROUND( + insurer_statements.invoice_amount - + ( + SELECT + (SUM(inv_payment_details.inv_amt) + SUM(inv_payment_details.tds)) + FROM + inv_payment_details + WHERE + inv_payment_details.statement_id = insurer_statements.id + AND inv_payment_details.is_active = 1 + ), + 2) AS outstanding_amount + ") + ->join('pt_co_share_details', 'policy_transaction.id = pt_co_share_details.pt_id', 'left') + ->join('insurer_statements', 'pt_co_share_details.statement_id = insurer_statements.id', 'left') + ->join('inv_payment_details', 'insurer_statements.id = inv_payment_details.statement_id', 'left') + ->join('clients', 'clients.id = policy_transaction.client_id', 'left') + ->join('insurers', 'pt_co_share_details.insurer_id = insurers.id', 'left') + ->join('client_policy', 'policy_transaction.client_policy_id = client_policy.id', 'left') + ->join('policy_type', 'policy_transaction.policy_type_id = policy_type.id', 'left') + ->where('policy_transaction.is_active', 1); + + // Date range filtering + if ($start_date != 0 && $end_date != 0 && $date_type != 0) { + $startDate = date('Y-m-d 00:00:00', strtotime($start_date)); + $endDate = date('Y-m-d 23:59:59', strtotime($end_date)); + + $builder->where('policy_transaction.' . $date_type . '>=', $startDate) + ->where('policy_transaction.' . $date_type . '<=', $endDate); + } else { + $fromDate = date('Y-m-d', strtotime('-30 days')); + $toDate = date('Y-m-d 23:59:59'); + + $builder->where('policy_transaction.created_at >=', $fromDate) + ->where('policy_transaction.created_at <=', $toDate); + } + + // Additional filters + if ($client_id != 0) { + $builder->where('policy_transaction.client_id', $client_id); + } + + if ($insurer_id != 0) { + $builder->where('policy_transaction.insurer_id', $insurer_id); + } + + if ($policy_type_id != 0) { + $builder->where('client_policy.policy_type_id', $policy_type_id); + } + + if ($issuer != 0) { + $builder->where('policy_transaction.issuer', $issuer); + } + + if ($status != 0) { + $builder->where('policy_transaction.status', $status); + } + + // Filter where outstanding_amount is not null + $builder->having('outstanding_amount IS NOT NULL'); + + $builder->orderBy('policy_transaction.id', 'desc'); + + return $builder->get()->getResultArray(); + } + } diff --git a/app/Views/DashBoard.php b/app/Views/DashBoard.php index 89a5406f..16f0ec66 100755 --- a/app/Views/DashBoard.php +++ b/app/Views/DashBoard.php @@ -201,7 +201,7 @@ body { Enrolment - +
- +
diff --git a/app/Views/bds_dash.php b/app/Views/bds_dash.php index 3e62985f..89a92413 100644 --- a/app/Views/bds_dash.php +++ b/app/Views/bds_dash.php @@ -123,29 +123,20 @@ body{ margin-top: 0; margin-bottom: 5px; } - -.modal-right{ - width: 100% !important; - justify-content: normal !important; -} - -.modal-body { - max-height: 100vh; - overflow-y: auto; - padding-left: 25px !important; - padding-right: 25px !important; - padding-top: 10px !important; - padding-bottom: 35% !important; -} -
-
- -
-
+ + +
+ + + +
+
Business Team Pending

@@ -155,12 +146,37 @@ body{
+ $value) { + $colorSetIndex = floor($index / $shadeCount) % $colorSetCount; // Reset color set after each set + $shadeIndex = $index % $shadeCount; // Cycle through shades within the set + + // Get the background color for the current tile + $bgColor = $colorShades[$colorSetIndex][$shadeIndex]; + ?> + + + + - + -
-
+
+
Finance Team Pending

@@ -170,8 +186,35 @@ body{
+ $value) { + $colorSetIndex = floor($index / $shadeCount) % $colorSetCount; // Reset color set after each set + $shadeIndex = $index % $shadeCount; // Cycle through shades within the set + + // Get the background color for the current tile + $bgColor = $colorShades[$colorSetIndex][$shadeIndex]; + ?> + + + + +
+
\ No newline at end of file diff --git a/app/Views/layout/header.php b/app/Views/layout/header.php index e2538907..fbb9588f 100755 --- a/app/Views/layout/header.php +++ b/app/Views/layout/header.php @@ -655,7 +655,15 @@
- + + +
  • @@ -672,7 +680,7 @@ Endorsement
  • - +
  • Statement upload @@ -684,13 +692,16 @@
  • Variance
  • +
  • + Outstanding +
  • Finance Team
  • - +
  • Business Team @@ -710,7 +721,7 @@
  • - --> +
    diff --git a/app/Views/leads_form.php b/app/Views/leads_form.php new file mode 100644 index 00000000..15c97dbe --- /dev/null +++ b/app/Views/leads_form.php @@ -0,0 +1,869 @@ + + + + + + + + \ No newline at end of file diff --git a/app/Views/leads_list.php b/app/Views/leads_list.php new file mode 100644 index 00000000..f062a1dd --- /dev/null +++ b/app/Views/leads_list.php @@ -0,0 +1,333 @@ + + + +
    +
    +
    +
    +
    +
    +

    Leads List

    +
    + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + 0) { ?> + $row){ ?> + + + + + + + + + + + + + + + + + + + + + + + +
    S.No.
    Lead Type
    Issuer
    Client Type
    Client / Branch
    Entity Type
    Branch Name
    Branch Code
    Contact Person Name
    Contact Person Mobile
    Policy Type
    Status
    Action
    + +
    No data available
    +
    +
    +
    +
    +
    + + + + + diff --git a/app/Views/other_policy_terms.php b/app/Views/other_policy_terms.php index d21d40c4..c8ed3a48 100755 --- a/app/Views/other_policy_terms.php +++ b/app/Views/other_policy_terms.php @@ -249,7 +249,7 @@ $('body').on('click', '.btnPolicyMaster', function() { $('.loader-mask').delay(350).fadeOut('slow'); }, 500); - $('#nameOfThePolicyOnOther').html(' - ' + res.policy_name.name); + // $('#nameOfThePolicyOnOther').html(' - ' + res.policy_name.name); $('#emp_count').val(res.count) diff --git a/app/Views/outstanding_report_list.php b/app/Views/outstanding_report_list.php new file mode 100644 index 00000000..1c46f6a1 --- /dev/null +++ b/app/Views/outstanding_report_list.php @@ -0,0 +1,426 @@ + + +
    +
    +
    +
    +
    + + + +
    +
    +
    +
    +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + +
    + +
    + + +
    + + + +
    + + +
    +
    +
    +
    + +
    +
    +
    + +
    +
    +
    +
    +
    +

    Outstanding Report

    +
    + +
    +
    + + + + + + + + + + + + + + + + + $row){ ?> + + + + + + + + + + + + + + +
    S.NoClient NameInsurerPolicyEndorsement NoInvoice StatusInvoice AmountRealization AmountOutstanding Amount
    + +
    +
    +
    +
    +
    +
    + + \ No newline at end of file diff --git a/app/Views/policy_grid.php b/app/Views/policy_grid.php index 46f33c80..f9161ae0 100755 --- a/app/Views/policy_grid.php +++ b/app/Views/policy_grid.php @@ -344,7 +344,6 @@ var terms_si_amount_array = []; var unit_length = 0; var branch_units = []; - $('body').on('click', '.btnPolicyModel', function() { $('#tab_content .tab-pane').not('#primary_rack_rate_tab').remove(); @@ -3063,7 +3062,7 @@ function createCheckboxes(obj, additional_relationship = [], unique_id = null, p `; - console.log(html); + // console.log(html); $relationshipElement.append(html); @@ -3920,7 +3919,7 @@ function appendFourthAndSixthRackRate(data = null, uniqueId = null) } if(unit_length == 1){ - toAddUnitInManuall(unique_id, branch_units[0], 'appendFourthAndSixthRackRate') + toAddUnitInManuall(uniqueId, branch_units[0], 'appendFourthAndSixthRackRate') } } @@ -4353,21 +4352,23 @@ function applyStyles(tabId) { function toAddUnitInManuall(unique_id = null, branch_unit = '', whichFunction) { console.log('toAddUnitInManuall unique_id', unique_id) + console.log('toAddUnitInManuall unique_id', typeof unique_id) console.log('toAddUnitInManuall whichFunction', whichFunction) - var id = $('#grid')[0]; + var id = $('#grid').val(); console.log(id); var container = $('#grid_content_input'); - if (unique_id) { - id = $('#grid_'+unique_id)[0]; + if (unique_id !== 'null' && unique_id !== null && unique_id !== false && unique_id !== 'false') { + id = $('#grid_'+unique_id).val(); + console.log(id); container = $('#grid_content_input_for_additional_'+unique_id); } console.log('checkValideUnits id', id); console.log('checkValideUnits container', container); - if (id.value === '3') { + if (id === '3') { var units = container.find('input[name="3_unit[]"]'); var unitValues = []; @@ -4376,7 +4377,7 @@ function toAddUnitInManuall(unique_id = null, branch_unit = '', whichFunction) { var value = $(this).val(branch_unit); }); - } else if (id.value === '4') { + } else if (id === '4') { var units = container.find('input[name="4_unit[]"]'); var unitValues = []; @@ -4385,7 +4386,7 @@ function toAddUnitInManuall(unique_id = null, branch_unit = '', whichFunction) { var value = $(this).val(branch_unit); }); - } else if (id.value === '2' || id.value === '9') { + } else if (id === '2' || id === '9') { var units = container.find('input[name="gpa_unit29[]"]'); @@ -4393,7 +4394,7 @@ function toAddUnitInManuall(unique_id = null, branch_unit = '', whichFunction) { var value = $(this).val(branch_unit); }); - } else if (id.value === '5') { + } else if (id === '5') { var units = container.find('input[name="5_unit[]"]'); @@ -4401,7 +4402,7 @@ function toAddUnitInManuall(unique_id = null, branch_unit = '', whichFunction) { var value = $(this).val(branch_unit); }); - } else if (id.value === '6') { + } else if (id === '6') { var units = container.find('input[name="6_unit[]"]'); @@ -4409,7 +4410,7 @@ function toAddUnitInManuall(unique_id = null, branch_unit = '', whichFunction) { var value = $(this).val(branch_unit); }); - } else if (id.value === '7') { + } else if (id === '7') { var units = container.find('input[name="7_unit[]"]'); @@ -4417,7 +4418,7 @@ function toAddUnitInManuall(unique_id = null, branch_unit = '', whichFunction) { var value = $(this).val(branch_unit); }); - } else if (id.value === '10') { + } else if (id === '10') { var units = container.find('input[name="10_unit[]"]'); @@ -4425,7 +4426,7 @@ function toAddUnitInManuall(unique_id = null, branch_unit = '', whichFunction) { var value = $(this).val(branch_unit); }); - } else if (id.value === '8') { + } else if (id === '8') { var units = container.find('input[name="8_unit[]"]'); @@ -4433,7 +4434,7 @@ function toAddUnitInManuall(unique_id = null, branch_unit = '', whichFunction) { var value = $(this).val(branch_unit); }); - } else if (id.value === '11') { + } else if (id === '11') { var units = container.find('input[name="11_unit[]"]'); @@ -4441,7 +4442,7 @@ function toAddUnitInManuall(unique_id = null, branch_unit = '', whichFunction) { var value = $(this).val(branch_unit); }); - } else if (id.value === '12') { + } else if (id === '12') { var units = container.find('input[name="12_unit[]"]'); @@ -4449,7 +4450,7 @@ function toAddUnitInManuall(unique_id = null, branch_unit = '', whichFunction) { var value = $(this).val(branch_unit); }); - } else if (id.value === '13') { + } else if (id === '13') { var units = container.find('input[name="13_unit[]"]'); @@ -4457,23 +4458,27 @@ function toAddUnitInManuall(unique_id = null, branch_unit = '', whichFunction) { var value = $(this).val(branch_unit); }); - } else if (id.value === '1') { + } else if (id === '1') { + + console.log('checkValideUnits id', id); var selectedValue = $('#si_or_bp').val(); if (selectedValue == 1) { + console.log('checkValideUnits id 1', id); var units = container.find('input[name="gpa_unit_1[]"]'); units.each(function() { - var value = $(this).val(branch_unit); + $(this).val(branch_unit); }); } else if (selectedValue == 3) { + console.log('checkValideUnits id 3', id); var units = container.find('input[name="gpa_unit_3[]"]'); units.each(function() { - var value = $(this).val(branch_unit); + $(this).val(branch_unit); }); } diff --git a/app/Views/policy_transaction_endorsement_form.php b/app/Views/policy_transaction_endorsement_form.php index 543f2863..cace5d10 100644 --- a/app/Views/policy_transaction_endorsement_form.php +++ b/app/Views/policy_transaction_endorsement_form.php @@ -362,29 +362,36 @@ Total - + + Agreed BP % + + + Agreed TP % + + + Agreed TEP % + + + - - Agreed BP % - - - Agreed TP % - - - Agreed TEP % - Agreed Amount - - Standard BP % - - - Standard TP % - - - Standard TEP % - + + + + + Standard BP % + + + Standard TP % + + + Standard TEP % + + + + Actual BP Amount @@ -427,8 +434,6 @@ - -
    @@ -954,6 +959,12 @@ function amountCalculation(input) { let standard_tp_per = parseFloat($('#standard_tp_' + input).val()) || 0; let standard_tep_per = parseFloat($('#standard_tep_' + input).val()) || 0; + let co_share_per = parseFloat($('#co_share_per_' + input).val()) || 0; + + let co_premium_amt = ((bp + tp + tep) * co_share_per) / 100; + $('#co_premium_' + input).val(!isNaN(co_premium_amt) && isFinite(co_premium_amt) ? co_premium_amt.toFixed(2) : '0.00'); + + // Calculate GST percentage let gst_per = igst; if (igst === 0) { @@ -1226,6 +1237,65 @@ function actualAmountCalculation(input, field = null){ // console.log('variance', variance); } +function co_share_percentage_calculation(input){ + + var inputs = $('[name="co_share_per[]"]'); + + // Find the empty input(s) + var emptyInputs = inputs.filter(function() { + return $(this).val().trim() === ''; // Check for empty values + }); + + // Get the number of empty inputs + var emptyCount = emptyInputs.length; + console.log('Number of empty inputs:', emptyCount); + + // If there's exactly one empty input, calculate and set its value + if (emptyCount === 1) { + // Calculate the sum of filled values + let sumFilled = 0; + inputs.each(function() { + var val = parseFloat($(this).val()) || 0; + sumFilled += val; + }); + + // Calculate the balance percentage + let balance_per = 100 - sumFilled; + console.log('Balance percentage:', balance_per); + + // Set the balance value to the empty input + emptyInputs.val(balance_per); + } + +} + +function select_leader_disable_premium_amt(input, value) { + if ($(input).is(':checked')) { + // Disable and add readonly-select class to all premiums except the one with the given value + $('input[name="base_premium[]"]').addClass('readonly-select'); + $('#base_premium_' + value).removeClass('readonly-select'); + + $('input[name="tp_premium[]"]').addClass('readonly-select'); + $('#tp_premium_' + value).removeClass('readonly-select'); + + $('input[name="ter_premium[]"]').addClass('readonly-select'); + $('#ter_premium_' + value).removeClass('readonly-select'); + + $('input[name="stamp_duty[]"]').addClass('readonly-select'); + $('#stamp_duty_' + value).removeClass('readonly-select'); + + $('input[name="co_premium[]"]').addClass('readonly-select'); + $('#co_premium_' + value).removeClass('readonly-select'); + } else { + // Enable and remove readonly-select class from all premiums except the one with the given value + $('input[name="base_premium[]"]').removeClass('readonly-select'); + $('input[name="tp_premium[]"]').removeClass('readonly-select'); + $('input[name="ter_premium[]"]').removeClass('readonly-select'); + $('input[name="stamp_duty[]"]').removeClass('readonly-select'); + $('input[name="co_premium[]"]').removeClass('readonly-select'); + } +} + function validateRange(input) { // if (input.value < 1) input.value = 1; if (input.value > 100) input.value = 100; @@ -1386,14 +1456,206 @@ function addInsurerColumn() { case 1: // Is Leader? newCell = ` `; break; case 2: // Co-Share % - newCell = ``; + newCell = ``; + break; + case 3: // Base Premium + newCell = ``; + break; + case 4: // TP Premium + newCell = ``; + break; + case 5: // Ter Premium + newCell = ``; + break; + case 6: // co Premium + newCell = ``; + break; + case 7: // CGST + newCell = ``; + break; + case 8: // SGST + newCell = ``; + break; + case 9: // IGST + newCell = ``; + break; + case 10: // GST Amount + newCell = ``; + break; + case 11: // Stamp Duty + newCell = ``; + break; + case 12: // Total + newCell = ``; + break; + case 13: // Agreed BP % + newCell = ``; + break; + case 14: // Agreed TP % + newCell = ``; + break; + case 15: // Agreed Ter % + newCell = ``; + break; + case 16: // Standard BP % + newCell = ``; + break; + case 17: // Standard TP % + newCell = ``; + break; + case 18: // Standard Ter % + newCell = ``; + break; + case 19: // Actual BP Amount + newCell = ``; + break; + case 20: // Actual TP Amount + newCell = ``; + break; + case 21: // Actual TEP Amount + newCell = ``; + break; + case 22: // Actual BP % + newCell = ``; + break; + case 23: // Actual TP % + newCell = ``; + break; + case 24: // Actual TEP % + newCell = ``; + break; + case 25: // Actual BP Brokerage Amount + newCell = ``; + break; + case 26: // Actual TP Brokerage Amount + newCell = ``; + break; + case 27: // Actual TEP Brokerage Amount + newCell = ``; + break; + case 28: // Expected Amount + newCell = ``; + break; + case 29: // Variance + newCell = ``; + break; + case 30: // Reward + newCell = ``; + break; + case 31: // ID For Update + newCell = ``; + break; + } + }else if(team_id.includes('3')){ + switch(index) { + case 0: // Insurer selection + newCell = ` + + `; + break; + case 1: // Is Leader? + newCell = ` + + + `; + break; + case 2: // Co-Share % + newCell = ``; + break; + case 3: // Base Premium + newCell = ``; + break; + case 4: // TP Premium + newCell = ``; + break; + case 5: // Ter Premium + newCell = ``; + break; + case 6: // co Premium + newCell = ``; + break; + case 7: // CGST + newCell = ``; + break; + case 8: // SGST + newCell = ``; + break; + case 9: // IGST + newCell = ``; + break; + case 10: // GST Amount + newCell = ``; + break; + case 11: // Stamp Duty + newCell = ``; + break; + case 12: // Total + newCell = ``; + break; + case 13: // Agreed BP % + newCell = ``; + break; + case 14: // Agreed TP % + newCell = ``; + break; + case 15: // Agreed Ter % + newCell = ``; + break; + case 16: // Standard BP % + newCell = ``; + break; + case 17: // Standard TP % + newCell = ``; + break; + case 18: // Standard Ter % + newCell = ``; + break; + case 19: // ID For Update + newCell = ``; + break; + } + }else if(team_id.includes('6')){ + switch(index) { + case 0: // Insurer selection + newCell = ` + + `; + break; + case 1: // Is Leader? + newCell = ` + + + `; + break; + case 2: // Co-Share % + newCell = ``; break; case 3: // Base Premium newCell = ``; @@ -1486,69 +1748,6 @@ function addInsurerColumn() { newCell = ``; break; } - }else if(team_id.includes('3')){ - switch(index) { - case 0: // Insurer selection - newCell = ` - - `; - break; - case 1: // Is Leader? - newCell = ` - - - `; - break; - case 2: // Co-Share % - newCell = ``; - break; - case 3: // Base Premium - newCell = ``; - break; - case 4: // TP Premium - newCell = ``; - break; - case 5: // Ter Premium - newCell = ``; - break; - case 6: // co Premium - newCell = ``; - break; - case 7: // CGST - newCell = ``; - break; - case 8: // SGST - newCell = ``; - break; - case 9: // IGST - newCell = ``; - break; - case 10: // GST Amount - newCell = ``; - break; - case 11: // Stamp Duty - newCell = ``; - break; - case 12: // Total - newCell = ``; - break; - case 13: // Agreed BP % - newCell = ``; - break; - case 14: // ID For Update - newCell = ``; - break; - } } // console.log(newCell); @@ -1668,7 +1867,154 @@ function populateTable(dataArray, status = false) { cell.find('select').val(insurer); break; case 1: // Is Leader? - cell.find('input[type="checkbox"]').prop('checked', data.co_share_type === '1'); + cell.find('input[type="checkbox"]').prop('checked', data.co_share_type === '1').change(); + break; + case 2: // Co-Share % + cell.find('input').val(data.co_share_per); + break; + case 3: // Base Premium + cell.find('input').val(status ? data.bp_amt : ''); + break; + case 4: // TP Premium + cell.find('input').val(status ? data.tp_amt : ''); + break; + case 5: // Ter Premium + cell.find('input').val(status ? data.tep_amt : ''); + break; + case 6: // Co Premium + cell.find('input').val(data.cop_amt); + break; + case 7: // CGST + cell.find('input').val(data.bp_cgst); + break; + case 8: // SGST + cell.find('input').val(data.bp_sgst); + break; + case 9: // IGST + cell.find('input').val(data.bp_igst); + break; + case 10: // GST Amount + cell.find('input').val(status ? data.bp_gst_amt : ''); + break; + case 11: // Stamp Duty + cell.find('input').val(status ? data.stamp_duty : ''); + break; + case 12: // Total + cell.find('input').val(status ? data.amount : ''); + break; + case 13: // Agreed BP % + cell.find('input').val(data.agreed_bp_per); + break; + case 14: // Agreed TP % + cell.find('input').val(data.agreed_tp_per); + break; + case 15: // Agreed Ter % + cell.find('input').val(data.agreed_tep_per); + break; + case 16: // Standard BP % + cell.find('input').val(data.standerd_bp_per); + break; + case 17: // Standard TP % + cell.find('input').val(data.standerd_tp_per); + break; + case 18: // Standard Ter % + cell.find('input').val(data.standerd_tep_per); + break; + case 19: // Actual BP Amount + cell.find('input').val(status ? data.actual_bp_amt : ''); + break; + case 20: // Actual TP Amount + cell.find('input').val(status ? data.actual_tp_amt : ''); + break; + case 21: // Actual Ter Amount + cell.find('input').val(status ? data.actual_tep_amt : ''); + break; + case 22: // Actual BP % + cell.find('input').val(status ? data.actual_bp_per : ''); + break; + case 23: // Actual TP % + cell.find('input').val(status ? data.actual_tp_per : ''); + break; + case 24: // Actual Ter % + cell.find('input').val(status ? data.actual_tep_per : ''); + break; + case 25: // Actual BP Brokerage Amount + cell.find('input').val(status ? data.actual_bp_brokerage_amt : ''); + break; + case 26: // Actual TP Brokerage Amount + cell.find('input').val(status ? data.actual_tp_brokerage_amt : ''); + break; + case 27: // Actual Ter Brokerage Amount + cell.find('input').val(status ? data.actual_tep_brokerage_amt : ''); + break; + case 28: // Expected Amount + cell.find('input').val(status ? data.exp_amt : ''); + break; + case 29: // Variance + cell.find('input').val(status ? data.variance : ''); + break; + case 30: // Reward + cell.find('input').val(status ? data.reward : ''); + break; + case 31: // Co-share ID (hidden field) + cell.find('input[type="hidden"]').val(status ? data.id : ''); + break; + } + }else if(team_id.includes('3')){ + switch (rowIndex) { + case 0: // Insurer selection + cell.find('select').val(insurer); + break; + case 1: // Is Leader? + cell.find('input[type="checkbox"]').prop('checked', data.co_share_type === '1').change(); + break; + case 2: // Co-Share % + cell.find('input').val(data.co_share_per); + break; + case 3: // Base Premium + cell.find('input').val(status ? data.bp_amt : ''); + break; + case 4: // TP Premium + cell.find('input').val(status ? data.tp_amt : ''); + break; + case 5: // Ter Premium + cell.find('input').val(status ? data.tep_amt : ''); + break; + case 6: // Co Premium + cell.find('input').val(data.cop_amt); + break; + case 7: // CGST + cell.find('input').val(data.bp_cgst); + break; + case 8: // SGST + cell.find('input').val(data.bp_sgst); + break; + case 9: // IGST + cell.find('input').val(data.bp_igst); + break; + case 10: // GST Amount + cell.find('input').val(status ? data.bp_gst_amt : ''); + break; + case 11: // Stamp Duty + cell.find('input').val(status ? data.stamp_duty : ''); + break; + case 12: // Total + cell.find('input').val(status ? data.amount : ''); + break; + case 13: // Agreed BP % + cell.find('input').val(data.agreed_bp_per); + break; + case 14: // Co-share ID (hidden field) + cell.find('input[type="hidden"]').val(status ? data.id : ''); + break; + } + }else if(team_id.includes('6')){ + switch (rowIndex) { + case 0: // Insurer selection + cell.find('select').val(insurer); + break; + case 1: // Is Leader? + cell.find('input[type="checkbox"]').prop('checked', data.co_share_type === '1').change(); break; case 2: // Co-Share % cell.find('input').val(data.co_share_per); @@ -1764,54 +2110,6 @@ function populateTable(dataArray, status = false) { cell.find('input[type="hidden"]').val(status ? data.id : ''); break; } - }else if(team_id.includes('3')){ - switch (rowIndex) { - case 0: // Insurer selection - cell.find('select').val(insurer); - break; - case 1: // Is Leader? - cell.find('input[type="checkbox"]').prop('checked', data.co_share_type === '1'); - break; - case 2: // Co-Share % - cell.find('input').val(data.co_share_per); - break; - case 3: // Base Premium - cell.find('input').val(status ? data.bp_amt : ''); - break; - case 4: // TP Premium - cell.find('input').val(status ? data.tp_amt : ''); - break; - case 5: // Ter Premium - cell.find('input').val(status ? data.tep_amt : ''); - break; - case 6: // Co Premium - cell.find('input').val(data.cop_amt); - break; - case 7: // CGST - cell.find('input').val(data.bp_cgst); - break; - case 8: // SGST - cell.find('input').val(data.bp_sgst); - break; - case 9: // IGST - cell.find('input').val(data.bp_igst); - break; - case 10: // GST Amount - cell.find('input').val(status ? data.bp_gst_amt : ''); - break; - case 11: // Stamp Duty - cell.find('input').val(status ? data.stamp_duty : ''); - break; - case 12: // Total - cell.find('input').val(status ? data.amount : ''); - break; - case 13: // Agreed BP % - cell.find('input').val(data.agreed_bp_per); - break; - case 14: // Co-share ID (hidden field) - cell.find('input[type="hidden"]').val(status ? data.id : ''); - break; - } } }); }); diff --git a/app/Views/policy_transaction_inception_form.php b/app/Views/policy_transaction_inception_form.php index 23713e6f..c6d0e22a 100644 --- a/app/Views/policy_transaction_inception_form.php +++ b/app/Views/policy_transaction_inception_form.php @@ -155,6 +155,7 @@ +
    @@ -353,7 +354,18 @@
    - + + +
    @@ -573,6 +585,7 @@
    +