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
= $businessTeamCount ?>
@@ -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];
+ ?>
+
+
+
= count($value) ?>
+ = $policyStatus[$status] ?>
+
+
+
+
+
-
+
-
-
+
+
Finance Team Pending
= $financeTeamCount ?>
@@ -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];
+ ?>
+
+
+
= count($value) ?>
+ = $policyStatus[$status] ?>
+
+
+
+
+
+
+
\ 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
+
+
+
+ Add
+
+
+
+
+
+
+
+ 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
+
+
+
+
+ 0) { ?>
+ $row){ ?>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 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
+
+
+
+
+
+
+
+
+
\ 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 = `
-
+
Leader Yes
`;
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 = `
+
+ Select Insurer
+
+
+ = $value['insurer_name'] . '-' . $value['branch_code'] ?>
+
+
+
+ `;
+ break;
+ case 1: // Is Leader?
+ newCell = `
+
+
+
+
+ Leader Yes
+ `;
+ 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 = `
+
+ Select Insurer
+
+
+ = $value['insurer_name'] . '-' . $value['branch_code'] ?>
+
+
+
+ `;
+ break;
+ case 1: // Is Leader?
+ newCell = `
+
+
+
+
+ Leader Yes
+ `;
+ 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 = `
-
- Select Insurer
-
-
- = $value['insurer_name'] . '-' . $value['branch_code'] ?>
-
-
-
- `;
- break;
- case 1: // Is Leader?
- newCell = `
-
-
-
-
- Leader Yes
- `;
- 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 @@
+