MERGE_UAT_PAYOUT-COMMISSION-TPA

This commit is contained in:
Ubuntu 2025-12-12 17:32:19 +05:30
commit 49ba435328
57 changed files with 452 additions and 275 deletions

View File

@ -544,7 +544,7 @@ $routes->group("/api", ["filter" => "authJWT"], function ($routes) {
$routes->get("getSSORedirectUrl", "ApiServiceController::getSSORedirectUrl");
$routes->get("getEmployeePolicy", "EmployeeRestController::getEmployeePolicy");
$routes->group("employeeRest", ['filter' => ["appSignature"] ], function ($routes) {
$routes->group("employeeRest", ['filter' => ['appSignature'] ], function ($routes) {
//Employee login api's
$routes->post("verifyEmployeeNumber", "RestAuthenticationController::verifyEmployeeWithMobileNumber");
@ -587,7 +587,7 @@ $routes->group("employeeRest", ['filter' => ["appSignature"] ], function ($route
});
$routes->group("employeeRest", ["filter" => ["authJWT"]], function ($routes) {
$routes->group("employeeRest", ["filter" => ['appSignature' , 'authJWT']], function ($routes) {
$routes->post("ecardRequest", "ApiServiceController::ecardRequest");
$routes->get("getWellnessURL", "ApiServiceController::getWellnessURL");

View File

@ -5969,6 +5969,8 @@ class ClientController extends AdminController
// $emp_data = $this->employeePolicyModel->getEmployeePolicyForEcard(12);
// $ids = array_column($emp_data, 'id');
// $client_policy_id = 5062;
// $ids = [408518,408519,408520,408521,408522,408523,408524,408525,408526,408527,408528,408529,408530,408531,408532,408533,408534,408535,408536,408537,408538,408539,408540,408541,408542,408543,408544,408545,408546,408547,408548,408549,408550,408551,408552,408553,408554,408555,408556,408557,408558,408559,408560,408561,408562,408563,408564,408565,408566,408567,408568,408569,408570,408571,408572,408573,408574,408575,408576,408577,408578,408579,408580,408581,408582,408583,408584,408585,408586,408587,408588,408589,408590,408591,408592,408593,408594,408595,408596,408597,408598,408599,408600,408601,408602,408603,408604,408605,408606,408607,408608,408609,408610,408611,408612,408613,408614,408615,408616,408617,408618,408619,408620,408621,408622,408623,408624,408625,408626,408627,408628,408629,408630,408631,408632,408633,408634,408635,408636,408637,408638,408639,408640,408641,408642,408643];
$EmpDataServiceController = new EmpDataServiceController();
// $res = $EmpDataServiceController->generateExcelForDeletion($batch_data); dd($return); die;
@ -5983,7 +5985,7 @@ class ClientController extends AdminController
// $res = $EmpDataServiceController->getInceptionBasePremium(["13332","13333","13334","13335","13336"]); dd($res);//for live
// $res = $EmpDataServiceController->getDeletionBasePremium(["13248","13250","13249","13247"], json_decode('{"employeeIds":["13248","13250","13249","13247"],"client_id":"3927","client_policy_id":"6183","client_branch_id":"1874","cd_ac_no":"CD9751909505","endorsement_no":"END1238","count":4,"event_name":"deletion","policy_name":"GMC","user_id":"48"}', true)); dd($res);//for live
// $res = $EmpDataServiceController->makeEntryForBDSPolicyTransaction(json_decode('{"client_policy_id":"6187","endorsement_no":null,"emp_count":5,"action_type":"inception","no_of_insured":3,"no_of_dependent":0}', true)); dd($res);//for live
// $res = $EmpDataServiceController->sendMailForDownloadingECard($ids);
// $res = $EmpDataServiceController->sendMailForDownloadingECard(['ids' => $ids, 'client_policy_id' => $client_policy_id]);
// $res = $this->employeePolicyModel->getDeletionEmployeeDataForExportExcel($batch_data, 1); dd($result);
// $res = $this->employeePolicyModel->getSIEnhancementEmployeesDataForExportExcel($batch_data, 1);
// return $this->downloadInsurerExcelExport($batch_data);

View File

@ -710,7 +710,7 @@ class DashboardController extends AdminController
// print_r(($ids)); die;
// print_r($this->clientPolicyModel->getLastQuery()); die;
// $this->myLogger->logme('error', "Policy details fetched: " . json_encode($client_policy_data));
Jobs::addJob(['job_name' => 'sendMailForDownloadingECard', 'payload' => $ids]);
Jobs::addJob(['job_name' => 'sendMailForDownloadingECard', 'payload' => ['ids' => $ids, 'client_policy_id' => $policy_id]]);
// $empEmpDataServiceController = new EmpDataServiceController();
// $empEmpDataServiceController->sendMailForDownloadingECard($ids);

View File

@ -2204,7 +2204,7 @@ class EmpDataServiceController extends BaseController
if ($get_policy_type['policy_type_id'] != 1) {
$job_details = new Jobs();
$r = Jobs::addJob(['job_name' => 'sendMailForDownloadingECard', 'payload' => $emp_policy_ids]);
$r = Jobs::addJob(['job_name' => 'sendMailForDownloadingECard', 'payload' => ['ids' => $emp_policy_ids, 'client_policy_id' => $client_policy_id]]);
}
}
@ -4866,15 +4866,24 @@ class EmpDataServiceController extends BaseController
return true;
}
public function sendMailForDownloadingECard(array $ids, $single_mail = null)
{
public function sendMailForDownloadingECard($params, $single_mail = null)
{
// dd($params);
$this->myLogger->logme('info', 'sendMailForDownloadingECard - Function called');
$ids = $params['ids'] ?? null;
$client_policy_id = $params['client_policy_id'] ?? null;
if (empty($ids)) {
$this->myLogger->logme('error', 'sendMailForDownloadingECard - employee_policy_ids are empty');
return false;
return ['status' => false , 'message' => 'employee_policy_ids are empty'];
}
if (empty($client_policy_id)) {
$this->myLogger->logme('error', 'sendMailForDownloadingECard - client_policy_id are empty');
return ['status' => false , 'message' => 'client_policy_id are empty'];
}
$temp_id = $ids[0];
$get_client_info = $this->employeePolicyModel
@ -4897,10 +4906,11 @@ class EmpDataServiceController extends BaseController
if (!$get_client_info) {
$this->myLogger->logme('error', 'sendMailForDownloadingECard - No client information found for the first ID');
return false;
return ['status' => false , 'message' => 'No client information found for the first ID'];
}
$client_data = $this->clientModel->where('id', $get_client_info['client_id'])->first();
$notification = $this->notificationModel
->where('client_id', $get_client_info['client_id'])
->where('template_name', 'member_ecard_mail')
@ -4908,9 +4918,158 @@ class EmpDataServiceController extends BaseController
if (empty($notification) || $notification['enabled'] != 1) {
$this->myLogger->logme('error', 'sendMailForDownloadingECard - Notification setup not enabled or missing for E-Card Notification');
return false;
return ['status' => false , 'message' => 'Notification setup not enabled or missing for E-Card Notification'];
}
$client_policy_data = $this->clientPolicyModel->where('id', $client_policy_id)->first();
// print_rr($client_policy_data); die;
// this for handle the GMC - Parants to send the E-Card mail
if($client_policy_data['policy_type_id'] == 3 && $client_policy_data['is_addon'] == 3){
$this->myLogger->logme('error', 'sendMailForDownloadingECard - Processing the GMC - Patents E-Card Mail send');
try {
$emp_details = $this->employeePolicyModel
->select("
employees.id as emp_id,
employees.client_id,
employees.client_branch_id,
employees.relationship,
employees.emp_code,
employees.email_corporate,
employees.name,
employees.mobile,
employee_polices.basic_cover_si,
(
SELECT self_data.email_corporate
FROM employees AS self_data
WHERE self_data.is_active = 1
AND self_data.emp_status = 'active'
AND self_data.family_floater_key = 'self'
AND self_data.emp_code = employees.emp_code
LIMIT 1
) AS self_mail,
cp.policy_type_id,
cp.is_addon,
cp.policy_no,
employee_polices.id as emp_policy_id,
employee_polices.client_policy_id,
employee_polices.rand_string,
employee_polices.tpa_id
")
->join('employees', 'employees.id = employee_polices.employee_id')
->join('client_policy cp', 'employee_polices.client_policy_id = cp.id')
->where('employees.emp_status', 'active')
->where('employees.is_active', 1)
->where('employee_polices.status', 'active')
->where('employee_polices.is_active', 1)
->whereIn('employee_polices.id', $ids)
->groupBy('employees.emp_code')
->findAll();
// dd($emp_details);
if (!empty($emp_details)) {
$count = 0;
$processedCount = 0;
$wholeData = [];
foreach ($emp_details as $emp_value) {
$this->myLogger->logme('error', 'sendMailForDownloadingECard - Processing send mail for the employee_policy_id: {id}', ['id' => $emp_value['emp_policy_id']]);
if (!empty($emp_value['self_mail'])) {
$params = [
'rand_string' => $emp_value['rand_string'],
'tpa_id' => $emp_value['tpa_id'],
'notification' => $notification,
'client_data' => $client_data,
'get_emp_email_and_other_details' => $emp_value,
'id' => $emp_value['emp_id'],
'emp_code' => $emp_value['emp_code'],
'policy_no' => $emp_value['policy_no'],
'client_policy_id' => $emp_value['client_policy_id'],
];
if(empty($single_mail)){
$params['all_member'] = 1;
}
$params['common'] = [
'client_id' => $emp_value['client_id'],
'client_branch_id' => $emp_value['client_branch_id'],
'client_policy_id' => $emp_value['client_policy_id'],
'employee_policy_id' => $emp_value['emp_policy_id'],
'employee_id' => $emp_value['emp_id'],
'mail_type' => 'member_ecard_mail',
];
$wholeData[] = sendMailNotification::sendMailNotification('member_ecard_mail', $params);
$count++;
}else{
$this->myLogger->logme('error', 'sendMailForDownloadingECard - process skiped - self mail not found for the dependent employee_policy_id: {id}', ['id' => $emp_value['emp_policy_id']]);
}
$processedCount++;
// Send batch emails or handle single email
if ($count == 20 || $processedCount == count($emp_details)) {
if (!empty($wholeData)) {
if ($single_mail == 1) {
$this->myLogger->logme('error', 'sendMailForDownloadingECard - Sending single mail');
$mail_result = MailHelper::send_email($wholeData[0]);
$this->myLogger->logme('info', 'sendMailForDownloadingECard - Single mail result: {result}', ['result' => $mail_result]);
return ['status' => true , 'data' =>$mail_result, 'message' => 'Email processing completed'];
} else {
$this->myLogger->logme('error', 'sendMailForDownloadingECard - Creating a job for bulk mail');
Jobs::addJob(['job_name' => 'bulk_mail', 'payload' => $wholeData]);
$wholeData = [];
$count = 0;
}
}else{
$this->myLogger->logme('error', 'sendMailForDownloadingECard - Whole mail data is empty');
}
}else{
$idscount = count($ids);
$this->myLogger->logme('error', "sendMailForDownloadingECard - processedCount not equal to ids count, processedCount : {$processedCount} and ids count : {$idscount}");
}
}
$this->myLogger->logme('error', 'sendMailForDownloadingECard - Email processing completed');
return ['status' => true , 'message' => 'Email processing completed'];
}else{
$this->myLogger->logme('error', 'sendMailForDownloadingECard - Employee Data not found');
return ['status' => false , 'message' => 'Employee Data not found'];
}
} catch (\Exception $th) {
$errorData = [
'message' => $th->getMessage(),
'file' => $th->getFile(),
'line' => $th->getLine(),
'code' => $th->getCode(),
'trace' => $th->getTraceAsString(),
'trace_array' => $th->getTrace(), // full array version (optional)
'function' => $th->getTrace()[0]['function'] ?? null,
'class' => $th->getTrace()[0]['class'] ?? null,
];
$this->myLogger->logme('error', 'sendMailForDownloadingECard - Exception occurred: {message}', ['message' => $th->getMessage()]);
return ['status' => false , 'message' => 'Exception occurred' . $th->getMessage(), 'error_data' => $errorData];
}
}
try {
$this->myLogger->logme('error', 'sendMailForDownloadingECard - Inside try block');
@ -4985,6 +5144,8 @@ class EmpDataServiceController extends BaseController
$wholeData[] = sendMailNotification::sendMailNotification('member_ecard_mail', $params);
// $wholeMailData[] = sendMailNotification::sendMailNotification('member_ecard_mail', $params);
$count++;
}else{
$this->myLogger->logme('error', 'sendMailForDownloadingECard - process skiped - Self not found : {id}', ['id' => $id]);
}
$processedCount++;
@ -4996,7 +5157,7 @@ class EmpDataServiceController extends BaseController
$this->myLogger->logme('error', 'sendMailForDownloadingECard - Sending single mail');
$mail_result = MailHelper::send_email($wholeData[0]);
$this->myLogger->logme('info', 'sendMailForDownloadingECard - Single mail result: {result}', ['result' => $mail_result]);
return $mail_result;
return ['status' => true , 'data' =>$mail_result, 'message' => 'Email processing completed'];
} else {
$this->myLogger->logme('error', 'sendMailForDownloadingECard - Creating a job for bulk mail');
Jobs::addJob(['job_name' => 'bulk_mail', 'payload' => $wholeData]);
@ -5011,11 +5172,11 @@ class EmpDataServiceController extends BaseController
// dd($wholeMailData);
$this->myLogger->logme('error', 'sendMailForDownloadingECard - Email processing completed');
return true;
return ['status' => true , 'message' => 'Email processing completed'];
} catch (\Exception $e) {
$this->myLogger->logme('error', 'sendMailForDownloadingECard - Exception occurred: {message}', ['message' => $e->getMessage()]);
return false;
return ['status' => false , 'message' => 'Exception occurred' . $e->getMessage()];
}
}

View File

@ -2564,16 +2564,16 @@ class EmployeeController extends AdminController
}
}
public function send_mail_for_individual_employee_ecard($id)
public function send_mail_for_individual_employee_ecard($id, $client_policy_id)
{
$ids[] = $id;
$empDataServiceController = new EmpDataServiceController();
$result = $empDataServiceController->sendMailForDownloadingECard($ids, 1);
$result = $empDataServiceController->sendMailForDownloadingECard(['ids' => $ids, 'client_policy_id' => $client_policy_id], 1);
if ($result) {
return $this->respond(['status' => true,'code' => 200,'message' => 'Mail sent successfully', 'result' => $result,], 200);
if (isset($result['status']) && $result['status'] == true) {
return $this->respond(['status' => true,'code' => 200,'message' => 'Mail sent successfully', 'result' => $result], 200);
} else {
return $this->respond(['status' => false, 'code' => 404, 'message' => 'Failed to sent mail.'], 404);
return $this->respond(['status' => false, 'code' => 404, 'message' => 'Failed to sent mail.', 'result' => $result], 200);
}
}

View File

@ -3608,9 +3608,9 @@ class EmployeeRestController extends AdminController
cl_rm.user_id as acm_id,
cp.insurer_id as insurer_id,
cp.tpa_id as tpa_id,
emp.client_id ,
emp.client_id,
emp.id as emp_id,
emp_pol.uhid as policy_no,
cp.policy_no,
emp.emp_code,
emp_pol.tpa_id as tpa_no,
emp.name as emp_name,

View File

@ -392,7 +392,7 @@ class MediAssistApiController extends BaseController
// send e-card
if(!empty($employee_policy_ids)){
log_message('error', "sendMailForDownloadingECard JOB PUSHED.");
Jobs::addJob(['job_name' => 'sendMailForDownloadingECard', 'payload' => $employee_policy_ids]);
Jobs::addJob(['job_name' => 'sendMailForDownloadingECard', 'payload' => ['ids' => $employee_policy_ids, 'client_policy_id' => $client_policy_id]]);
}
// update file table status after the tpa id successfully updated

View File

@ -297,7 +297,8 @@ class PayoutController extends BaseController
'agent_id' => $json['agent_id'],
'invoice_date' => $json['invoice_date'],
'invoice_amount' => $json['invoice_amount'],
'payout_status' => 1
'payout_status' => 1,
'broker_id' => 1
];
$invoiceId = $this->invoiceModel->insert($invoiceData);

View File

@ -10,7 +10,7 @@ class CommissionApiFilter implements FilterInterface
{
public function before(RequestInterface $request, $arguments = null)
{
// return null;
return null;
// Read API key from header
$authHeader = $request->getHeaderLine('AUTHORIZATION');
if(empty($authHeader))

View File

@ -107,7 +107,8 @@ class InvoiceModel extends Model
partner_agent.name as agent_name
")
->join('partner_agent', 'partner_invoice.agent_id = partner_agent.id')
->where('partner_invoice.is_active', 1);
->where('partner_invoice.is_active', 1)
->where('partner_invoice.broker_id', 1);
if(!empty($agent_id)){
$data->where('partner_invoice.agent_id', $agent_id);

View File

@ -203,7 +203,7 @@
<?php } ?>
<?php if($employee['relationship'] == 'Self' && in_array($employee['policy_type_id'], [2,3,4,5]) && $employee['email_corporate'] != '' && $employee['emp_status'] == 'active' && $employee['status'] == 'active' && !empty($employee['tpa_id'])) { ?>
<a class="dropdown-item" onclick="send_mail_for_individual_employee_ecard('<?= $employee['id'];?>')" ><i class="mdi mdi-email-alert mr-2 text-muted font-18 vertical-middle"></i>Send E-Card Mail</a>
<a class="dropdown-item" onclick="send_mail_for_individual_employee_ecard('<?= $employee['id'];?>', '<?= $employee['client_policy_id'];?>')" ><i class="mdi mdi-email-alert mr-2 text-muted font-18 vertical-middle"></i>Send E-Card Mail</a>
<?php } ?>
</div>
@ -553,7 +553,7 @@
});
}
function send_mail_for_individual_employee_ecard(id){
function send_mail_for_individual_employee_ecard(id, client_policy_id){
Swal.fire({
title: "Do you want to send Ecard Mail?",
@ -570,7 +570,7 @@
$.ajax({
url: '<?php echo base_url('util/send_mail_for_individual_employee_ecard/');?>'+id,
url: '<?php echo base_url('util/send_mail_for_individual_employee_ecard/');?>'+id + '/' + client_policy_id,
type: "GET",
dataType: 'json',
success: function (res) {

View File

@ -189,7 +189,7 @@
<div class="card-body">
<div class="row" style="margin-bottom:1rem;">
<div class="col-6" style="align-self: center;">
<h4 style="position: relative;">Add Endorsement</h4>
<h4 id="page_title" style="position: relative;">Add Endorsement</h4>
</div>
<div class="col-6" style="text-align: right;">
<a href="<?= base_url('policy_tranction/endorsement/list2') ?>" id="btnAdd" class="btn btn-primary waves-effect waves-light"
@ -2166,7 +2166,7 @@
</div>
</div>
<div class="form-row mb-2 card_group_7" style="display:none;">
<div class="form-row mb-2 card_group_7">
<div class="col-6"><label class="card_label_7">Base </label></div>
<div class="col-6">
<input type="text" class="form-control right-align-input" id="co_premium_${insurerCount}" name="co_premium[]" oninput="amountCalculation('${insurerCount}')" onkeypress="return onlyNumbers(event)">
@ -2234,31 +2234,31 @@
<div class="form-row">
<div class="col-12">
<div class="form-row mb-1 text-success small font-weight-bold">
<div class="col-4">Remuneration</div>
<div class="col-4"></div>
<div class="col-4 hidetp"></div>
<div class="col-4 hideter" style="display:none;"></div>
<div class="col-4 csslabel">Remuneration</div>
<div class="col-4 cssbp"></div>
<div class="col-4 hidetp csstp"></div>
<div class="col-4 hideter csstep" style="display:none;"></div>
</div>
</div>
<div class="col-12">
<div class="form-row mb-2 align-items-center">
<div class="col-4"><label class="card_label_14">Agreed (%)</label></div>
<div class="col-4 card_group_14">
<div class="col-4 csslabel"><label class="card_label_14">Agreed (%)</label></div>
<div class="col-4 card_group_14 cssbp">
<div class="input-wrap mr-2">
<span class="input-prefix">BP &nbsp; </span>
<input type="text" class="form-control right-align-input input-content" id="agreed_bp_${insurerCount}" name="agreed_bp[]" oninput="amountCalculation('${insurerCount}'); validateRange(this)" onkeypress="return onlyNumbers(event)" >
<span class="input-symbol">%</span>
</div>
</div>
<div class="col-4 card_group_15 hidetp">
<div class="col-4 card_group_15 hidetp csstp">
<div class="input-wrap mr-2">
<span class="input-prefix">TP &nbsp; </span>
<input type="text" class="form-control right-align-input input-content" id="agreed_tp_${insurerCount}" name="agreed_tp[]" oninput="amountCalculation('${insurerCount}'); validateRange(this)" onkeypress="return onlyNumbers(event)">
<span class="input-symbol">%</span>
</div>
</div>
<div class="col-4 card_group_16 hideter" style="display:none;">
<div class="col-4 card_group_16 hideter csstep" style="display:none;">
<div class="input-wrap">
<span class="input-prefix">TEP &nbsp; </span>
<input type="text" class="form-control right-align-input input-content" id="agreed_tep_${insurerCount}" name="agreed_ter[]" oninput="amountCalculation('${insurerCount}'); validateRange(this)" onkeypress="return onlyNumbers(event)" >
@ -2281,22 +2281,22 @@
<div class="col-12">
<div class="form-row mb-2 align-items-center">
<div class="col-4"><label class="card_label_18">Standard</label></div>
<div class="col-4 card_group_18">
<div class="col-4 csslabel"><label class="card_label_18">Standard</label></div>
<div class="col-4 card_group_18 cssbp">
<div class="input-wrap mr-2">
<span class="input-prefix">BP &nbsp;</span>
<input type="text" class="form-control readonly-color right-align-input input-content" id="standard_bp_${insurerCount}" name="standard_bp[]" onkeypress="return onlyNumbers(event)" readonly>
<span class="input-symbol">%</span>
</div>
</div>
<div class="col-4 card_group_19 hidetp">
<div class="col-4 card_group_19 hidetp csstp">
<div class="input-wrap mr-2">
<span class="input-prefix">TP &nbsp;</span>
<input type="text" class="form-control readonly-color right-align-input input-content" id="standard_tp_${insurerCount}" name="standard_tp[]" onkeypress="return onlyNumbers(event)" readonly >
<span class="input-symbol">%</span>
</div>
</div>
<div class="col-4 card_group_20 hideter" style="display:none;">
<div class="col-4 card_group_20 hideter csstep" style="display:none;">
<div class="input-wrap">
<span class="input-prefix">TEP &nbsp;</span>
<input type="text" class="form-control readonly-color right-align-input input-content" id="standard_tep_${insurerCount}" name="standard_ter[]" onkeypress="return onlyNumbers(event)" readonly></td>
@ -2320,22 +2320,22 @@
<div class="col-12">
<div class="form-row mb-2 align-items-center">
<div class="col-4"><label class="card_label_24">Actual (%)</label></div>
<div class="col-4 card_group_24">
<div class="col-4 csslabel"><label class="card_label_24">Actual (%)</label></div>
<div class="col-4 card_group_24 cssbp">
<div class="input-wrap mr-2">
<span class="input-prefix">BP &nbsp;</span>
<input type="text" class="form-control readonly-select right-align-input input-content" id="actual_bp_per_${insurerCount}" name="actual_bp_per[]" onchange="actualAmountCalculation('${insurerCount}', 'bp_per')" onkeypress="return onlyNumbers(event)">
<span class="input-symbol">%</span>
</div>
</div>
<div class="col-4 card_group_22 hidetp">
<div class="col-4 card_group_22 hidetp csstp">
<div class="input-wrap mr-2">
<span class="input-prefix">TP &nbsp;</span>
<input type="text" class="form-control readonly-select right-align-input input-content" id="actual_tp_per_${insurerCount}" name="actual_tp_per[]" onchange="actualAmountCalculation('${insurerCount}', 'tp_per')" onkeypress="return onlyNumbers(event)">
<span class="input-symbol">%</span>
</div>
</div>
<div class="col-4 card_group_23 hideter" style="display:none;">
<div class="col-4 card_group_23 hideter csstep" style="display:none;">
<div class="input-wrap">
<span class="input-prefix">TEP &nbsp;</span>
<input type="text" class="form-control readonly-select right-align-input input-content" id="actual_tep_per_${insurerCount}" name="actual_tep_per[]" onchange="actualAmountCalculation('${insurerCount}', 'tep_per')" onkeypress="return onlyNumbers(event)">
@ -2347,20 +2347,20 @@
` : ''}
<div class="col-12">
<div class="form-row mb-2 align-items-center">
<div class="col-4"><label class="card_label_21">Actual brokerage Amount</label></div>
<div class="col-4 card_group_21">
<div class="col-4 csslabel "><label class="card_label_21">Actual Amount</label></div>
<div class="col-4 card_group_21 cssbp">
<div class="input-wrap">
<span class="input-prefix">BP &nbsp;</span>
<input type="text" class="form-control readonly-select right-align-input" id="actual_bp_brokerage_amt_${insurerCount}" name="actual_bp_brokerage_amt[]" onchange="actualAmountCalculation('${insurerCount}', 'bp_broker_amt')" onkeypress="return onlyNumbers(event)">
</div>
</div>
<div class="col-4 card_group_22 hidetp">
<div class="col-4 card_group_22 hidetp csstp">
<div class="input-wrap">
<span class="input-prefix">TP &nbsp;</span>
<input type="text" class="form-control readonly-select right-align-input" id="actual_tp_brokerage_amt_${insurerCount}" name="actual_tp_brokerage_amt[]" onchange="actualAmountCalculation('${insurerCount}', 'tp_broker_amt' )" onkeypress="return onlyNumbers(event)">
</div>
</div>
<div class="col-4 card_group_23 hideter" style="display:none;">
<div class="col-4 card_group_23 hideter csstep" style="display:none;">
<div class="input-wrap">
<span class="input-prefix">TEP &nbsp;</span>
<input type="text" class="form-control readonly-select right-align-input" id="actual_tep_brokerage_amt_${insurerCount}" name="actual_tep_brokerage_amt[]" onchange="actualAmountCalculation('${insurerCount}', 'tep_broker_amt')" onkeypress="return onlyNumbers(event)">
@ -2449,38 +2449,68 @@
// Instead of manipulating global classes like $('.hideter').show(), we manipulate classes on the card elements.
// General reset/hide for the current card
if(allocg == "EB"){
$('.hideter').hide();
$('.hidetp').hide();
$('.hidecoter').hide()
$('.hidecotp').hide()
}else{
console.log(allocg);
console.log("*(");
var $allPremiumCols = $('.csslabel, .cssbp , .csstp,.csstep');
$('.hidetp').show();
if(is_co_pay_yes == 1){
$('.hidecotp').show();
$('#table_tr_7').show();
$('#table_tr_35').show();
$('#table_tr_3').show();
}else{
$('.hidecotp').hide();
$('#table_tr_7').hide();
$('#table_tr_35').hide();
$('#table_tr_3').hide();
}
if (allocg == "EB") {
// ----------------------------------------------------
// CASE: 2 Columns Visible (Label, BP)
// Goal: Both must be col-6 to fill the row (6 + 6 = 12)
// ----------------------------------------------------
$('.hideter').hide();
$('.hidetp').hide();
$('.hidecoter').hide();
$('.hidecotp').hide();
if(bap == 'Fire' || bap == 'Marine Cargo' || bap == 'Marine Hull'){
$('.hideter').show();
if(is_co_pay_yes == 1){
$('.hidecoter').show();
}else{
$('.hidecoter').hide();
}
}else{
$('.hideter').hide();
}
// Select ONLY the currently visible columns and set them to col-6
// Since TP and TEP have the hidetp/hideter classes, they are hidden and excluded by :visible.
$allPremiumCols.filter(':visible').removeClass('col-3 col-4').addClass('col-6');
} else {
// TP column is visible here
$('.hidetp').show();
if (is_co_pay_yes == 1) {
$('.hidecotp').show();
$('#table_tr_7').show();
$('#table_tr_35').show();
$('#table_tr_3').show();
} else {
$('.hidecotp').hide();
$('#table_tr_7').hide();
$('#table_tr_35').hide();
$('#table_tr_3').hide();
}
if (bap == 'Fire' || bap == 'Marine Cargo' || bap == 'Marine Hull') {
// ----------------------------------------------------
// CASE: 4 Columns Visible (Label, BP, TP, TEP)
// Goal: All must be col-3 (3 + 3 + 3 + 3 = 12)
// ----------------------------------------------------
$('.hideter').show();
if (is_co_pay_yes == 1) {
$('.hidecoter').show();
} else {
$('.hidecoter').hide();
}
// Action for 4 visible columns: Select ALL and set them to col-3
$allPremiumCols.removeClass('col-4 col-6').addClass('col-3');
} else {
// ----------------------------------------------------
// CASE: 3 Columns Visible (Label, BP, TP)
// Goal: All three must be col-4 (4 + 4 + 4 = 12)
// ----------------------------------------------------
$('.hideter').hide();
// Action for 3 visible columns: Select ONLY visible and set them to col-4
// TEP is hidden and excluded by :visible.
$allPremiumCols.filter(':visible').removeClass('col-3 col-6').addClass('col-4');
}
}
// --- 3. Set Standard Percentages ---
var std_bp = 0;
var std_tp = 0;
@ -2973,7 +3003,7 @@
if (tpValueField) {
tpValueField.forEach((field) => { field.value = inputValue; });
console.log("Updated", tpValueFields.length, "hidden tp premiums");
console.log("Updated", tpValueField.length, "hidden tp premiums");
} else {
console.error("Error: Element with class '.tp_value' not found.");
}

View File

@ -318,7 +318,7 @@
<div class="col-1" style="text-align: right; position: relative; left: 193px;">
<a href="<?= base_url('policy_tranction/inception/list2') ?>" type="button" id="btnAdd" class="btn btn-primary waves-effect waves-light">Back</a>
</div>
</div>
</div><!-- row -->
<form role="form" class="parsley-examples" method="post" id="inception_form_id" enctype="multipart/form-data">
<input type="hidden" name="id" id="policy_tranction_primarykey">
@ -520,10 +520,10 @@
</div>
</div>
</div>
</div>
</div> <!-- default_row -->
<!-- Vehicle Quick Add DIV -->
<div class="row" id="vehicle_row_div"></div>
<div class="row" id="vehicle_row_div"></div><!-- vehicle_row_div -->
<!-- Client Details Row -->
<div class="row">
@ -535,8 +535,8 @@
<a id="toggleIcon" class="text-dark float-right" data-toggle="collapse" href="#collapseOne"
aria-expanded="true">
<i id="icon" class="mdi mdi-chevron-up mr-1 text-primary" style="font-size: 28px;"></i>
</a>
</label>
</a><!-- toggleIcon -->
</label><!-- policyAccordion -->
<div class="card mb-1">
<div id="collapseOne" class="collapse show" aria-labelledby="headingOne" data-parent="#accordion_0">
<div class="card-body">
@ -581,7 +581,7 @@
</select>
</div> -->
</div>
</div><!-- actcual_clients -->
<div class="row" id="policyholdernamediv" style="display: none;">
<div class="form-group col-md-3">
@ -597,7 +597,7 @@
<label for="same_as_proposer"
style="position: relative;top: 31px;left: 17px;">Insured (Same as Proposer)</label>
</div>
</div>
</div><!-- policyholdernamediv -->
<div class="row" id="family_details" style="display: none;">
<div class="col-md-12">
<div class="form-section">
@ -605,16 +605,16 @@
<div id="dynamic-form-container-for-insured"></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div> <!-- family_details -->
</div><!-- card-body -->
</div><!-- collapseOne -->
</div><!-- card mb-1 -->
</div><!-- accordion_0 closed -->
</div> <!-- Section 1 closed -->
</div><!-- Client Details Row closed -->
<!-- Client Quick Add DIV -->
<div class="row" id="client_row_div"></div>
<div class="row" id="client_row_div"></div><!-- client_row_div -->
<!-- Sales Row -->
<div class="row" id="sales_row" style="display: none;">
@ -629,153 +629,136 @@
</label>
<div class="card mb-1">
<div id="collapseThree" class="collapse show" aria-labelledby="headingOne" data-parent="#accordion_2">
<div class="card-body">
<div class="row">
<div class="card-body">
<div class="row">
<div class="form-group col-md-12" id="renewal" style="display: none;">
<label for="addon_policy"> Renewal Source Policy <span id="base_danger"class="text-danger"></span></label>
<select class="form-control" id="source_client_policy_id"name="source_client_policy_id" onchange="setRenewalPolicyData(this)">
<option value="" selected>Select Renewal Source Policy</option>
</select>
</div>
<div class="form-group col-md-12" id="renewal" style="display: none;">
<label for="addon_policy"> Renewal Source Policy <span id="base_danger"class="text-danger"></span></label>
<select class="form-control" id="source_client_policy_id"name="source_client_policy_id" onchange="setRenewalPolicyData(this)">
<option value="" selected>Select Renewal Source Policy</option>
</select>
</div> <!-- renewal -->
<div class="form-group col-md-3" id="base_policy_id" style="display: none;">
<label for="addon_policy">Base Policy<span id="base_danger"
class="text-danger">*</span></label>
<select class="form-control" id="base_policy" name="base_policy">
<option value="" selected>Select Base Policy</option>
</select>
</div>
<div class="form-group col-md-3">
<label for="addon_policy">Policy No<span id="base_danger"class="text-danger">*</span></label>
<input type="text" class="form-control" id="policy_no" name="policy_no"placeholder="Enter Policy No" >
</div>
<div class="form-group col-md-3">
<div class="form-group col-md-3" id="base_policy_id" style="display: none;">
<label for="addon_policy">Base Policy<span id="base_danger"
class="text-danger">*</span></label>
<select class="form-control" id="base_policy" name="base_policy">
<option value="" selected>Select Base Policy</option>
</select>
</div><!-- base_policy_id -->
<label for="addon_policy" class="d-flex align-items-center">
<span class="flex-grow-1">Policy Issue Date<span id="base_danger" class="text-danger">*</span></span>
<small id="policy_issue_month_info"
class="text-right"
style="font-size: x-small;">
</small>
</label>
<input type="text" class="form-control" id="policy_issue_date" name="policy_issue_date" placeholder="DD/MM/YYYY" >
</div>
<div class="d-none">
<label for="addon_policy">Policy Issue Month<span id="base_danger" class="text-danger">*</span></label>
<input type="text" class="form-control readonly-select" id="month" name="month" placeholder="MM/YYYY" >
</div>
<div class="form-group col-md-3">
<label for="addon_policy">Policy No<span id="base_danger"class="text-danger">*</span></label>
<input type="text" class="form-control" id="policy_no" name="policy_no"placeholder="Enter Policy No" >
</div><!-- form-group col-md-3 Policy No -->
<div class="form-group col-md-3">
<label for="bp_cgst">D.O.C</label>
<input id="policy_start_date" type="text" class="form-control" name="policy_start_date" placeholder="DD/MM/YYYY" >
</div>
<div class="form-group col-md-3">
<label for="addon_policy" class="d-flex align-items-center">
<span class="flex-grow-1">Policy Issue Date<span id="base_danger" class="text-danger">*</span></span>
<small id="policy_issue_month_info"
class="text-right"
style="font-size: x-small;">
</small>
</label>
<input type="text" class="form-control" id="policy_issue_date" name="policy_issue_date" placeholder="DD/MM/YYYY" >
</div><!-- form-group col-md-3 Policy Issue Date -->
<div class="form-group col-md-3">
<label for="bp_igst">D.O.E</label>
<input id="policy_end_date" type="text" class="form-control" name="policy_end_date" placeholder="DD/MM/YYYY" >
</div>
<!--
<div class="form-group col-md-3" id="tpa_div">
<label for="tpa"> TPA <span id="tpa_danger"class="text-danger"></span></label>
<select class="form-control" id="tpa" name="tpa" >
<option value="" selected>Select TPA</option>
<?php foreach ($tpa as $value) { ?>
<option value="<?= $value['id'] . '-' . $value['tpa_id'] ?>">
<?= $value['tpa_short_name'] . '-' . $value['branch_code'] ?>
</option>
<?php } ?>
</select>
</div> -->
<div class="d-none">
<label for="addon_policy">Policy Issue Month<span id="base_danger" class="text-danger">*</span></label>
<input type="text" class="form-control readonly-select" id="month" name="month" placeholder="MM/YYYY" >
</div><!-- Policy Issue Month -->
<div class="form-group col-md-3" id="no_of_insured_div">
<label for="addon_policy">No of Insured<span id="base_danger"class="text-danger"></span></label>
<input type="text" class="form-control" id="emp_count" name="emp_count" placeholder="Enter Employeee" onkeypress="return onlyNumbers(event)">
</div>
<div class="form-group col-md-3">
<label for="bp_cgst">D.O.C</label>
<input id="policy_start_date" type="text" class="form-control" name="policy_start_date" placeholder="DD/MM/YYYY" >
</div><!-- D.O.C -->
<div class="form-group col-md-3" id="no_of_dependents_div">
<label for="addon_policy">No of Dependents<span id="base_danger" class="text-danger"></span></label>
<input type="text" class="form-control" id="dependent_count" name="dependent_count" placeholder="Enter Dependent" onkeypress="return onlyNumbers(event)">
</div>
<div class="form-group col-md-3">
<label for="bp_igst">D.O.E</label>
<input id="policy_end_date" type="text" class="form-control" name="policy_end_date" placeholder="DD/MM/YYYY" >
</div><!-- D.O.E -->
<div class="form-group col-md-3">
<label for="installment">Installment &nbsp; <i id="infoIcon" class="mdi mdi-information-outline info-icon" data-toggle="tooltip" title="Click for Installment details" style="margin-left: 5px;"></i></label>
<input id="installment" value="" type="text" class="form-control" name="installment">
</div>
<div class="form-group col-md-3" id="no_of_insured_div">
<label for="addon_policy">No of Insured<span id="base_danger"class="text-danger"></span></label>
<input type="text" class="form-control" id="emp_count" name="emp_count" placeholder="Enter Employeee" onkeypress="return onlyNumbers(event)">
</div><!-- no_of_insured_div -->
<div class="form-group col-md-3">
<label for="installment_data">
Installment Data
</label>
<input id="installment_data" class="form-control" name="installment_data">
</div>
<div class="form-group col-md-3" id="no_of_dependents_div">
<label for="addon_policy">No of Dependents<span id="base_danger" class="text-danger"></span></label>
<input type="text" class="form-control" id="dependent_count" name="dependent_count" placeholder="Enter Dependent" onkeypress="return onlyNumbers(event)">
</div><!-- no_of_dependents_div -->
<!-- <div class="form-group col-md-3">
<label for="spl">SPL</label>
<input id="spl" value="" type="text" class="form-control" name="spl">
</div> -->
<div class="form-group col-md-3">
<label for="installment">Installment &nbsp; <i id="infoIcon" class="mdi mdi-information-outline info-icon" data-toggle="tooltip" title="Click for Installment details" style="margin-left: 5px;"></i></label>
<input id="installment" value="" type="text" class="form-control" name="installment">
</div><!-- Installment -->
<div class="form-group col-md-3">
<label class="card_label_4">Base Premium<span id="base_danger" class="text-danger">*</span></label>
<input type="text" class="form-control right-align-input" id="base_premium" name="base_premium" oninput="" onkeypress="return onlyNumbers(event)" onchange="setBPValue(this.value)" required>
</div>
<div class="form-group col-md-3 hidetp">
<label class="card_label_5">TP Premium</label>
<input type="text" class="form-control right-align-input" id="tp_premium" name="tp_premium" oninput="" onkeypress="return onlyNumbers(event)" onchange="setTPValue(this.value)">
</div>
<div class="form-group col-md-3">
<label for="installment_data">
Installment Data
</label>
<input id="installment_data" class="form-control" name="installment_data">
</div><!-- Installment Data -->
<div class="form-group col-md-3 hideter card_group_6" style="display:none;">
<label class="card_label_6">TEP Premium</label>
<input type="text" class="form-control right-align-input" id="ter_premium" name="ter_premium" oninput="" onkeypress="return onlyNumbers(event)" onchange="setTEPValue(this.value)">
</div>
<div class="form-group col-md-2">
<label class="switch" style="position: relative;top: 30px;left: 4px;">
<input id="cop_yes" type="checkbox" name="co_share">
<span class="slider round" style="height: 27px;"></span>
</label>
<label for="inception_type"
style="position: relative;top: 31px;left: 17px;">CoP Yes</label>
</div>
<div class="form-group col-md-4 payby d-none">
<label class="switch" style="position: relative;top: 30px;left: 4px;">
<input id="bro_payable_by" type="checkbox" name="bro_payable_by" checked>
<span class="slider round" style="height: 27px;"></span>
</label>
<label for="inception_type" style="position: relative;top: 31px;left: 17px;">Remuneration Pay By Leader</label>
</div>
<div class="form-group col-md-4">
<label for="renewal_date">Renewal Date<span id="base_danger"
class="text-danger">*</span></label>
<input type="text" class="form-control" id="renewal_date"
name="renewal_date" placeholder="DD/MM/YYYY">
</div>
<div class="form-group col-md-3">
<label class="card_label_4">Base Premium<span id="base_danger" class="text-danger">*</span></label>
<input type="text" class="form-control right-align-input" id="base_premium" name="base_premium" oninput="" onkeypress="return onlyNumbers(event)" onchange="setBPValue(this.value)" required>
</div><!-- Base Premium -->
<div class="form-group col-md-3 hidetp">
<label class="card_label_5">TP Premium</label>
<input type="text" class="form-control right-align-input" id="tp_premium" name="tp_premium" oninput="" onkeypress="return onlyNumbers(event)" onchange="setTPValue(this.value)">
</div><!-- TP Premium -->
</div>
<!-- <div class="row"> -->
<!-- <div class="form-group col-md-3">
<label for="location">Location<span id="base_danger"class="text-danger"></span></label>
<input type="text" class="form-control" id="location" name="location"placeholder="Enter location" >
</div> -->
<!-- </div> -->
</div>
</div>
<div class="form-group col-md-3 hideter card_group_6" style="display:none;">
<label class="card_label_6">TEP Premium</label>
<input type="text" class="form-control right-align-input" id="ter_premium" name="ter_premium" oninput="" onkeypress="return onlyNumbers(event)" onchange="setTEPValue(this.value)">
</div><!-- TEP Premium -->
<div class="form-group col-md-2">
<label class="switch" style="position: relative;top: 30px;left: 4px;">
<input id="cop_yes" type="checkbox" name="co_share">
<span class="slider round" style="height: 27px;"></span>
</label>
<label for="inception_type"
style="position: relative;top: 31px;left: 17px;">CoP Yes</label>
</div><!-- CoP Yes -->
<div class="form-group col-md-4 payby d-none">
<label class="switch" style="position: relative;top: 30px;left: 4px;">
<input id="bro_payable_by" type="checkbox" name="bro_payable_by" checked>
<span class="slider round" style="height: 27px;"></span>
</label>
<label for="inception_type" style="position: relative;top: 31px;left: 17px;">Remuneration Pay By Leader</label>
</div><!-- Remuneration Pay By Leader -->
<div class="form-group col-md-4">
<label for="renewal_date">Renewal Date<span id="base_danger"
class="text-danger">*</span></label>
<input type="text" class="form-control" id="renewal_date"
name="renewal_date" placeholder="DD/MM/YYYY">
</div><!-- Renewal Date -->
</div><!-- collapseThree card-body row -->
</div><!-- collapseThree card-body -->
</div><!-- collapseThree -->
</div><!-- card mb-1 -->
</div> <!-- accordion_2 div closed here -->
</div><!-- 1st col-md-12 div closed here -->
<!-- Premium Details -->
</div> <!-- sales_row div closed here -->
<!-- Premium Details Row -->
<div class="row" id="premium_details_row">
<div class="col-md-12">
<div id="accordion_3" class="mb-0">
<label id="policyAccordion" class="m-1 d-flex justify-content-between align-items-center">
<span class="font-color-black">Premium Details</span>
@ -783,36 +766,31 @@
aria-expanded="true">
<i id="icon" class="mdi mdi-chevron-up mr-1 text-primary" style="font-size: 28px;"></i>
</a>
</label>
</label><!-- Premium Details policyAccordion -->
<div class="card mb-0">
<div id="collapseFour" class="collapse show" aria-labelledby="headingOne" data-parent="#accordion_3">
<div class="card-body">
<div id="allInsurerCards"></div>
</div>
</div> <!-- collapseFour div closed here -->
</div>
</div> <!-- accordion_3 div closed here -->
<!-- ends Premium Details -->
</div> <!-- sales_row div closed here -->
<div class="row">
<div class="col-12">
<div class="form-group text-right mt-2 m-b-0" id="submitButton">
<button type="submit" class="btn btn-primary waves-effect waves-light mr-1"
id="btnSubmit">Submit</button>
</div>
</div> <!-- Premium Details collapseFour div card-body closed here -->
</div> <!-- Premium Details collapseFour div closed here -->
</div><!-- Premium Details policyAccordion card -->
</div> <!-- Premium Details accordion_3 div closed here -->
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<!-- end form row -->
</div><!-- ends Premium Details -->
<div class="form-group text-right mt-3 m-b-0" id="submitButton">
<button type="submit" class="btn btn-primary waves-effect waves-light mr-1" id="btnSubmit">Submit</button>
</div><!-- submitButton -->
</form><!-- role="form" -->
</div><!-- card-body -->
</div><!-- card -->
</div><!-- col-xl-12 -->
</div><!-- end inception_form row -->
</div><!-- tab-pane -->
<!-- Vehicle form content modal-->
<div class="modal fade" id="vehicle_modal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" data-backdrop="static">
@ -4482,31 +4460,31 @@
<div class="form-row">
<div class="col-12">
<div class="form-row mb-1 text-success small font-weight-bold">
<div class="col-4">Remuneration</div>
<div class="col-4"></div>
<div class="col-4 hidetp"></div>
<div class="col-4 hideter" style="display:none;"></div>
<div class="col-4 csslabel">Remuneration</div>
<div class="col-4 cssbp"></div>
<div class="col-4 csstp hidetp"></div>
<div class="col-4 csstep hideter" style="display:none;"></div>
</div>
</div>
<div class="col-12">
<div class="form-row mb-2 align-items-center">
<div class="col-4"><label class="card_label_14">Agreed (%)</label></div>
<div class="col-4 card_group_14">
<div class="col-4 csslabel "><label class="card_label_14">Agreed (%)</label></div>
<div class="col-4 cssbp card_group_14">
<div class="input-wrap mr-2">
<span class="input-prefix">BP &nbsp; </span>
<input type="text" class="form-control right-align-input input-content" id="agreed_bp_${insurerCount}" name="agreed_bp[]" oninput="validateRange(this);" onkeypress="return onlyNumbers(event)">
<span class="input-symbol">%</span>
</div>
</div>
<div class="col-4 card_group_15 hidetp">
<div class="col-4 card_group_15 csstp hidetp">
<div class="input-wrap mr-2">
<span class="input-prefix">TP &nbsp; </span>
<input type="text" class="form-control right-align-input input-content" id="agreed_tp_${insurerCount}" name="agreed_tp[]" oninput="validateRange(this);" onkeypress="return onlyNumbers(event)">
<span class="input-symbol">%</span>
</div>
</div>
<div class="col-4 card_group_16 hideter" style="display:none;">
<div class="col-4 card_group_16 csstep hideter" style="display:none;">
<div class="input-wrap">
<span class="input-prefix">TEP &nbsp; </span>
<input type="text" class="form-control right-align-input input-content" id="agreed_ter_${insurerCount}" name="agreed_ter[]" oninput="validateRange(this);" onkeypress="return onlyNumbers(event)">
@ -4529,22 +4507,22 @@
<div class="col-12">
<div class="form-row mb-2 align-items-center">
<div class="col-4"><label class="card_label_18">Standard</label></div>
<div class="col-4 card_group_18">
<div class="col-4 csslabel "><label class="card_label_18">Standard</label></div>
<div class="col-4 cssbp card_group_18">
<div class="input-wrap mr-2">
<span class="input-prefix">BP &nbsp;</span>
<input type="text" class="form-control readonly-color right-align-input input-content" id="standard_bp_${insurerCount}" name="standard_bp[]" readonly>
<span class="input-symbol">%</span>
</div>
</div>
<div class="col-4 card_group_19 hidetp">
<div class="col-4 card_group_19 csstp hidetp">
<div class="input-wrap mr-2">
<span class="input-prefix">TP &nbsp;</span>
<input type="text" class="form-control readonly-color right-align-input input-content" id="standard_tp_${insurerCount}" name="standard_tp[]" readonly>
<span class="input-symbol">%</span>
</div>
</div>
<div class="col-4 card_group_20 hideter" style="display:none;">
<div class="col-4 card_group_20 csstep hideter" style="display:none;">
<div class="input-wrap">
<span class="input-prefix">TEP &nbsp;</span>
<input type="text" class="form-control readonly-color right-align-input input-content" id="standard_tep_${insurerCount}" name="standard_ter[]" readonly>
@ -4567,22 +4545,22 @@
<div class="col-12">
<div class="form-row mb-2 align-items-center">
<div class="col-4"><label class="card_label_24">Actual (%)</label></div>
<div class="col-4 card_group_24">
<div class="col-4 csslabel "><label class="card_label_24">Actual (%)</label></div>
<div class="col-4 cssbp card_group_24">
<div class="input-wrap mr-2">
<span class="input-prefix">BP &nbsp;</span>
<input type="text" class="form-control readonly-select right-align-input input-content" id="actual_bp_per_${insurerCount}" name="actual_bp_per[]" onchange="actualAmountCalculation('${insurerCount}', 'bp_per')" onkeypress="return onlyNumbers(event)">
<span class="input-symbol">%</span>
</div>
</div>
<div class="col-4 card_group_22 hidetp">
<div class="col-4 card_group_22 csstp hidetp">
<div class="input-wrap mr-2">
<span class="input-prefix">TP &nbsp;</span>
<input type="text" class="form-control readonly-select right-align-input input-content" id="actual_tp_per_${insurerCount}" name="actual_tp_per[]" onchange="actualAmountCalculation('${insurerCount}', 'tp_per')" onkeypress="return onlyNumbers(event)">
<span class="input-symbol">%</span>
</div>
</div>
<div class="col-4 card_group_23 hideter" style="display:none;">
<div class="col-4 card_group_23 csstep hideter" style="display:none;">
<div class="input-wrap">
<span class="input-prefix">TEP &nbsp;</span>
<input type="text" class="form-control readonly-select right-align-input input-content" id="actual_tep_per_${insurerCount}" name="actual_tp_per[]" onchange="actualAmountCalculation('${insurerCount}', 'tep_per')" onkeypress="return onlyNumbers(event)">
@ -4596,20 +4574,20 @@
<div class="col-12">
<div class="form-row mb-2 align-items-center">
<div class="col-4"><label class="card_label_21">Actual Amount</label></div>
<div class="col-4 card_group_21">
<div class="col-4 csslabel "><label class="card_label_21">Actual Amount</label></div>
<div class="col-4 cssbp card_group_21">
<div class="input-wrap">
<span class="input-prefix">BP &nbsp;</span>
<input type="text" class="form-control readonly-select right-align-input" id="actual_bp_amt_${insurerCount}" name="actual_bp_amt[]">
</div>
</div>
<div class="col-4 card_group_22 hidetp">
<div class="col-4 card_group_22 csstp hidetp">
<div class="input-wrap">
<span class="input-prefix">TP &nbsp;</span>
<input type="text" class="form-control readonly-select right-align-input" id="actual_tp_amt_${insurerCount}" name="actual_tp_amt[]">
</div>
</div>
<div class="col-4 card_group_23 hideter" style="display:none;">
<div class="col-4 card_group_23 csstep hideter" style="display:none;">
<div class="input-wrap">
<span class="input-prefix">TEP &nbsp;</span>
<input type="text" class="form-control readonly-select right-align-input" id="actual_tep_amt_${insurerCount}" name="actual_tep_amt[]">
@ -4620,20 +4598,20 @@
<div class="col-12">
<div class="form-row mb-2 align-items-center">
<div class="col-4"><label class="card_label_27">Remuneration Amount</label></div>
<div class="col-4 card_group_27">
<div class="col-4 csslabel "><label class="card_label_27">Remuneration Amount</label></div>
<div class="col-4 cssbp card_group_27">
<div class="input-wrap">
<span class="input-prefix">BP &nbsp;</span>
<input type="text" class="form-control readonly-select right-align-input" id="actual_bp_brokerage_amt_${insurerCount}" name="actual_bp_brokerage_amt[]">
</div>
</div>
<div class="col-4 card_group_28 hidetp">
<div class="col-4 card_group_28 csstp hidetp">
<div class="input-wrap">
<span class="input-prefix">TP &nbsp;</span>
<input type="text" class="form-control readonly-select right-align-input" id="actual_tep_brokerage_amt_${insurerCount}" name="actual_tep_brokerage_amt[]">
</div>
</div>
<div class="col-4 card_group_29" style="display:none;">
<div class="col-4 card_group_29 csstep hideter " style="display:none;">
<div class="input-wrap">
<span class="input-prefix">TEP &nbsp;</span>
<input type="text" class="form-control readonly-select right-align-input" id="actual_tep_brokerage_amt_dup_${insurerCount}" name="actual_tep_brokerage_amt_dup[]">
@ -4683,8 +4661,10 @@
let allocg = selectedOption.data('allocg');
let is_co_pay_yes = $('#cop_yes').prop('checked') ? 1 : 0;
var $allPremiumCols = $('.csslabel, .cssbp , .csstp,.csstep');
if (allocg == "EB") {
$('.hideter,.hidetp,.hidecoter,.hidecotp').hide();
$allPremiumCols.filter(':visible').removeClass('col-3 col-4').addClass('col-6');
} else {
$('.hidetp').show();
is_co_pay_yes ? $('.hidecotp').show() : $('.hidecotp').hide();
@ -4692,8 +4672,10 @@
if (['Fire','Marine Cargo','Marine Hull'].includes(bap)) {
$('.hideter').show();
is_co_pay_yes ? $('.hidecoter').show() : $('.hidecoter').hide();
$allPremiumCols.removeClass('col-4 col-6').addClass('col-3');
} else {
$('.hideter').hide();
$allPremiumCols.filter(':visible').removeClass('col-3 col-6').addClass('col-4');
}
}
@ -6642,7 +6624,7 @@
if (tpValueField) {
tpValueField.forEach((field) => { field.value = inputValue; });
console.log("Updated", tpValueFields.length, "hidden tp premiums");
console.log("Updated", tpValueField.length, "hidden tp premiums");
} else {
console.error("Error: Element with class '.tp_value' not found.");
}

0
public/assets/images/action_on_policies_sb.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

0
public/assets/images/active_bds.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 537 B

After

Width:  |  Height:  |  Size: 537 B

0
public/assets/images/active_claims.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

0
public/assets/images/active_leads_and_bds_renewal.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

0
public/assets/images/active_pending_actions.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 826 B

After

Width:  |  Height:  |  Size: 826 B

0
public/assets/images/app_content_mng_sb.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

0
public/assets/images/background_theme.jpg Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 665 KiB

After

Width:  |  Height:  |  Size: 665 KiB

0
public/assets/images/bg_image.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 10 MiB

After

Width:  |  Height:  |  Size: 10 MiB

0
public/assets/images/chatbot.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 9.8 KiB

After

Width:  |  Height:  |  Size: 9.8 KiB

0
public/assets/images/claims_sb.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

0
public/assets/images/clients_sb.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

0
public/assets/images/inactive_bds.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 664 B

After

Width:  |  Height:  |  Size: 664 B

0
public/assets/images/inactive_claims.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

0
public/assets/images/inactive_pending_actions.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 775 B

After

Width:  |  Height:  |  Size: 775 B

0
public/assets/images/leads_sb.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

0
public/assets/images/login_bg.jpg Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 219 KiB

After

Width:  |  Height:  |  Size: 219 KiB

0
public/assets/images/masters_sb.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

0
public/assets/images/policy_transactions_sb.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

0
public/assets/images/ticket.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

0
public/assets/images/user_manual_sb.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

0
public/claim_sample_forms/DIGITLIF.pdf Normal file → Executable file
View File

0
public/claim_sample_forms/ICICIPRU.pdf Normal file → Executable file
View File

0
public/claim_sample_forms/MAXLIFE.pdf Normal file → Executable file
View File

0
public/claim_sample_forms/NIA.pdf Normal file → Executable file
View File

0
public/claim_sample_forms/OIC.pdf Normal file → Executable file
View File

0
public/claim_sample_forms/PIFL.pdf Normal file → Executable file
View File

0
public/claim_sample_forms/RELIANCE.pdf Normal file → Executable file
View File

0
public/oauth-412703-c47b73db19c0.json Normal file → Executable file
View File

0
public/sample_excel/Sample_Member_Data.xlsx Normal file → Executable file
View File

0
public/sample_excel/Sample_Member_Data_1.xlsx Normal file → Executable file
View File

0
public/sample_excel/insurer_stament_sample.xlsx Normal file → Executable file
View File

0
public/sample_excel/insurer_stament_sample_old.xlsx Normal file → Executable file
View File

0
public/sample_excel/sample_bds_bulk_upload_excel.xlsx Normal file → Executable file
View File

0
public/sample_excel/sample_commission.csv Normal file → Executable file
View File

0
public/sample_excel/sample_multievent_file.xls Normal file → Executable file
View File

0
public/sample_excel/sample_multievent_file.xlsx Normal file → Executable file
View File

0
public/sample_import_excel/sample_import_Addition.xlsx Normal file → Executable file
View File

0
public/sample_import_excel/sample_import_Deletion.xlsx Normal file → Executable file
View File

View File

View File

View File

View File