diff --git a/app/Config/Routes.php b/app/Config/Routes.php index a0c418f7..204e2f3d 100755 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -336,6 +336,7 @@ $routes->group("/util", ["filter" => "authMVC"], function ($routes) { $routes->post('get_data_for_mapping', 'EmployeeController::getDataForMapping'); $routes->post('unmap_employees/(:num)', 'EmployeeController::unmapEmployees/$1'); $routes->get('transformMailContent', 'LeadsController::transformMailContent'); + $routes->get('getCDAmount', 'ClientController::getCDAmount'); }); $routes->group("policy_tranction", ["filter" => "authMVC"], function ($routes) { diff --git a/app/Controllers/ClientController.php b/app/Controllers/ClientController.php index cfe2a5e9..eab0a10b 100755 --- a/app/Controllers/ClientController.php +++ b/app/Controllers/ClientController.php @@ -256,49 +256,49 @@ class ClientController extends AdminController // print_r($wholeData); die; if($mail_active > 0){ - // $mail_send_return = MailHelper::send_email($wholeData[0]); + $mail_send_return = MailHelper::send_email($wholeData[0]); $this->myLogger->logme("info", $mail_send_return); } - if (isset($wholeData[0])) { + // if (isset($wholeData)) { - $params['common']['mail_type'] = 'account_maneger_summary_mail'; - $account_manager_wholeData =sendMailNotification::sendMailNotification('account_maneger_summary_mail', $params); - // print_r($account_manager_wholeData); die; + // $params['common']['mail_type'] = 'account_maneger_summary_mail'; + // $account_manager_wholeData =sendMailNotification::sendMailNotification('account_maneger_summary_mail', $params); + // // print_r($account_manager_wholeData); die; - if($account_manager_wholeData != null && $account_manager_wholeData != '' && count($account_manager_wholeData)) - { - if($mail_active > 0){ + // if($account_manager_wholeData != null && $account_manager_wholeData != '' && count($account_manager_wholeData)) + // { + // if($mail_active > 0){ - foreach ($account_manager_wholeData as $key => $value) { - // $mail_send_return1 = MailHelper::send_email($value); - $this->myLogger->logme("info", $mail_send_return1); - } + // foreach ($account_manager_wholeData as $key => $value) { + // // $mail_send_return1 = MailHelper::send_email($value); + // $this->myLogger->logme("info", $mail_send_return1); + // } - } + // } - }else{ - $this->myLogger->logme("error", 'Account Manager Mail Configuration not Enable for this client'); - } + // }else{ + // $this->myLogger->logme("error", 'Account Manager Mail Configuration not Enable for this client'); + // } - $params['common']['mail_type'] = 'client_hr_summary_mail'; - $client_hr_wholeData =sendMailNotification::sendMailNotification('client_hr_summary_mail', $params); - // print_r($client_hr_wholeData); die; + // $params['common']['mail_type'] = 'client_hr_summary_mail'; + // $client_hr_wholeData =sendMailNotification::sendMailNotification('client_hr_summary_mail', $params); + // // print_r($client_hr_wholeData); die; - if($client_hr_wholeData != null && $client_hr_wholeData != '' &&count($client_hr_wholeData)) - { - if($mail_active > 0){ + // if($client_hr_wholeData != null && $client_hr_wholeData != '' &&count($client_hr_wholeData)) + // { + // if($mail_active > 0){ - foreach ($client_hr_wholeData as $key => $value) { - // $mail_send_return2 = MailHelper::send_email($value); - $this->myLogger->logme("info", $mail_send_return2); - } - } + // foreach ($client_hr_wholeData as $key => $value) { + // // $mail_send_return2 = MailHelper::send_email($value); + // $this->myLogger->logme("info", $mail_send_return2); + // } + // } - }else{ - $this->myLogger->logme("error", 'Client HR Mail Configuration not Enable for this client'); - } - } + // }else{ + // $this->myLogger->logme("error", 'Client HR Mail Configuration not Enable for this client'); + // } + // } }else{ $this->myLogger->logme("error", 'Member Review Mail Configuration not Enable for this client'); @@ -3529,7 +3529,10 @@ class ClientController extends AdminController public function getCDAccNoByClientAndInsurer($client, $insurer) { - $cdmData = $this->CDMasterModel->where('client_id', $client)->where('insurer_id', $insurer)->findAll(); + $cdmData = $this->CDMasterModel + ->where('client_id', $client) + ->where('insurer_id', $insurer) + ->findAll(); if ($cdmData) { return $this->respond(['status' => true, 'data' => $cdmData], 200); @@ -4086,4 +4089,21 @@ class ClientController extends AdminController } } + public function getCDAmount() + { + $cd_ac_pk = $this->request->getGet('cd_ac_pk'); + + $cd_amount = $this->clientDepositModel + ->where('is_active', 1) + ->where('cd_ac_pk', $cd_ac_pk) + ->orderBy('id', 'desc') + ->first(); + + if($cd_amount){ + return $this->respond(['status' => true, 'code' => 200, 'data' => $cd_amount], 200); + } else { + return $this->respond(['status' => false, 'code' => 404, 'message' => 'no data found'], 200); + } + } + } diff --git a/app/Controllers/PolicyTransactionController.php b/app/Controllers/PolicyTransactionController.php index 6784c0fd..0e4466fd 100644 --- a/app/Controllers/PolicyTransactionController.php +++ b/app/Controllers/PolicyTransactionController.php @@ -121,6 +121,7 @@ class PolicyTransactionController extends BaseController 'cancelled' => 'Cancelled', 'instalment_pending' => 'Instalment Pending', 'completed' => 'Completed', + 'lost' => 'Lost', ]; $data['invoice_status_array'] = [ 'yet_to_generate' => 'Pending', @@ -291,6 +292,12 @@ class PolicyTransactionController extends BaseController $data['rollover_date'] = null; } + if(empty($data['last_action_date'])){ + $data['last_action_date'] = null; + }else{ + $data['last_action_date'] = change_date_format($data['last_action_date']); + } + // Separate Insurer and TPA Branch IDs and IDs if(isset($data['insurer_id']) && !empty($data['insurer_id'])){ @@ -321,6 +328,12 @@ class PolicyTransactionController extends BaseController $data['same_as_proposer'] = 1; } + if (!isset($data['policy_with_corr'])) { + $data['policy_with_corr'] = 0; + } elseif ($data['policy_with_corr']) { + $data['policy_with_corr'] = 1; + } + if($data['ct_type'] == ""){ $data['ct_type'] = 1; } @@ -343,7 +356,7 @@ class PolicyTransactionController extends BaseController $insert = $this->policyTransactionModel->insert($data); if ($insert) { - $this->insertTransactionStatus($insert, $data['status'], 1); + $this->insertTransactionStatus($insert, $data, 1); $emp_data = $this->processInsertIndividualMemberInEmpTable($data); if(isset($data['follow_insurer_id']) && !empty($data['follow_insurer_id'][0])){ @@ -379,7 +392,7 @@ class PolicyTransactionController extends BaseController { if ($this->policyTransactionModel->update($id, $data)) { - $this->insertTransactionStatus($id, $data['status'], 1); + $this->insertTransactionStatus($id, $data, 1); $emp_data = $this->processInsertIndividualMemberInEmpTable($data); if (isset($data['follow_insurer_id']) && !empty($data['follow_insurer_id'][0])) { @@ -478,7 +491,8 @@ class PolicyTransactionController extends BaseController 'created_by' => get_session_userid() ?? null, 'updated_by' => get_session_userid() ?? null, 'id' => $data['co_share_id'][$index] ?? null, // Assuming this is the ID to identify existing records - 'follower_policy_no' => $data['follower_policy_no'][$index] ?? null, // Assuming this is the ID to identify existing records + 'follower_policy_no' => $data['follower_policy_no'][$index] ?? null, + 'non_comm_per_amt' => $data['non_comm_per_amt'][$index] ?? null, ]; } @@ -540,11 +554,12 @@ class PolicyTransactionController extends BaseController ]; } - private function insertTransactionStatus($policyTranId, $status, $statusType) + private function insertTransactionStatus($policyTranId, $data, $statusType) { $statusData = [ 'policy_tran_id' => $policyTranId, - 'status' => $status, + 'status' => $data['status'], + 'last_action_date' => $data['last_action_date'], 'status_type' => $statusType, 'created_by' => get_session_userid(), ]; @@ -691,6 +706,15 @@ class PolicyTransactionController extends BaseController client_policy.policy_type_id as master_policy_type_id, client_policy.is_addon, client_policy.base_policy, + ( + select last_action_date + from policy_transaction_status + where policy_tran_id = policy_transaction.id + and status = policy_transaction.status + order by id desc + limit 1 + + ) as last_action_date ') ->join('clients', 'clients.id = policy_transaction.client_id') ->join('client_policy', 'policy_transaction.client_policy_id = client_policy.id', 'left') @@ -756,6 +780,10 @@ class PolicyTransactionController extends BaseController if(!empty($data['endorse_eff_date'])){ $data['endorse_eff_date'] = change_date_format($data['endorse_eff_date'], 'Y-m-d', 'd/m/Y'); } + + if(!empty($data['last_action_date'])){ + $data['last_action_date'] = change_date_format($data['last_action_date'], 'Y-m-d', 'd/m/Y'); + } if(!empty($data['month'])){ $data['month'] = change_date_format($data['month'], 'Y-m-d', 'M/Y'); @@ -803,7 +831,110 @@ class PolicyTransactionController extends BaseController WHERE co_share_stmt_details.co_share_id = pt_co_share_details.id AND co_share_stmt_details.is_active = 1 - ) AS record_count + ) AS record_count, + + ( + SELECT + SUM(actual_bp_amt) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_bp_amount, + + ( + SELECT + SUM(actual_tp_amt) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_tp_amount, + + ( + SELECT + SUM(actual_tep_amt) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_tep_amount, + + ( + SELECT + SUM(actual_bp_per) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_bp_percentage, + + ( + SELECT + SUM(actual_tp_per) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_tp_percentage, + + ( + SELECT + SUM(actual_tep_per) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_tep_percentage, + + + ( + SELECT + SUM(actual_bp_brokerage_amt) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_bp_brokerage_amount, + + + ( + SELECT + SUM(actual_tp_brokerage_amt) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_tp_brokerage_amount, + + + ( + SELECT + SUM(actual_tep_brokerage_amt) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_tep_brokerage_amount + ") ->where('pt_id', $id) ->where('is_active', 1) @@ -965,25 +1096,40 @@ class PolicyTransactionController extends BaseController // $month = '01-'.$data['month']; // $data['month'] = empty($data['month']) ? null : date('Y-m-d', strtotime($month)); + if (!isset($data['policy_with_corr'])) { + $data['policy_with_corr'] = 0; + } elseif ($data['policy_with_corr']) { + $data['policy_with_corr'] = 1; + } if(!empty($data['data_received_date'])){ $data['data_received_date'] = change_date_format($data['data_received_date'], 'd/m/Y', 'Y-m-d'); } - if(!empty($data['closure_date'])){ - $data['closure_date'] = change_date_format($data['closure_date'], 'd/m/Y', 'Y-m-d'); + if(!empty($data['policy_issue_date'])){ + $data['policy_issue_date'] = change_date_format($data['policy_issue_date'], 'd/m/Y', 'Y-m-d'); } if(!empty($data['endorse_eff_date'])){ $data['endorse_eff_date'] = change_date_format($data['endorse_eff_date'], 'd/m/Y', 'Y-m-d'); } + if(!empty($data['install_due_date'])){ + $data['install_due_date'] = change_date_format($data['install_due_date'], 'd/m/Y', 'Y-m-d'); + } + if(!empty($data['month'])){ $month = '01/'.$data['month']; $data['month'] = change_date_format($month, 'd/M/Y', 'Y-m-d'); } + if(empty($data['last_action_date'])){ + $data['last_action_date'] = null; + }else{ + $data['last_action_date'] = change_date_format($data['last_action_date']); + } + // print_r($data); die; // Separate Insurer and TPA Branch IDs and IDs @@ -1014,11 +1160,10 @@ class PolicyTransactionController extends BaseController 'issuer' => $issue_type['issuer'] ?? null, 'client_type' => $data['client_type'] ?? $issue_type['client_type'] ?? null, 'policy_type_id' => $issue_type['policy_type_id'] ?? null, - 'policy_type_id' => $issue_type['policy_type_id'] ?? null, 'issue_type' => $issue_type['issue_type'] ?? null, 'source_client_policy_id' => $issue_type['source_client_policy_id'] ?? null, 'cd_ac_no' => $issue_type['issue_type'] ?? null, - 'policy_issue_date' => $issue_type['policy_issue_date'] ?? null, + // 'policy_issue_date' => $issue_type['policy_issue_date'] ?? null, 'policy_start_date' => $issue_type['policy_start_date'] ?? null, 'policy_end_date' => $issue_type['policy_end_date'] ?? null, 'revenue_type' => $issue_type['revenue_type'] ?? null, @@ -1061,7 +1206,7 @@ class PolicyTransactionController extends BaseController if ($insert) { - $this->insertTransactionStatus($insert, $data['status'], 1); + $this->insertTransactionStatus($insert, $data, 1); $this->handleCompletedStatus($data, $insert); $this->insertOrUpdateCoShareDetails($data, $insert); @@ -1076,7 +1221,7 @@ class PolicyTransactionController extends BaseController $update = $this->policyTransactionModel->where('id', $id)->set($data)->update(); if ($update) { - $this->insertTransactionStatus($id, $data['status'], 1); + $this->insertTransactionStatus($id, $data, 1); $this->handleCompletedStatus($data, $id); $this->insertOrUpdateCoShareDetails($data, $id); @@ -1122,6 +1267,15 @@ class PolicyTransactionController extends BaseController policy_transaction.*, clients.short_name as client_short_name, clients.client_type, + ( + select last_action_date + from policy_transaction_status + where policy_tran_id = policy_transaction.id + and status = policy_transaction.status + order by id desc + limit 1 + + ) as last_action_date ') ->join('clients', 'clients.id = policy_transaction.client_id') ->join('client_policy', 'policy_transaction.client_policy_id = client_policy.id', 'left') @@ -1152,22 +1306,151 @@ class PolicyTransactionController extends BaseController $data['data_received_date'] = change_date_format($data['data_received_date'], 'Y-m-d', 'd/m/Y'); } - if(!empty($data['closure_date'])){ - $data['closure_date'] = change_date_format($data['closure_date'], 'Y-m-d', 'd/m/Y'); + if(!empty($data['policy_issue_date'])){ + $data['policy_issue_date'] = change_date_format($data['policy_issue_date'], 'Y-m-d', 'd/m/Y'); } if(!empty($data['endorse_eff_date'])){ $data['endorse_eff_date'] = change_date_format($data['endorse_eff_date'], 'Y-m-d', 'd/m/Y'); } + if(!empty($data['install_due_date'])){ + $data['install_due_date'] = change_date_format($data['install_due_date'], 'Y-m-d', 'd/m/Y'); + } + + if(!empty($data['last_action_date'])){ + $data['last_action_date'] = change_date_format($data['last_action_date'], 'Y-m-d', 'd/m/Y'); + } + if(!empty($data['month'])){ $data['month'] = change_date_format($data['month'], 'Y-m-d', 'M/Y'); } // print_r($data); die; + //get PT Co-Share Details + $data['pt_co_share_details'] = $this->PTCOShareDetailsModel - $data['pt_co_share_details'] = $this->PTCOShareDetailsModel->where('pt_id', $id)->where('is_active', 1)->findAll(); + ->select(" + pt_co_share_details.*, + + ( + SELECT + COUNT(*) + FROM + co_share_stmt_details + WHERE + co_share_stmt_details.co_share_id = pt_co_share_details.id + AND co_share_stmt_details.is_active = 1 + ) AS record_count, + + ( + SELECT + SUM(actual_bp_amt) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_bp_amount, + + ( + SELECT + SUM(actual_tp_amt) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_tp_amount, + + ( + SELECT + SUM(actual_tep_amt) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_tep_amount, + + ( + SELECT + SUM(actual_bp_per) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_bp_percentage, + + ( + SELECT + SUM(actual_tp_per) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_tp_percentage, + + ( + SELECT + SUM(actual_tep_per) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_tep_percentage, + + + ( + SELECT + SUM(actual_bp_brokerage_amt) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_bp_brokerage_amount, + + + ( + SELECT + SUM(actual_tp_brokerage_amt) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_tp_brokerage_amount, + + + ( + SELECT + SUM(actual_tep_brokerage_amt) + FROM + co_share_stmt_details + WHERE + co_share_id = pt_co_share_details.id + AND is_active = 1 + + ) AS actual_tep_brokerage_amount + + ") + ->where('pt_id', $id) + ->where('is_active', 1) + ->orderBy('id', 'asc') + ->findAll(); // print_r($data['endorse_eff_date']); die; @@ -1295,7 +1578,23 @@ class PolicyTransactionController extends BaseController public function getPTCOShareCount($client_id, $client_policy_id) { $totalCount = $this->PTCOShareDetailsModel - ->select('pt_co_share_details.*') + ->select(" + pt_co_share_details.*, + policy_transaction.bro_payable_by, + ( + select cd_ac_no + from cd_master + where id = policy_transaction.cd_ac_pk + ) as cd_account_no, + ( + select balance + from cash_deposit + where cd_ac_pk = policy_transaction.cd_ac_pk + and is_active = 1 + order by id desc + limit 1 + ) as cd_amount, + ") ->join('policy_transaction', 'policy_transaction.id = pt_co_share_details.pt_id') ->where('policy_transaction.client_id', $client_id) ->where('policy_transaction.client_policy_id', $client_policy_id) diff --git a/app/Helpers/sendMailNotification.php b/app/Helpers/sendMailNotification.php index 2615b1fc..9136801e 100755 --- a/app/Helpers/sendMailNotification.php +++ b/app/Helpers/sendMailNotification.php @@ -189,7 +189,7 @@ class sendMailNotification $emp_code = ''; // echo '
';
-                // print_r($array_list); die;
+                // dd($array_list); die;
 
                
 
@@ -204,6 +204,7 @@ class sendMailNotification
                         $policy_name = '';
                         $is_addon = '';
                         $rowspan = count($item) ?? 2;
+                        $is_si_set = 0;
                         
                         foreach ($item as $inner_item) {
 
@@ -262,7 +263,23 @@ class sendMailNotification
                             if($policy_premium_data['premium_type'] == 2){
                                 $temp_data .= '' . $si . '';
                             }else{
-                                $temp_data .= (($si != 0 && count($item) != 1) ? ('' . $si . '') : ($si == 0 ? "" : '' . $si . '') );
+                                // $temp_data .= (($si != 0 && count($item) != 1) ? ('' . $si . '') : ($si == 0 ? "" : '' . $si . '') );
+                                
+                                if ($si != 0 && count($item) != 1 && $is_si_set == 0) {
+                                    
+                                    $temp_data .= '' . $si . '';
+                                    $is_si_set = 1;
+
+                                } else {
+
+                                    if ($is_si_set == 1) {
+                                        $temp_data .= '';
+                                    } else {
+                                        $temp_data .= '' . $si . '';
+                                    }
+                                }     
+                                
+
                             }
                                             
                             // Only Display SI Topup and Dependent Addon 
diff --git a/app/Helpers/utility_helper.php b/app/Helpers/utility_helper.php
index 79523f60..f5313bde 100755
--- a/app/Helpers/utility_helper.php
+++ b/app/Helpers/utility_helper.php
@@ -544,6 +544,9 @@ if (!function_exists('change_date_format')) {
             'Y/m/d',     // 2024/12/01
             'Y.m.d',     // 2024.12.01
             'Y,m,d',     // 2024,12,01
+
+            'd/m/Y',     // 01/01/2025
+
         ];
 
         try {
diff --git a/app/Models/PTCOShareDetailsModel.php b/app/Models/PTCOShareDetailsModel.php
index bb2eb359..dc6b2cec 100644
--- a/app/Models/PTCOShareDetailsModel.php
+++ b/app/Models/PTCOShareDetailsModel.php
@@ -65,6 +65,7 @@ class PTCOShareDetailsModel extends Model
         'cop_amt',
         'statement_id',
         'follower_policy_no',
+        'non_comm_per_amt',
     ];
 
     public function getNonReconcileredPolicyTransactions(string $insurer_id,string $insurer_branch_id)
diff --git a/app/Models/PolicyTransactionModel.php b/app/Models/PolicyTransactionModel.php
index 0364fd17..c0af578c 100644
--- a/app/Models/PolicyTransactionModel.php
+++ b/app/Models/PolicyTransactionModel.php
@@ -76,7 +76,9 @@ class PolicyTransactionModel extends Model
         'ct_tran_id',
         'remarks',
         'month',
-        'cd_ac_pk'
+        'cd_ac_pk',
+        'install_due_date',
+        'policy_with_corr',
     ];
     
 
diff --git a/app/Models/PolicyTransactionStatusModel.php b/app/Models/PolicyTransactionStatusModel.php
index 712fa8e0..718a417e 100644
--- a/app/Models/PolicyTransactionStatusModel.php
+++ b/app/Models/PolicyTransactionStatusModel.php
@@ -20,6 +20,7 @@ class PolicyTransactionStatusModel extends Model
         'created_at',
         'created_by',
         'is_active',
+        'last_action_date',
     ];
 
     // Callbacks
diff --git a/app/Views/policy_transaction_endorsement_form.php b/app/Views/policy_transaction_endorsement_form.php
index ea3bb0c1..687891b4 100644
--- a/app/Views/policy_transaction_endorsement_form.php
+++ b/app/Views/policy_transaction_endorsement_form.php
@@ -62,7 +62,8 @@
 
 .readonly-select {
     pointer-events: none;
-    background-color: #f0f0f0; 
+    /* background-color: #f0f0f0;  */
+    background-color: #e0e0e0;
     color: #666; 
 }
 
@@ -119,6 +120,7 @@
                         
                         
                         
+                        
 
 
                         
@@ -237,7 +239,7 @@
 
                                                     
- +
@@ -246,8 +248,8 @@
- - + +
@@ -269,6 +271,7 @@
+
+ +
+ + +
+ + + +
+ + + +
+

@@ -328,9 +351,24 @@ Is Leader? + + + CD Acc No + + + + CD Amount + + + Follower Policy No + + Co-Share % + + Non Commitional
Premium Amount + Base Premium @@ -372,9 +410,9 @@ Agreed TEP % - + - + > Agreed Amount @@ -422,12 +460,12 @@ Expected Amount - + + @@ -574,6 +612,7 @@ $(document).ready(function(){ if(res.status == true){ if(res.data.length > 0){ populateTable(res.data); + $('#bro_payable_by').val(res.data[0].bro_payable_by) }else{ addInsurerColumn() } @@ -604,54 +643,6 @@ $(document).on('change', 'input[type="checkbox"][name="co_share_type[]"]', funct } }); -// $(document).on('input', '[name="cgst[]"]', function() { - -// let val = $(this).val(); - -// if(val){ -// $('[name="igst[]"]').val(0); -// $('[name="cgst[]"]').val(val); -// $('[name="sgst[]"]').val(val); - -// }else{ -// $('[name="igst[]"]').val(''); -// $('[name="sgst[]"]').val(''); -// } -// console.log('cgst value', val); -// }); - -// $(document).on('input', '[name="sgst[]"]', function() { - -// let val = $(this).val(); - -// if(val){ -// $('[name="igst[]"]').val(0); -// $('[name="sgst[]"]').val(val) -// $('[name="cgst[]"]').val(val) -// }else{ -// $('[name="igst[]"]').val(''); -// $('[name="sgst[]"]').val('') -// $('[name="cgst[]"]').val('') -// } -// console.log('cgst value', val); -// }); - -// $(document).on('input', '[name="igst[]"]', function() { - -// let val = $(this).val(); - -// if(val){ -// $('[name="cgst[]"], [name="sgst[]"]').val(0); -// $('[name="igst[]"]').val(val) -// }else{ -// $('[name="cgst[]"], [name="sgst[]"]').val(''); -// $('[name="igst[]"]').val('') - -// } - -// console.log('igst value', val); -// }); - $(document).on('click', '[name="co_share_type[]"]', function() { let val = $(this).val(); @@ -889,12 +880,27 @@ function getPolicyTransactionDataForEndorsementEdit(input){ $('#action_type').val(res.data.action_type); $('#endorsement_no').val(res.data.endorsement_no); $('#data_received_date').val(res.data.data_received_date); - $('#closure_date').val(res.data.closure_date); + $('#policy_issue_date').val(res.data.policy_issue_date); $('#emp_count').val(res.data.emp_count); $('#dependent_count').val(res.data.dependent_count); $('#policy_status').val(res.data.status); $('#endorse_eff_date').val(res.data.endorse_eff_date); $('#month').val(res.data.month); + $('#last_action_date').val(res.data.last_action_date); + $('#install_due_date').val(res.data.install_due_date); + $('#bro_payable_by').val(res.data.bro_payable_by); + + if (res.data.policy_with_corr == 1) { + $('#policy_with_corr').prop('checked', true); + } else { + $('#policy_with_corr').prop('checked', false); + } + + if (res.data.action_type == 'policy_instalment') { + $('.install_due_date_div').show() + }else{ + $('.install_due_date_div').hide() + } removeAllColumnsExceptFirst('insurerTable'); @@ -924,8 +930,132 @@ function getPolicyTransactionDataForEndorsementEdit(input){ } //end edit function -function checkAndDistributeTax(input) -{ +// function checkAndDistributeTax(input) +// { +// const event = window.event; +// // console.log("Event type:", event.type); +// // console.log("Event target:", event.target); +// console.log("Event id:", event.target.id); + +// let cgst = parseFloat($('#cgst_' + input).val()); +// let sgst = parseFloat($('#sgst_' + input).val()); +// let igst = parseFloat($('#igst_' + input).val()); +// if(((event.target.id).startsWith('cgst') || (event.target.id).startsWith('sgst') )) +// { +// if(cgst !== 0) { $('#sgst_' + input).val(cgst.toFixed(2)); } +// else if(sgst !== 0) { $('#cgst_' + input).val(sgst.toFixed(2)); } + +// $('#igst_' + input).val(0.00); +// } +// else +// { +// $('#cgst_' + input).val(0.00); +// $('#sgst_' + input).val(0.00); +// } +// } + +// function amountCalculation(input) { + +// // console.log(input); +// let selectedOption = $('#client_policy_id').find('option:selected'); +// let bap = selectedOption.data('bap'); + + +// // Retrieve and parse the values or default to 0 if not a number +// let bp = parseFloat($('#base_premium_' + input).val()) || 0; + +// var tp = 0; +// if(bap == 'Motor'){ +// tp = parseFloat($('#tp_premium_' + input).val()) || 0; +// } + +// var tep = 0; +// if(bap == 'Fire' || bap == 'Marine Cargo' || bap == 'Marine Hull'){ +// tep = parseFloat($('#ter_premium_' + input).val()) || 0; +// } + +// let cop = parseFloat($('#co_premium_' + input).val()) || 0; +// checkAndDistributeTax(input); +// let cgst = parseFloat($('#cgst_' + input).val()) || 0; +// let sgst = parseFloat($('#sgst_' + input).val()) || 0; +// let igst = parseFloat($('#igst_' + input).val()) || 0; +// let stamp_duty_amt = parseFloat($('#stamp_duty_' + input).val()) || 0; +// let agreed_amount = parseFloat($('#agreed_amount_' + input).val()) || 0; + +// let agreed_bp_per = parseFloat($('#agreed_bp_' + input).val()) || 0; +// let agreed_tp_per = parseFloat($('#agreed_tp_' + input).val()) || 0; +// let agreed_tep_per = parseFloat($('#agreed_tep_' + input).val()) || 0; + +// let standard_bp_per = parseFloat($('#standard_bp_' + input).val()) || 0; +// 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) { +// gst_per = cgst + sgst; +// } + +// // Calculate the total premium (Base + TP + Co-Premium) +// let tpTotal = bp + tp + tep + cop; + +// let gst_per_amt = (tpTotal * gst_per) / 100; +// // $('#gst_amount_' + input).val(gst_per_amt.toFixed(2)); +// $('#gst_amount_' + input).val(!isNaN(gst_per_amt) && isFinite(gst_per_amt) ? gst_per_amt.toFixed(2) : '0.00'); + + +// let finalTotal = tpTotal + gst_per_amt + stamp_duty_amt; + +// // console.log('Summed Amount:', finalTotal); +// // $('#total_amt_' + input).val(finalTotal.toFixed(2)); +// $('#total_amt_' + input).val(!isNaN(finalTotal) && isFinite(finalTotal) ? finalTotal.toFixed(2) : '0.00'); + + +// let sum_of_agreed_premium = agreed_bp_per + agreed_tp_per + agreed_tep_per; +// console.log('sum_of_agreed_precentage : ', sum_of_agreed_premium); + +// var expectedAmount = 0; + +// if(agreed_amount > 0 ){ +// expectedAmount = agreed_amount; +// console.log('Formula 1 AGREED AMOUNT'); +// }else if(sum_of_agreed_premium > 0){ +// expectedAmount = ((bp + cop) * agreed_bp_per)+ ((tp + tep)*(agreed_tp_per + agreed_tep_per)); +// expectedAmount = expectedAmount / 100; +// console.log('Formula 2 AGREED BP TP/TEP %'); +// }else{ +// expectedAmount = ((bp + cop) * standard_bp_per)+ ((tp + tep)*(standard_tp_per + standard_tep_per)); +// expectedAmount = expectedAmount / 100; +// console.log('Formula 3 STANDARD BP TP/TEP %'); +// } + +// console.log('expectedAmount', expectedAmount); + +// //Expected Amount +// // $('#exp_amt_' + input).val(expectedAmount.toFixed(2)); +// $('#exp_amt_' + input).val(!isNaN(expectedAmount) && isFinite(expectedAmount) ? expectedAmount.toFixed(2) : '0.00'); + + +// let actual_bp_brokerage_amount = parseFloat($('#actual_bp_brokerage_amt_' + input).val()) || 0; +// let actual_tp_brokerage_amount = parseFloat($('#actual_tp_brokerage_amt_' + input).val()) || 0; +// let actual_tep_brokerage_amount = parseFloat($('#actual_tep_brokerage_amt_' + input).val()) || 0; + +// // let variance = expectedAmount - (actual_bp_brokerage_amount + actual_tp_brokerage_amount + actual_tep_brokerage_amount) +// let variance = (actual_bp_brokerage_amount + actual_tp_brokerage_amount + actual_tep_brokerage_amount) - expectedAmount; + +// // $('#variance_' + input).val(variance.toFixed(2)); +// $('#variance_' + input).val(!isNaN(variance) && isFinite(variance) ? variance.toFixed(2) : '0.00'); + +// // console.log('variance', variance); +// } + +function checkAndDistributeTax(input) { const event = window.event; // console.log("Event type:", event.type); // console.log("Event target:", event.target); @@ -934,29 +1064,33 @@ function checkAndDistributeTax(input) let cgst = parseFloat($('#cgst_' + input).val()); let sgst = parseFloat($('#sgst_' + input).val()); let igst = parseFloat($('#igst_' + input).val()); + if(((event.target.id).startsWith('cgst') || (event.target.id).startsWith('sgst') )) { - if(cgst !== 0) { $('#sgst_' + input).val(cgst.toFixed(2)); } - else if(sgst !== 0) { $('#cgst_' + input).val(sgst.toFixed(2)); } + if(cgst !== 0) { $('#sgst_' + input).val(cgst); } + else if(sgst !== 0) { $('#cgst_' + input).val(sgst); } - $('#igst_' + input).val(0.00); + $('#igst_' + input).val(0); } - else + else if((event.target.id).startsWith('igst')) { - $('#cgst_' + input).val(0.00); - $('#sgst_' + input).val(0.00); + $('#cgst_' + input).val(0); + $('#sgst_' + input).val(0); } } function amountCalculation(input) { - // console.log(input); - let selectedOption = $('#client_policy_id').find('option:selected'); + console.log('amountCalculation - ' + input); + let selectedOption = $('#policy_type_id').find('option:selected'); let bap = selectedOption.data('bap'); + const event = window.event; + console.log("Event id:", event.target.id); // Retrieve and parse the values or default to 0 if not a number let bp = parseFloat($('#base_premium_' + input).val()) || 0; + let ncpa = parseFloat($('#non_comm_per_amt_' + input).val()) || 0; var tp = 0; if(bap == 'Motor'){ @@ -973,63 +1107,96 @@ function amountCalculation(input) { let cgst = parseFloat($('#cgst_' + input).val()) || 0; let sgst = parseFloat($('#sgst_' + input).val()) || 0; let igst = parseFloat($('#igst_' + input).val()) || 0; + + let stamp_duty_amt = parseFloat($('#stamp_duty_' + input).val()) || 0; let agreed_amount = parseFloat($('#agreed_amount_' + input).val()) || 0; let agreed_bp_per = parseFloat($('#agreed_bp_' + input).val()) || 0; let agreed_tp_per = parseFloat($('#agreed_tp_' + input).val()) || 0; - let agreed_tep_per = parseFloat($('#agreed_tep_' + input).val()) || 0; + let agreed_tep_per = parseFloat($('#agreed_ter_' + input).val()) || 0; let standard_bp_per = parseFloat($('#standard_bp_' + input).val()) || 0; 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 gst_amount = parseFloat($('#gst_amount_' + 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'); + // console.log(standard_bp_per, standard_tp_per, standard_tep_per); + + // 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) { - gst_per = cgst + sgst; + console.log('called' + cgst + sgst); + gst_per = parseFloat(cgst) + parseFloat(sgst); + // gst_per = (cgst) + (sgst); + console.log(gst_per); } + console.log('gst_per', gst_per); + console.log('igst', igst); + console.log('cgst', cgst); + console.log('sgst', sgst); + // Calculate the total premium (Base + TP + Co-Premium) - let tpTotal = bp + tp + tep + cop; + let tpTotal = cop; + if($('#bro_payable_by').val() == 1){ + tpTotal = bp + tp + tep; + } + + console.log('tpTotal', tpTotal); + ncpaTotal = tpTotal + ncpa; + let ncpa_gst_per_amt = (ncpaTotal * gst_per) / 100; + console.log('ncpa_gst_per_amt', ncpa_gst_per_amt); let gst_per_amt = (tpTotal * gst_per) / 100; + console.log('gst_per_amt', gst_per_amt); + // $('#gst_amount_' + input).val(gst_per_amt.toFixed(2)); - $('#gst_amount_' + input).val(!isNaN(gst_per_amt) && isFinite(gst_per_amt) ? gst_per_amt.toFixed(2) : '0.00'); + if(gst_amount != 0){ + if (event.target.id.startsWith('non_comm_per_amt')) { + $('#gst_amount_' + input).val(!isNaN(ncpa_gst_per_amt) && isFinite(ncpa_gst_per_amt) ? ncpa_gst_per_amt.toFixed(2) : '0.00'); + }else{ + $('#gst_amount_' + input).val(!isNaN(gst_amount) && isFinite(gst_amount) ? gst_amount.toFixed(2) : '0.00'); + } + }else{ + $('#gst_amount_' + input).val(!isNaN(ncpa_gst_per_amt) && isFinite(ncpa_gst_per_amt) ? ncpa_gst_per_amt.toFixed(2) : '0.00'); + } let finalTotal = tpTotal + gst_per_amt + stamp_duty_amt; - // console.log('Summed Amount:', finalTotal); + console.log('Summed Amount:', finalTotal); // $('#total_amt_' + input).val(finalTotal.toFixed(2)); $('#total_amt_' + input).val(!isNaN(finalTotal) && isFinite(finalTotal) ? finalTotal.toFixed(2) : '0.00'); let sum_of_agreed_premium = agreed_bp_per + agreed_tp_per + agreed_tep_per; - console.log('sum_of_agreed_precentage : ', sum_of_agreed_premium); + // console.log('sum_of_agreed_precentage : ', sum_of_agreed_premium); var expectedAmount = 0; if(agreed_amount > 0 ){ expectedAmount = agreed_amount; - console.log('Formula 1 AGREED AMOUNT'); + // console.log('Formula 1 AGREED AMOUNT'); }else if(sum_of_agreed_premium > 0){ expectedAmount = ((bp + cop) * agreed_bp_per)+ ((tp + tep)*(agreed_tp_per + agreed_tep_per)); expectedAmount = expectedAmount / 100; - console.log('Formula 2 AGREED BP TP/TEP %'); + // console.log('Formula 2 AGREED BP TP/TEP %'); }else{ expectedAmount = ((bp + cop) * standard_bp_per)+ ((tp + tep)*(standard_tp_per + standard_tep_per)); + console.log(expectedAmount) expectedAmount = expectedAmount / 100; - console.log('Formula 3 STANDARD BP TP/TEP %'); + // console.log('Formula 3 STANDARD BP TP/TEP %'); } - console.log('expectedAmount', expectedAmount); + // console.log('expectedAmount', expectedAmount); //Expected Amount // $('#exp_amt_' + input).val(expectedAmount.toFixed(2)); @@ -1040,8 +1207,16 @@ function amountCalculation(input) { let actual_tp_brokerage_amount = parseFloat($('#actual_tp_brokerage_amt_' + input).val()) || 0; let actual_tep_brokerage_amount = parseFloat($('#actual_tep_brokerage_amt_' + input).val()) || 0; + // console.log('actual_bp_brokerage_amount', actual_bp_brokerage_amount); + // console.log('actual_tp_brokerage_amount', actual_tp_brokerage_amount); + // console.log('actual_tep_brokerage_amount', actual_tep_brokerage_amount); + + + // let variance = expectedAmount - (actual_bp_brokerage_amount + actual_tp_brokerage_amount + actual_tep_brokerage_amount) let variance = (actual_bp_brokerage_amount + actual_tp_brokerage_amount + actual_tep_brokerage_amount) - expectedAmount; + // console.log('variance', variance); + // $('#variance_' + input).val(variance.toFixed(2)); $('#variance_' + input).val(!isNaN(variance) && isFinite(variance) ? variance.toFixed(2) : '0.00'); @@ -1448,6 +1623,7 @@ $('#setInsurerCount').on('input', function() { }); function addInsurerColumn() { + insurerCount++; // hidePermiumDetailsBasedOnTheTeam(); @@ -1464,8 +1640,10 @@ function addInsurerColumn() { $('#insurerTable tbody tr').each(function(index) { let newCell = ''; - if(team_id.includes('4')){ + if(team_id.includes('6') || team_id.includes('4')){ + switch(index) { + case 0: // Insurer selection newCell = ` `; + break; + case 3: // CD Amount + newCell = ``; + break; + case 4: // follower policy no + newCell = ``; + break; + case 5: // Co-Share % newCell = ``; break; - case 3: // Base Premium + case 6: // Non commissionable Premium amount % + newCell = ``; + break; + case 7: // Base Premium newCell = ``; break; - case 4: // TP Premium + case 8: // TP Premium newCell = ``; break; - case 5: // Ter Premium + case 9: // Ter Premium newCell = ``; break; - case 6: // co Premium + case 10: // co Premium newCell = ``; break; - case 7: // CGST + case 11: // CGST newCell = ``; break; - case 8: // SGST + case 12: // SGST newCell = ``; break; - case 9: // IGST + case 13: // IGST newCell = ``; break; - case 10: // GST Amount - newCell = ``; + case 14: // GST Amount + newCell = ``; break; - case 11: // Stamp Duty + case 15: // Stamp Duty newCell = ``; break; - case 12: // Total + case 16: // Total newCell = ``; break; - case 13: // Agreed BP % + case 17: // Agreed BP % newCell = ``; break; - case 14: // Agreed TP % + case 18: // Agreed TP % newCell = ``; break; - case 15: // Agreed Ter % + case 19: // Agreed Ter % newCell = ``; break; - case 16: // Standard BP % - newCell = ``; - break; - case 17: // Standard TP % - newCell = ``; - break; - case 18: // Standard Ter % - newCell = ``; - break; - case 19: // Actual BP Amount - newCell = ``; - break; - case 20: // Actual TP Amount - newCell = ``; - break; - case 21: // Actual TEP Amount - newCell = ``; - break; - case 22: // Actual BP % - newCell = ``; - break; - case 23: // Actual TP % - newCell = ``; - break; - case 24: // Actual TEP % - newCell = ``; - break; - case 25: // Actual BP Brokerage Amount - newCell = ``; - break; - case 26: // Actual TP Brokerage Amount - newCell = ``; - break; - case 27: // Actual TEP Brokerage Amount - newCell = ``; - break; - case 28: // Expected Amount - newCell = ``; - break; - case 29: // Variance - newCell = ``; - break; - case 30: // Reward - newCell = ``; - break; - case 31: // ID For Update - newCell = ``; - break; - } - }else if(team_id.includes('3')){ - switch(index) { - case 0: // Insurer selection - newCell = ` - - `; - break; - case 1: // Is Leader? - newCell = ` - - - `; - break; - case 2: // Co-Share % - newCell = ``; - break; - case 3: // Base Premium - newCell = ``; - break; - case 4: // TP Premium - newCell = ``; - break; - case 5: // Ter Premium - newCell = ``; - break; - case 6: // co Premium - newCell = ``; - break; - case 7: // CGST - newCell = ``; - break; - case 8: // SGST - newCell = ``; - break; - case 9: // IGST - newCell = ``; - break; - case 10: // GST Amount - newCell = ``; - break; - case 11: // Stamp Duty - newCell = ``; - break; - case 12: // Total - newCell = ``; - break; - case 13: // Agreed BP % - newCell = ``; - break; - case 14: // Agreed TP % - newCell = ``; - break; - case 15: // Agreed Ter % - newCell = ``; - break; - case 16: // Standard BP % - newCell = ``; - break; - case 17: // Standard TP % - newCell = ``; - break; - case 18: // Standard Ter % - newCell = ``; - break; - case 19: // ID For Update - newCell = ``; - break; - } - }else if(team_id.includes('6')){ - switch(index) { - case 0: // Insurer selection - newCell = ` - - `; - break; - case 1: // Is Leader? - newCell = ` - - - `; - break; - case 2: // Co-Share % - newCell = ``; - break; - case 3: // Base Premium - newCell = ``; - 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: // Agreed Amount + case 20: // Agreed Amount newCell = ``; break; - case 17: // Standard BP % + case 21: // Standard BP % newCell = ``; break; - case 18: // Standard TP % + case 22: // Standard TP % newCell = ``; break; - case 19: // Standard Ter % + case 23: // Standard Ter % newCell = ``; break; - case 20: // Actual BP Amount - newCell = ``; + case 24: // Actual BP Amount + newCell = ``; break; - case 21: // Actual TP Amount - newCell = ``; + case 25: // Actual TP Amount + newCell = ``; break; - case 22: // Actual TEP Amount - newCell = ``; + case 26: // Actual TEP Amount + newCell = ``; break; - case 23: // Actual BP % - newCell = ``; + case 27: // Actual BP % + newCell = ``; break; - case 24: // Actual TP % - newCell = ``; + case 28: // Actual TP % + newCell = ``; break; - case 25: // Actual TEP % - newCell = ``; + case 29: // Actual TEP % + newCell = ``; break; - case 26: // Actual BP Brokerage Amount - newCell = ``; + case 30: // Actual BP Brokerage Amount + newCell = ``; break; - case 27: // Actual TP Brokerage Amount - newCell = ``; + case 31: // Actual TP Brokerage Amount + newCell = ``; break; - case 28: // Actual TEP Brokerage Amount - newCell = ``; + case 32: // Actual TEP Brokerage Amount + newCell = ``; break; - case 29: // Expected Amount - newCell = ``; + case 33: // Expected Amount + newCell = ``; break; - case 30: // Variance - newCell = ``; + // case 30: // Variance + // newCell = ``; + // break; + // case 31: // Reward + // newCell = ``; + // break; + case 34: // ID For Update + newCell = ``; break; - case 31: // Reward - newCell = ``; + } + + }else if(team_id.includes('3')){ + + switch(index) { + case 0: // Insurer selection + newCell = ` + + `; break; - case 32: // ID For Update + case 1: // Is Leader? + newCell = ` + + + `; + break; + case 2: // CD Account Number selectionclass="std_tp_td" + newCell = ``; + break; + case 3: // CD Amount + newCell = ``; + break; + case 4: // follower policy no + newCell = ``; + break; + case 5: // Co-Share % + newCell = ``; + break; + case 6: // Non commissionable Premium amount % + newCell = ``; + break; + case 7: // Base Premium + newCell = ``; + break; + case 8: // TP Premium + newCell = ``; + break; + case 9: // Ter Premium + newCell = ``; + break; + case 10: // co Premium + newCell = ``; + break; + case 11: // CGST + newCell = ``; + break; + case 12: // SGST + newCell = ``; + break; + case 13: // IGST + newCell = ``; + break; + case 14: // GST Amount + newCell = ``; + break; + case 15: // Stamp Duty + newCell = ``; + break; + case 16: // Total + newCell = ``; + break; + case 17: // Agreed BP % + newCell = ``; + break; + case 18: // Agreed TP % + newCell = ``; + break; + case 19: // Agreed Ter % + newCell = ``; + break; + case 20: // Standard BP % + newCell = ``; + break; + case 21: // Standard TP % + newCell = ``; + break; + case 22: // Standard Ter % + newCell = ``; + break; + case 23: // ID For Update newCell = ``; break; } } + // console.log(newCell); $(this).append(newCell); @@ -1877,16 +1968,22 @@ function populateTable(dataArray, status = false) { console.log(dataArray); dataArray.forEach((data, index) => { + // Add a new insurer column for each entry in the data array addInsurerColumn(); // This will add a new column dynamically + let disable_td = false; + if(data.record_count > 0){ + disable_td = true; + } + // Populate the fields with the provided data $('#insurerTable tbody tr').each(function(rowIndex, row) { const cell = $(row).find('td').eq(insurerCount); // Get the newly added column by `insurerCount` let insurer = data.insurer_branch_id + '-' + data.insurer_id; - if(team_id.includes('4')){ + if(team_id.includes('6') || team_id.includes('4')){ switch (rowIndex) { case 0: // Insurer selection cell.find('select').val(insurer); @@ -1894,94 +1991,109 @@ function populateTable(dataArray, status = false) { 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); + case 2: // CD Account Number + console.log('------- CD Account Number -------') break; - case 3: // Base Premium - cell.find('input').val(status ? data.bp_amt : ''); + case 3: // CD AMOUNT + console.log('------- CD AMOUNT -------') break; - case 4: // TP Premium - cell.find('input').val(status ? data.tp_amt : ''); + case 4: // follower_policy_no + cell.find('input').val(data.follower_policy_no); break; - case 5: // Ter Premium - cell.find('input').val(status ? data.tep_amt : ''); + case 5: // Co-Share % + cell.find('input').val(data.co_share_per).toggleClass('readonly-select', !!disable_td); break; - case 6: // Co Premium - cell.find('input').val(data.cop_amt); + case 6: // non_comm_per_amt + cell.find('input').val(data.non_comm_per_amt); break; - case 7: // CGST - cell.find('input').val(data.bp_cgst); + case 7: // Base Premium + cell.find('input').val(status ? data.bp_amt : '').toggleClass('readonly-select', !!disable_td); break; - case 8: // SGST - cell.find('input').val(data.bp_sgst); + case 8: // TP Premium + cell.find('input').val(status ? data.tp_amt : '').toggleClass('readonly-select', !!disable_td); break; - case 9: // IGST - cell.find('input').val(data.bp_igst); + case 9: // Ter Premium + cell.find('input').val(status ? data.tep_amt : '').toggleClass('readonly-select', !!disable_td); break; - case 10: // GST Amount - cell.find('input').val(status ? data.bp_gst_amt : ''); + case 10: // Co Premium + cell.find('input').val(data.cop_amt).toggleClass('readonly-select', !!disable_td); break; - case 11: // Stamp Duty - cell.find('input').val(status ? data.stamp_duty : ''); + case 11: // CGST + cell.find('input').val(data.bp_cgst).toggleClass('readonly-select', !!disable_td); break; - case 12: // Total + case 12: // SGST + cell.find('input').val(data.bp_sgst).toggleClass('readonly-select', !!disable_td); + break; + case 13: // IGST + cell.find('input').val(data.bp_igst).toggleClass('readonly-select', !!disable_td); + break; + case 14: // GST Amount + cell.find('input').val(status ? data.bp_gst_amt : '').toggleClass('readonly-select', !!disable_td); + break; + case 15: // Stamp Duty + cell.find('input').val(status ? data.stamp_duty : '').toggleClass('readonly-select', !!disable_td); + break; + case 16: // Total cell.find('input').val(status ? data.amount : ''); break; - case 13: // Agreed BP % - cell.find('input').val(data.agreed_bp_per); + case 17: // Agreed BP % + cell.find('input').val(data.agreed_bp_per).toggleClass('readonly-select', !!disable_td); break; - case 14: // Agreed TP % - cell.find('input').val(data.agreed_tp_per); + case 18: // Agreed TP % + cell.find('input').val(data.agreed_tp_per).toggleClass('readonly-select', !!disable_td); break; - case 15: // Agreed Ter % - cell.find('input').val(data.agreed_tep_per); + case 19: // Agreed Ter % + cell.find('input').val(data.agreed_tep_per).toggleClass('readonly-select', !!disable_td); break; - case 16: // Standard BP % + case 20: // Agreed Amount + cell.find('input').val(data.agreed_amt).toggleClass('readonly-select', !!disable_td); + break; + case 21: // Standard BP % cell.find('input').val(data.standerd_bp_per); break; - case 17: // Standard TP % + case 22: // Standard TP % cell.find('input').val(data.standerd_tp_per); break; - case 18: // Standard Ter % + case 23: // Standard Ter % cell.find('input').val(data.standerd_tep_per); break; - case 19: // Actual BP Amount + case 24: // Actual BP Amount cell.find('input').val(status ? data.actual_bp_amt : ''); break; - case 20: // Actual TP Amount + case 25: // Actual TP Amount cell.find('input').val(status ? data.actual_tp_amt : ''); break; - case 21: // Actual Ter Amount + case 26: // Actual Ter Amount cell.find('input').val(status ? data.actual_tep_amt : ''); break; - case 22: // Actual BP % + case 27: // Actual BP % cell.find('input').val(status ? data.actual_bp_per : ''); break; - case 23: // Actual TP % + case 28: // Actual TP % cell.find('input').val(status ? data.actual_tp_per : ''); break; - case 24: // Actual Ter % + case 29: // Actual Ter % cell.find('input').val(status ? data.actual_tep_per : ''); break; - case 25: // Actual BP Brokerage Amount + case 30: // Actual BP Brokerage Amount cell.find('input').val(status ? data.actual_bp_brokerage_amt : ''); break; - case 26: // Actual TP Brokerage Amount + case 31: // Actual TP Brokerage Amount cell.find('input').val(status ? data.actual_tp_brokerage_amt : ''); break; - case 27: // Actual Ter Brokerage Amount + case 32: // Actual Ter Brokerage Amount cell.find('input').val(status ? data.actual_tep_brokerage_amt : ''); break; - case 28: // Expected Amount + case 33: // 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) + // case 30: // Variance + // cell.find('input').val(status ? data.variance : ''); + // break; + // case 31: // Reward + // cell.find('input').val(status ? data.reward : ''); + // break; + case 34: // Co-share ID (hidden field) cell.find('input[type="hidden"]').val(status ? data.id : ''); break; } @@ -1993,150 +2105,80 @@ function populateTable(dataArray, status = false) { 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); + case 2: // CD Account Number + console.log('------- CD Account Number -------') break; - case 3: // Base Premium - cell.find('input').val(status ? data.bp_amt : ''); + case 3: // CD AMOUNT + console.log('------- CD AMOUNT -------') break; - case 4: // TP Premium - cell.find('input').val(status ? data.tp_amt : ''); + case 4: // follower_policy_no + cell.find('input').val(data.follower_policy_no); break; - case 5: // Ter Premium - cell.find('input').val(status ? data.tep_amt : ''); + case 5: // Co-Share % + cell.find('input').val(data.co_share_per).toggleClass('readonly-select', !!disable_td); break; - case 6: // Co Premium - cell.find('input').val(data.cop_amt); + case 6: // non_comm_per_amt + cell.find('input').val(data.non_comm_per_amt); break; - case 7: // CGST - cell.find('input').val(data.bp_cgst); + case 7: // Base Premium + cell.find('input').val(status ? data.bp_amt : '').toggleClass('readonly-select', !!disable_td); break; - case 8: // SGST - cell.find('input').val(data.bp_sgst); + case 8: // TP Premium + cell.find('input').val(status ? data.tp_amt : '').toggleClass('readonly-select', !!disable_td); break; - case 9: // IGST - cell.find('input').val(data.bp_igst); + case 9: // Ter Premium + cell.find('input').val(status ? data.tep_amt : '').toggleClass('readonly-select', !!disable_td); break; - case 10: // GST Amount - cell.find('input').val(status ? data.bp_gst_amt : ''); + case 10: // Co Premium + cell.find('input').val(data.cop_amt).toggleClass('readonly-select', !!disable_td); break; - case 11: // Stamp Duty - cell.find('input').val(status ? data.stamp_duty : ''); + case 11: // CGST + cell.find('input').val(data.bp_cgst).toggleClass('readonly-select', !!disable_td); break; - case 12: // Total + case 12: // SGST + cell.find('input').val(data.bp_sgst).toggleClass('readonly-select', !!disable_td); + break; + case 13: // IGST + cell.find('input').val(data.bp_igst).toggleClass('readonly-select', !!disable_td); + break; + case 14: // GST Amount + cell.find('input').val(status ? data.bp_gst_amt : '').toggleClass('readonly-select', !!disable_td); + break; + case 15: // Stamp Duty + cell.find('input').val(status ? data.stamp_duty : '').toggleClass('readonly-select', !!disable_td); + break; + case 16: // Total cell.find('input').val(status ? data.amount : ''); break; - case 13: // Agreed BP % - cell.find('input').val(data.agreed_bp_per); + case 17: // Agreed BP % + cell.find('input').val(data.agreed_bp_per).toggleClass('readonly-select', !!disable_td); break; - case 14: // Co-share ID (hidden field) - cell.find('input[type="hidden"]').val(status ? data.id : ''); + case 18: // Agreed TP % + cell.find('input').val(data.agreed_tp_per).toggleClass('readonly-select', !!disable_td); break; - } - }else if(team_id.includes('6')){ - switch (rowIndex) { - case 0: // Insurer selection - cell.find('select').val(insurer); + case 19: // Agreed Ter % + cell.find('input').val(data.agreed_tep_per).toggleClass('readonly-select', !!disable_td); 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: // 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: // Agreed Amount - cell.find('input').val(data.agreed_amt); - break; - case 17: // Standard BP % + case 20: // Standard BP % cell.find('input').val(data.standerd_bp_per); break; - case 18: // Standard TP % + case 21: // Standard TP % cell.find('input').val(data.standerd_tp_per); break; - case 19: // Standard Ter % + case 22: // Standard Ter % cell.find('input').val(data.standerd_tep_per); break; - case 20: // Actual BP Amount - cell.find('input').val(status ? data.actual_bp_amt : ''); - break; - case 21: // Actual TP Amount - cell.find('input').val(status ? data.actual_tp_amt : ''); - break; - case 22: // Actual Ter Amount - cell.find('input').val(status ? data.actual_tep_amt : ''); - break; - case 23: // Actual BP % - cell.find('input').val(status ? data.actual_bp_per : ''); - break; - case 24: // Actual TP % - cell.find('input').val(status ? data.actual_tp_per : ''); - break; - case 25: // Actual Ter % - cell.find('input').val(status ? data.actual_tep_per : ''); - break; - case 26: // Actual BP Brokerage Amount - cell.find('input').val(status ? data.actual_bp_brokerage_amt : ''); - break; - case 27: // Actual TP Brokerage Amount - cell.find('input').val(status ? data.actual_tp_brokerage_amt : ''); - break; - case 28: // Actual Ter Brokerage Amount - cell.find('input').val(status ? data.actual_tep_brokerage_amt : ''); - break; - case 29: // Expected Amount - cell.find('input').val(status ? data.exp_amt : ''); - break; - case 30: // Variance - cell.find('input').val(status ? data.variance : ''); - break; - case 31: // Reward - cell.find('input').val(status ? data.reward : ''); - break; - case 32: // Co-share ID (hidden field) + case 23: // Co-share ID (hidden field) cell.find('input[type="hidden"]').val(status ? data.id : ''); break; } } }); + + if(data.co_share_type == 1){ + appendCDData(data.cd_account_no, data.cd_amount, index) + } + }); } @@ -2172,4 +2214,41 @@ function onlyNumbers(event) return false; } +function validateInput(input, table, field){ + + let value = $(input).val(); + let label = $(input).closest('.form-group').find('label').text().replace('*', '').trim(); + + let message = "Value is duplicate!"; + if(label){ + message = 'Given ' + label + " already exists!"; + } + + checkDuplicateTableFieldValue(table, field, value, function(isDuplicate) { + if (isDuplicate) { + toastr.warning(message, 'WARNING'); + $(input).val('') + } + }); + +} + +function appendCDData(cd_ac_no, cd_amt, increment){ + + increment = increment + 1 + $('#cd_account_no_'+increment).val(cd_ac_no) + $('#cd_current_balance_'+increment).val(cd_amt) +} + +$('#action_type').on('change', function(){ + + let action_type = $(this).val(); + console.log('action_type', action_type); + if (action_type == 'policy_instalment') { + $('.install_due_date_div').show() + }else{ + $('.install_due_date_div').hide() + } +}) + \ No newline at end of file diff --git a/app/Views/policy_transaction_endorsement_list.php b/app/Views/policy_transaction_endorsement_list.php index e7906349..e08cb097 100644 --- a/app/Views/policy_transaction_endorsement_list.php +++ b/app/Views/policy_transaction_endorsement_list.php @@ -105,6 +105,68 @@ custom-dropdown-menu { + +
@@ -257,7 +319,7 @@ custom-dropdown-menu { Data Recived Date No of Insured No of Dependence - Closure Date + Policy Issue Date Status Action @@ -276,7 +338,7 @@ custom-dropdown-menu { - + @@ -478,8 +540,20 @@ document.addEventListener("DOMContentLoaded", function () { } }); + var last_action_date = flatpickr("#last_action_date", { + dateFormat: "d/m/Y", // Display format in DD/MM/YYYY + defaultDate: today, // Today's date as the default value + allowInput: false, + maxDate: today // Disallow future dates + }); - var closure_date = flatpickr("#closure_date", { + + // var closure_date = flatpickr("#policy_issue_date", { + // dateFormat: "d/m/Y", + // allowInput: false + // }); + + var install_due_date = flatpickr("#install_due_date", { dateFormat: "d/m/Y", allowInput: false }); diff --git a/app/Views/policy_transaction_inception_form.php b/app/Views/policy_transaction_inception_form.php index cfbf43ef..30df9f5a 100644 --- a/app/Views/policy_transaction_inception_form.php +++ b/app/Views/policy_transaction_inception_form.php @@ -62,7 +62,8 @@ .readonly-select { pointer-events: none; - background-color: #f0f0f0; + /* background-color: #f0f0f0; */ + background-color: #e0e0e0; color: #666; } @@ -292,7 +293,7 @@
- @@ -347,11 +348,6 @@
-
- - -
-
@@ -405,14 +401,30 @@ ?>
-
@@ -571,6 +583,7 @@

+
@@ -614,12 +627,19 @@ CD Acc No + + + CD Amount + Follower Policy No Co-Share % + + Non Commitional
Premium Amount + Base Premium @@ -661,9 +681,9 @@ Agreed TEP % - + - + > Agreed Amount @@ -711,12 +731,12 @@ Expected Amount - + + @@ -726,6 +746,7 @@
+
@@ -1066,9 +1087,10 @@ $(document).ready(function(){ }); var last_action_date = flatpickr("#last_action_date", { - dateFormat: "d/m/Y", - defaultDate: today, - allowInput: false + dateFormat: "d/m/Y", // Display format in DD/MM/YYYY + defaultDate: today, // Today's date as the default value + allowInput: false, + maxDate: today // Disallow future dates }); var renewal_date1 = flatpickr("#renewal_policy_start_date", { @@ -1254,7 +1276,6 @@ $(document).ready(function(){ // hidePermiumDetailsBasedOnTheTeam() - if(value == 8){ $('#vhnodiv').show(); $('#client_type_div').hide(); @@ -1272,7 +1293,21 @@ $(document).ready(function(){ $('#client_branch_id').removeClass('readonly-select ').select2(); } - // hidePermiumDetailsBasedOnTheTeam(); + if(parseFloat(ebp) != 0.00 && parseFloat(iep) != 0.00){ + $('#client_type option[value="1"]').show(); + $('#client_type option[value="2"]').show(); + }else if(parseFloat(iep) == 0.00){ + $('#client_type option[value="2"]').hide(); + $('#client_type option[value="1"]').show(); + }else if(parseFloat(ebp) == 0.00){ + $('#client_type option[value="1"]').hide(); + $('#client_type option[value="2"]').show(); + }else{ + $('#client_type option[value="1"]').show(); + $('#client_type option[value="2"]').show(); + } + + }); }) @@ -1290,58 +1325,6 @@ $(document).on('change', 'input[type="checkbox"][name="co_share_type[]"]', funct } }); -function checkLeaderSelected(){ - -} - -// $(document).on('input', '[name="cgst[]"]', function() { - -// let val = $(this).val(); - -// if(val){ -// $('[name="igst[]"]').val(0); -// $('[name="cgst[]"]').val(val); -// $('[name="sgst[]"]').val(val); - -// }else{ -// $('[name="igst[]"]').val(''); -// $('[name="sgst[]"]').val(''); -// } -// // console.log('cgst value', val); -// }); - -// $(document).on('input', '[name="sgst[]"]', function() { - -// let val = $(this).val(); - -// if(val){ -// $('[name="igst[]"]').val(0); -// $('[name="sgst[]"]').val(val) -// $('[name="cgst[]"]').val(val) -// }else{ -// $('[name="igst[]"]').val(''); -// $('[name="sgst[]"]').val('') -// $('[name="cgst[]"]').val('') -// } -// // console.log('cgst value', val); -// }); - -// $(document).on('input', '[name="igst[]"]', function() { - -// let val = $(this).val(); - -// if(val){ -// $('[name="cgst[]"], [name="sgst[]"]').val(0); -// $('[name="igst[]"]').val(val) -// }else{ -// $('[name="cgst[]"], [name="sgst[]"]').val(''); -// $('[name="igst[]"]').val('') - -// } - -// // console.log('igst value', val); -// }); - $(document).on('click', '[name="co_share_type[]"]', function() { let val = $(this).val(); @@ -1550,7 +1533,7 @@ function getPolicyTransactionDataForEdit(input) { if (res.data.pt_co_share_details) { setTimeout(function() { - populateTable(res.data.pt_co_share_details); + populateTable(res.data.pt_co_share_details, res.data.cd_ac_pk); }, 1000); } @@ -1611,10 +1594,10 @@ function getPolicyTransactionDataForEdit(input) { $('#location').val(res.data.location); $('#installment').val(res.data.installment); $('#installment_data').val(res.data.installment_data); - $('#last_action_date').val(res.data.updated_at); + $('#last_action_date').val(res.data.last_action_date); $('#process_start_date').val(res.data.created_at); $('#remark').val(res.data.remarks); - $('.current_date').show(); + // $('.current_date').show(); $('#sales_generated_by').val(res.data.sales_generated_by ?? '').change(); $('#serviced_by').val(res.data.serviced_by ?? '').change(); @@ -1733,6 +1716,12 @@ function getPolicyTransactionDataForEdit(input) { $('#hide_vehicle_tab').hide(); } + if (res.data.policy_with_corr == 1) { + $('#policy_with_corr').prop('checked', true); + } else { + $('#policy_with_corr').prop('checked', false); + } + } else { console.log('No data found'); } @@ -1779,9 +1768,12 @@ function amountCalculation(input) { let selectedOption = $('#policy_type_id').find('option:selected'); let bap = selectedOption.data('bap'); + const event = window.event; + console.log("Event id:", event.target.id); // Retrieve and parse the values or default to 0 if not a number let bp = parseFloat($('#base_premium_' + input).val()) || 0; + let ncpa = parseFloat($('#non_comm_per_amt_' + input).val()) || 0; var tp = 0; if(bap == 'Motor'){ @@ -1812,6 +1804,7 @@ function amountCalculation(input) { let standard_tep_per = parseFloat($('#standard_tep_' + input).val()) || 0; let co_share_per = parseFloat($('#co_share_per_' + input).val()) || 0; + let gst_amount = parseFloat($('#gst_amount_' + input).val()) || 0; // console.log(standard_bp_per, standard_tp_per, standard_tep_per); @@ -1840,19 +1833,24 @@ function amountCalculation(input) { tpTotal = bp + tp + tep; } - console.log('bp', bp); - console.log('tp', tp); - console.log('tep', tep); - console.log('cop', cop); console.log('tpTotal', tpTotal); - + ncpaTotal = tpTotal + ncpa; + let ncpa_gst_per_amt = (ncpaTotal * gst_per) / 100; + console.log('ncpa_gst_per_amt', ncpa_gst_per_amt); let gst_per_amt = (tpTotal * gst_per) / 100; console.log('gst_per_amt', gst_per_amt); - // $('#gst_amount_' + input).val(gst_per_amt.toFixed(2)); - $('#gst_amount_' + input).val(!isNaN(gst_per_amt) && isFinite(gst_per_amt) ? gst_per_amt.toFixed(2) : '0.00'); + if(gst_amount != 0){ + if (event.target.id.startsWith('non_comm_per_amt')) { + $('#gst_amount_' + input).val(!isNaN(ncpa_gst_per_amt) && isFinite(ncpa_gst_per_amt) ? ncpa_gst_per_amt.toFixed(2) : '0.00'); + }else{ + $('#gst_amount_' + input).val(!isNaN(gst_amount) && isFinite(gst_amount) ? gst_amount.toFixed(2) : '0.00'); + } + }else{ + $('#gst_amount_' + input).val(!isNaN(ncpa_gst_per_amt) && isFinite(ncpa_gst_per_amt) ? ncpa_gst_per_amt.toFixed(2) : '0.00'); + } let finalTotal = tpTotal + gst_per_amt + stamp_duty_amt; @@ -2280,130 +2278,7 @@ function co_share_percentage_calculation(input, extra = null){ } -// function co_share_percentage_calculation(input) { -// console.log('Input ID:', input); - -// const inputs = $('input[name="co_share_per[]"]'); -// const totalInputs = inputs.length; - -// console.log('Number of inputs:', totalInputs); - -// const inputValues = {}; -// inputs.each(function () { -// const id = $(this).attr('id').split('_').pop(); // Extract ID -// inputValues[id] = parseFloat($(this).val()) || 0; // Parse value or default to 0 -// }); - -// console.log('Initial input values:', inputValues); - -// // Handle value calculation for the given input -// const currentValue = inputValues[input] || 0; -// const remainingPercentage = 100 - currentValue; - -// if (totalInputs === 2) { -// // Specific handling for exactly 2 inputs -// const otherInputId = Object.keys(inputValues).find(id => id !== input); -// const otherValue = inputValues[otherInputId] || 0; - -// // if (extra === 'add') { -// // inputValues[input] = otherValue === 100 ? 0 : remainingPercentage; -// // } else { -// inputValues[otherInputId] = currentValue === 100 ? 0 : remainingPercentage; -// // } -// } - -// // else { -// // // Distribute remaining percentage among other inputs proportionally -// // let totalFilled = 0; -// // let emptyInputs = []; - -// // Object.keys(inputValues).forEach(id => { -// // if (id === input) { -// // totalFilled += currentValue; -// // } else if (inputValues[id] > 0) { -// // totalFilled += inputValues[id]; -// // } else { -// // emptyInputs.push(id); -// // } -// // }); - -// // console.log('Total filled percentage:', totalFilled); - -// // if (emptyInputs.length > 0) { -// // const balancePerInput = remainingPercentage / emptyInputs.length; -// // emptyInputs.forEach(id => { -// // inputValues[id] = balancePerInput.toFixed(2); // Distribute evenly -// // }); -// // } - -// // console.log('Empty input IDs:', emptyInputs); -// // } - -// // Update input values in DOM -// Object.keys(inputValues).forEach(id => { -// $(`#co_share_per_${id}`).val(inputValues[id]); -// }); - -// console.log('Updated input values:', inputValues); -// } - -// function co_share_percentage_calculation(input) { -// console.log('Input ID:', input); - -// const inputs = $('input[name="co_share_per[]"]'); -// const totalInputs = inputs.length; - -// console.log('Number of inputs:', totalInputs); - -// const inputValues = {}; -// let totalFilled = 0; -// let emptyInputs = []; - -// // Collect input values and track empty inputs -// inputs.each(function () { -// const id = $(this).attr('id').split('_').pop(); // Extract ID -// const value = parseFloat($(this).val()) || 0; - -// inputValues[id] = value; -// totalFilled += value; - -// if (value === 0) { -// emptyInputs.push(id); // Track empty inputs -// } -// }); - -// console.log('Initial input values:', inputValues); -// console.log('Total filled percentage:', totalFilled); -// console.log('Empty input IDs:', emptyInputs); - -// // Ensure total percentage does not exceed 100 -// if (totalFilled > 100) { -// console.error("Error: Total percentage exceeds 100!"); -// return; -// } - -// // Adjust empty inputs to balance the total to 100% -// const remainingPercentage = 100 - totalFilled; - -// if (emptyInputs.length > 0) { -// const balancePerInput = (remainingPercentage / emptyInputs.length).toFixed(2); - -// emptyInputs.forEach(id => { -// inputValues[id] = parseFloat(balancePerInput); -// }); - -// console.log('Remaining percentage:', remainingPercentage); -// console.log('Balanced input values:', inputValues); -// } - -// // Update all input values in the DOM -// Object.keys(inputValues).forEach(id => { -// $(`#co_share_per_${id}`).val(inputValues[id]); -// }); - -// console.log('Final input values:', inputValues); -// } $(document).on('change', '[name="base_premium[]"], [name="co_share_per[]"]', function() { @@ -2788,7 +2663,9 @@ function addCDAccountNumber(input) myModal.show(); $(input).val('') }else{ + console.log('cd_ac_pk', val) $('#cd_ac_no').val(val) + getCdAmount(val, uniqueid); } } @@ -2877,6 +2754,7 @@ function removeAllColumnsExceptFirst(tableId) { } //--------------------------------------------------------------------------------------------------------- + function convertToMySQLDate(dateString) { // console.log('convertToMySQLDate' + dateString); @@ -3011,6 +2889,7 @@ $("#inception_form_id").submit(function(event) { formData.set('policy_end_date',convertToMySQLDate(formData.get('policy_end_date'))); formData.set('renewal_date',convertToMySQLDate(formData.get('renewal_date'))); formData.set('rollover_date',convertToMySQLDate(formData.get('rollover_date'))); + // formData.set('last_action_date',convertToMySQLDate(formData.get('last_action_date'))); formData.set('month',convertMonthYearToMySQLDate(formData.get('month'))); // formData['policy_start_date'] = convertToMySQLDate(formData['policy_start_date']); @@ -3651,20 +3530,12 @@ var insurerCount = 0; $('#setInsurerCount').on('click', function() { - // var count = parseInt($('#setInsurerCount').val()) || 1; + addInsurerColumn(); // Ensure this function is defined properly - // count = count - 1; // Reduce the count by 1 - - // if (count >= 0) { // Ensure count is valid after reduction - // for (var i = 0; i < count; i++) { - addInsurerColumn(); // Ensure this function is defined properly - // } - // } else { - // toastr.warning('Please enter a valid insurer count', 'WARNING'); - // } }); function addInsurerColumn() { + insurerCount++; // hidePermiumDetailsBasedOnTheTeam() @@ -3682,241 +3553,10 @@ function addInsurerColumn() { let newCell = ''; - if(team_id.includes('4')){ - - console.log( - '################ TEAM ID 4 insurerTable '+ index + '########################' - ) + if(team_id.includes('6') || team_id.includes('4')){ switch(index) { - case 0: // Insurer selection - newCell = ` - - `; - break; - case 1: // Is Leader? - newCell = ` - - - `; - break; - case 2: // CD Account Number selectionclass="std_tp_td" - newCell = ` - - `; - break; - case 3: // follower policy no % - newCell = ``; - break; - case 4: // Co-Share % - newCell = ``; - break; - case 5: // Base Premium - newCell = ``; - break; - case 6: // TP Premium - newCell = ``; - break; - case 7: // Ter Premium - newCell = ``; - break; - case 8: // co Premium - newCell = ``; - break; - case 9: // CGST - newCell = ``; - break; - case 10: // SGST - newCell = ``; - break; - case 11: // IGST - newCell = ``; - break; - case 12: // GST Amount - newCell = ``; - break; - case 13: // Stamp Duty - newCell = ``; - break; - case 14: // Total - newCell = ``; - break; - case 15: // Agreed BP % - newCell = ``; - break; - case 16: // Agreed TP % - newCell = ``; - break; - case 17: // Agreed Ter % - newCell = ``; - break; - case 18: // Standard BP % - newCell = ``; - break; - case 19: // Standard TP % - newCell = ``; - break; - case 20: // Standard Ter % - newCell = ``; - break; - case 21: // Actual BP Amount - newCell = ``; - break; - case 22: // Actual TP Amount - newCell = ``; - break; - case 23: // Actual TEP Amount - newCell = ``; - break; - case 24: // Actual BP % - newCell = ``; - break; - case 25: // Actual TP % - newCell = ``; - break; - case 26: // Actual TEP % - newCell = ``; - break; - case 27: // Actual BP Brokerage Amount - newCell = ``; - break; - case 28: // Actual TP Brokerage Amount - newCell = ``; - break; - case 29: // Actual TEP Brokerage Amount - newCell = ``; - break; - case 30: // Expected Amount - newCell = ``; - break; - case 31: // Variance - newCell = ``; - break; - case 32: // Reward - newCell = ``; - break; - case 33: // ID For Update - newCell = ``; - break; - } - - }else if(team_id.includes('3')){ - - console.log( - '################ TEAM ID 3 ########################' - ) - - switch(index) { - case 0: // Insurer selection - newCell = ` - - `; - break; - case 1: // Is Leader? - newCell = ` - - - `; - break; - case 2: // CD Account Number selectionclass="std_tp_td" - newCell = ` - - `; - break; - case 3: // follower policy no % - newCell = ``; - break; - case 4: // Co-Share % - newCell = ``; - break; - case 5: // Base Premium - newCell = ``; - break; - case 6: // TP Premium - newCell = ``; - break; - case 7: // Ter Premium - newCell = ``; - break; - case 8: // co Premium - newCell = ``; - break; - case 9: // CGST - newCell = ``; - break; - case 10: // SGST - newCell = ``; - break; - case 11: // IGST - newCell = ``; - break; - case 12: // GST Amount - newCell = ``; - break; - case 13: // Stamp Duty - newCell = ``; - break; - case 14: // Total - newCell = ``; - break; - case 15: // Agreed BP % - newCell = ``; - break; - case 16: // Agreed TP % - newCell = ``; - break; - case 17: // Agreed Ter % - newCell = ``; - break; - case 18: // Standard BP % - newCell = ``; - break; - case 19: // Standard TP % - newCell = ``; - break; - case 20: // Standard Ter % - newCell = ``; - break; - - case 21: // ID For Update - newCell = ``; - break; - } - - }else if(team_id.includes('6')){ - - console.log( - '################ TEAM ID 6 ########################' - ) - - switch(index) { case 0: // Insurer selection newCell = ` `; break; - case 3: // follower policy no % + case 3: // CD Amount + newCell = ``; + break; + case 4: // follower policy no % newCell = ``; break; - case 4: // Co-Share % + case 5: // Co-Share % newCell = ``; break; - case 5: // Base Premium + case 6: // Non commissionable Premium amount % + newCell = ``; + break; + case 7: // Base Premium newCell = ``; break; - case 6: // TP Premium + case 8: // TP Premium newCell = ``; break; - case 7: // Ter Premium + case 9: // Ter Premium newCell = ``; break; - case 8: // co Premium + case 10: // co Premium newCell = ``; break; - case 9: // CGST + case 11: // CGST newCell = ``; break; - case 10: // SGST + case 12: // SGST newCell = ``; break; - case 11: // IGST + case 13: // IGST newCell = ``; break; - case 12: // GST Amount - newCell = ``; + case 14: // GST Amount + newCell = ``; break; - case 13: // Stamp Duty + case 15: // Stamp Duty newCell = ``; break; - case 14: // Total + case 16: // Total newCell = ``; break; - case 15: // Agreed BP % + case 17: // Agreed BP % newCell = ``; break; - case 16: // Agreed TP % + case 18: // Agreed TP % newCell = ``; break; - case 17: // Agreed Ter % + case 19: // Agreed Ter % newCell = ``; break; - case 18: // Agreed Amount + case 20: // Agreed Amount newCell = ``; break; - case 19: // Standard BP % + case 21: // Standard BP % newCell = ``; break; - case 20: // Standard TP % + case 22: // Standard TP % newCell = ``; break; - case 21: // Standard Ter % + case 23: // Standard Ter % newCell = ``; break; - case 22: // Actual BP Amount - newCell = ``; + case 24: // Actual BP Amount + newCell = ``; + break; + case 25: // Actual TP Amount + newCell = ``; break; - case 23: // Actual TP Amount - newCell = ``; + case 26: // Actual TEP Amount + newCell = ``; break; - case 24: // Actual TEP Amount - newCell = ``; + case 27: // Actual BP % + newCell = ``; break; - case 25: // Actual BP % - newCell = ``; + case 28: // Actual TP % + newCell = ``; break; - case 26: // Actual TP % - newCell = ``; + case 29: // Actual TEP % + newCell = ``; break; - case 27: // Actual TEP % - newCell = ``; + case 30: // Actual BP Brokerage Amount + newCell = ``; break; - case 28: // Actual BP Brokerage Amount - newCell = ``; + case 31: // Actual TP Brokerage Amount + newCell = ``; break; - case 29: // Actual TP Brokerage Amount - newCell = ``; + case 32: // Actual TEP Brokerage Amount + newCell = ``; break; - case 30: // Actual TEP Brokerage Amount - newCell = ``; - break; - case 31: // Expected Amount - newCell = ``; - break; - case 32: // Variance - newCell = ``; - break; - case 33: // Reward - newCell = ``; + case 33: // Expected Amount + newCell = ``; break; + // case 34: // Variance + // newCell = ``; + // break; case 34: // ID For Update newCell = ``; break; } - } - console.log('#################################################################'); - console.log(newCell); - console.log('#################################################################'); + }else if(team_id.includes('3')){ + + switch(index) { + case 0: // Insurer selection + newCell = ` + + `; + break; + case 1: // Is Leader? + newCell = ` + + + `; + break; + case 2: // CD Account Number selectionclass="std_tp_td" + newCell = ` + + `; + break; + case 3: // CD Amount % + newCell = ``; + break; + case 4: // follower policy no % + newCell = ``; + break; + case 5: // Co-Share % + newCell = ``; + break; + case 6: // Non commissionable Premium amount % + newCell = ``; + break; + case 7: // Base Premium + newCell = ``; + break; + case 8: // TP Premium + newCell = ``; + break; + case 9: // Ter Premium + newCell = ``; + break; + case 10: // co Premium + newCell = ``; + break; + case 11: // CGST + newCell = ``; + break; + case 12: // SGST + newCell = ``; + break; + case 13: // IGST + newCell = ``; + break; + case 14: // GST Amount + newCell = ``; + break; + case 15: // Stamp Duty + newCell = ``; + break; + case 16: // Total + newCell = ``; + break; + case 17: // Agreed BP % + newCell = ``; + break; + case 18: // Agreed TP % + newCell = ``; + break; + case 19: // Agreed Ter % + newCell = ``; + break; + case 20: // Standard BP % + newCell = ``; + break; + case 21: // Standard TP % + newCell = ``; + break; + case 22: // Standard Ter % + newCell = ``; + break; + + case 23: // ID For Update + newCell = ``; + break; + } + } + $(this).append(newCell); $('#follow_insurer_id_' + insurerCount).select2() @@ -4119,7 +3857,7 @@ function removeInsurerColumn(index, count_index) { insurerCount--; } -function populateTable(dataArray) { +function populateTable(dataArray, cd_ac_pk) { console.log('populateTable data', dataArray) @@ -4132,6 +3870,7 @@ function populateTable(dataArray) { if(data.record_count > 0){ disable_td = true; } + console.log('disable_td', disable_td); // Populate the fields with the provided data @@ -4140,12 +3879,7 @@ function populateTable(dataArray) { let insurer = data.insurer_branch_id + '-' + data.insurer_id; - if(team_id.includes('4')){ - - console.log( - '################ TEAM ID 4 ########################' - ) - + if(team_id.includes('6') || team_id.includes('4')){ switch (rowIndex) { case 0: // Insurer selection cell.find('select').val(insurer).change().toggleClass('readonly-select', !!disable_td); @@ -4153,110 +3887,118 @@ function populateTable(dataArray) { case 1: // Is Leader? cell.find('input[type="checkbox"]').prop('checked', data.co_share_type === '1').change().toggleClass('readonly-select', !!disable_td); break; - case 2: // CD Account Number selection - cell.find('select').val(data.cd_ac_no).toggleClass('readonly-select', !!disable_td); + case 2: // CD Account Number + cell.find('select').val(cd_ac_pk); + var selectElement = cell.find('select'); + selectElement.val(cd_ac_pk).prop('selected', true); + selectElement.toggleClass('readonly-select', !!disable_td) + setTimeout(function(){ + selectElement.find('option[value="' + cd_ac_pk + '"]').prop('selected', true); + selectElement.toggleClass('readonly-select', !!disable_td) + }, 2000) + break; + case 3: // CD AMOUNT + console.log('------- CD AMOUNT -------') break; - case 3: // Co-Share % + case 4: // follower_policy_no cell.find('input').val(data.follower_policy_no).toggleClass('readonly-select', !!disable_td); break; - case 4: // Co-Share % + case 5: // Co-Share % cell.find('input').val(data.co_share_per).toggleClass('readonly-select', !!disable_td); break; - case 5: // Base Premium + case 6: // non_comm_per_amt + cell.find('input').val(data.non_comm_per_amt); + break; + case 7: // Base Premium cell.find('input').val(data.bp_amt).toggleClass('readonly-select', !!disable_td); break; - case 6: // TP Premium + case 8: // TP Premium cell.find('input').val(data.tp_amt).toggleClass('readonly-select', !!disable_td); break; - case 7: // Ter Premium + case 9: // Ter Premium cell.find('input').val(data.tep_amt).toggleClass('readonly-select', !!disable_td); break; - case 8: // Co Premium + case 10: // Co Premium cell.find('input').val(data.cop_amt).toggleClass('readonly-select', !!disable_td); break; - case 9: // CGST + case 11: // CGST cell.find('input').val(data.bp_cgst).toggleClass('readonly-select', !!disable_td); break; - case 10: // SGST + case 12: // SGST cell.find('input').val(data.bp_sgst).toggleClass('readonly-select', !!disable_td); break; - case 11: // IGST + case 13: // IGST cell.find('input').val(data.bp_igst).toggleClass('readonly-select', !!disable_td); break; - case 12: // GST Amount + case 14: // GST Amount cell.find('input').val(data.bp_gst_amt).toggleClass('readonly-select', !!disable_td); break; - case 13: // Stamp Duty + case 15: // Stamp Duty cell.find('input').val(data.stamp_duty).toggleClass('readonly-select', !!disable_td); break; - case 14: // Total + case 16: // Total cell.find('input').val(data.amount).toggleClass('readonly-select', !!disable_td); break; - case 15: // Agreed BP % + case 17: // Agreed BP % cell.find('input').val(data.agreed_bp_per).toggleClass('readonly-select', !!disable_td); break; - case 16: // Agreed TP % + case 18: // Agreed TP % cell.find('input').val(data.agreed_tp_per).toggleClass('readonly-select', !!disable_td); break; - case 17: // Agreed Ter % + case 19: // Agreed Ter % cell.find('input').val(data.agreed_tep_per).toggleClass('readonly-select', !!disable_td); break; - case 18: // Standard BP % + case 20: // Agreed Amount + cell.find('input').val(data.agreed_amt).toggleClass('readonly-select', !!disable_td); + break; + case 21: // Standard BP % cell.find('input').val(data.standerd_bp_per).toggleClass('readonly-select', !!disable_td); break; - case 19: // Standard TP % + case 22: // Standard TP % cell.find('input').val(data.standerd_tp_per).toggleClass('readonly-select', !!disable_td); break; - case 20: // Standard Ter % + case 23: // Standard Ter % cell.find('input').val(data.standerd_tep_per).toggleClass('readonly-select', !!disable_td); break; - case 21: // Actual BP Amount - cell.find('input').val(data.actual_bp_amt).toggleClass('readonly-select', !!disable_td); + case 24: // Actual BP Amount + cell.find('input').val(data.actual_bp_amount); break; - case 22: // Actual TP Amount - cell.find('input').val(data.actual_tp_amt).toggleClass('readonly-select', !!disable_td); + case 25: // Actual TP Amount + cell.find('input').val(data.actual_tp_amount); break; - case 23: // Actual Ter Amount - cell.find('input').val(data.actual_tep_amt).toggleClass('readonly-select', !!disable_td); + case 26: // Actual Ter Amount + cell.find('input').val(data.actual_tep_amount); break; - case 24: // Actual BP % - cell.find('input').val(data.actual_bp_per).toggleClass('readonly-select', !!disable_td); + case 27: // Actual BP % + cell.find('input').val(data.actual_bp_percentage); break; - case 25: // Actual TP % - cell.find('input').val(data.actual_tp_per).toggleClass('readonly-select', !!disable_td); + case 28: // Actual TP % + cell.find('input').val(data.actual_tp_percentage); break; - case 26: // Actual Ter % - cell.find('input').val(data.actual_tep_per).toggleClass('readonly-select', !!disable_td); + case 29: // Actual Ter % + cell.find('input').val(data.actual_tep_percentage); break; - case 27: // Actual BP Brokerage Amount - cell.find('input').val(data.actual_bp_brokerage_amt).toggleClass('readonly-select', !!disable_td); + case 30: // Actual BP Brokerage Amount + cell.find('input').val(data.actual_bp_brokerage_amount); break; - case 28: // Actual TP Brokerage Amount - cell.find('input').val(data.actual_tp_brokerage_amt).toggleClass('readonly-select', !!disable_td); + case 31: // Actual TP Brokerage Amount + cell.find('input').val(data.actual_tp_brokerage_amount); break; - case 29: // Actual Ter Brokerage Amount - cell.find('input').val(data.actual_tep_brokerage_amt).toggleClass('readonly-select', !!disable_td); + case 32: // Actual Ter Brokerage Amount + cell.find('input').val(data.actual_tep_brokerage_amount); break; - case 30: // Expected Amount - cell.find('input').val(data.exp_amt).toggleClass('readonly-select', !!disable_td); + case 33: // Expected Amount + cell.find('input').val(data.exp_amt); break; - case 31: // Variance - cell.find('input').val(data.variance).toggleClass('readonly-select', !!disable_td); - break; - case 32: // Reward - cell.find('input').val(data.reward).toggleClass('readonly-select', !!disable_td); - break; - case 33: // Co-share ID (hidden field) + // case 34: // Variance + // cell.find('input').val(data.variance); + // break; + case 34: // Co-share ID (hidden field) cell.find('input[type="hidden"]').val(data.id); break; - } - + } }else if(team_id.includes('3')){ - console.log( - '################ TEAM ID 3 ########################' - ) - switch (rowIndex) { case 0: // Insurer selection cell.find('select').val(insurer).change().toggleClass('readonly-select', !!disable_td); @@ -4265,131 +4007,57 @@ function populateTable(dataArray) { cell.find('input[type="checkbox"]').prop('checked', data.co_share_type === '1').change().toggleClass('readonly-select', !!disable_td); break; case 2: // CD Account Number selection - cell.find('select').val(data.cd_ac_no).toggleClass('readonly-select', !!disable_td); + console.log('!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'); + cell.find('select').val(cd_ac_pk).toggleClass('readonly-select', !!disable_td); break; - case 3: // Co-Share % + case 3: // follower_policy_no cell.find('input').val(data.follower_policy_no).toggleClass('readonly-select', !!disable_td); break; - case 4: // Co-Share % + case 4: // co_share_per cell.find('input').val(data.co_share_per).toggleClass('readonly-select', !!disable_td); break; - case 5: // Base Premium + case 5: // non_comm_per_amt + cell.find('input').val(data.non_comm_per_amt); + break; + case 6: // Base Premium cell.find('input').val(data.bp_amt).toggleClass('readonly-select', !!disable_td); break; - case 6: // TP Premium + case 7: // TP Premium cell.find('input').val(data.tp_amt).toggleClass('readonly-select', !!disable_td); break; - case 7: // Ter Premium + case 8: // Ter Premium cell.find('input').val(data.tep_amt).toggleClass('readonly-select', !!disable_td); break; - case 8: // Co Premium + case 9: // Co Premium cell.find('input').val(data.cop_amt).toggleClass('readonly-select', !!disable_td); break; - case 9: // CGST + case 10: // CGST cell.find('input').val(data.bp_cgst).toggleClass('readonly-select', !!disable_td); break; - case 10: // SGST + case 11: // SGST cell.find('input').val(data.bp_sgst).toggleClass('readonly-select', !!disable_td); break; - case 11: // IGST + case 12: // IGST cell.find('input').val(data.bp_igst).toggleClass('readonly-select', !!disable_td); break; - case 12: // GST Amount + case 13: // GST Amount cell.find('input').val(data.bp_gst_amt).toggleClass('readonly-select', !!disable_td); break; - case 13: // Stamp Duty + case 14: // Stamp Duty cell.find('input').val(data.stamp_duty).toggleClass('readonly-select', !!disable_td); break; - case 14: // Total + case 15: // Total cell.find('input').val(data.amount).toggleClass('readonly-select', !!disable_td); break; - case 15: // Agreed BP % + case 16: // Agreed BP % cell.find('input').val(data.agreed_bp_per).toggleClass('readonly-select', !!disable_td); break; - case 16: // Agreed TP % + case 17: // Agreed TP % cell.find('input').val(data.agreed_tp_per).toggleClass('readonly-select', !!disable_td); break; - case 17: // Agreed Ter % + case 18: // Agreed Ter % cell.find('input').val(data.agreed_tep_per).toggleClass('readonly-select', !!disable_td); break; - case 18: // Standard BP % - cell.find('input').val(data.standerd_bp_per).toggleClass('readonly-select', !!disable_td); - break; - case 19: // Standard TP % - cell.find('input').val(data.standerd_tp_per).toggleClass('readonly-select', !!disable_td); - break; - case 20: // Standard Ter % - cell.find('input').val(data.standerd_tep_per).toggleClass('readonly-select', !!disable_td); - break; - case 21: // Co-share ID (hidden field) - cell.find('input[type="hidden"]').val(data.id); - break; - } - - }else if(team_id.includes('6')){ - - console.log( - '################ TEAM ID 6 ########################' - ) - - switch (rowIndex) { - case 0: // Insurer selection - cell.find('select').val(insurer).change().toggleClass('readonly-select', !!disable_td); - break; - case 1: // Is Leader? - cell.find('input[type="checkbox"]').prop('checked', data.co_share_type === '1').change().toggleClass('readonly-select', !!disable_td); - break; - case 2: // CD Account Number selection - cell.find('select').val(data.cd_ac_no).toggleClass('readonly-select', !!disable_td); - break; - case 3: // Co-Share % - cell.find('input').val(data.follower_policy_no).toggleClass('readonly-select', !!disable_td); - break; - case 4: // Co-Share % - cell.find('input').val(data.co_share_per).toggleClass('readonly-select', !!disable_td); - break; - case 5: // Base Premium - cell.find('input').val(data.bp_amt).toggleClass('readonly-select', !!disable_td); - break; - case 6: // TP Premium - cell.find('input').val(data.tp_amt).toggleClass('readonly-select', !!disable_td); - break; - case 7: // Ter Premium - cell.find('input').val(data.tep_amt).toggleClass('readonly-select', !!disable_td); - break; - case 8: // Co Premium - cell.find('input').val(data.cop_amt).toggleClass('readonly-select', !!disable_td); - break; - case 9: // CGST - cell.find('input').val(data.bp_cgst).toggleClass('readonly-select', !!disable_td); - break; - case 10: // SGST - cell.find('input').val(data.bp_sgst).toggleClass('readonly-select', !!disable_td); - break; - case 11: // IGST - cell.find('input').val(data.bp_igst).toggleClass('readonly-select', !!disable_td); - break; - case 12: // GST Amount - cell.find('input').val(data.bp_gst_amt).toggleClass('readonly-select', !!disable_td); - break; - case 13: // Stamp Duty - cell.find('input').val(data.stamp_duty).toggleClass('readonly-select', !!disable_td); - break; - case 14: // Total - cell.find('input').val(data.amount).toggleClass('readonly-select', !!disable_td); - break; - case 15: // Agreed BP % - cell.find('input').val(data.agreed_bp_per).toggleClass('readonly-select', !!disable_td); - break; - case 16: // Agreed TP % - cell.find('input').val(data.agreed_tp_per).toggleClass('readonly-select', !!disable_td); - break; - case 17: // Agreed Ter % - cell.find('input').val(data.agreed_tep_per).toggleClass('readonly-select', !!disable_td); - break; - case 18: // Agreed Amount - cell.find('input').val(data.agreed_amt).toggleClass('readonly-select', !!disable_td); - break; case 19: // Standard BP % cell.find('input').val(data.standerd_bp_per).toggleClass('readonly-select', !!disable_td); break; @@ -4399,48 +4067,19 @@ function populateTable(dataArray) { case 21: // Standard Ter % cell.find('input').val(data.standerd_tep_per).toggleClass('readonly-select', !!disable_td); break; - case 22: // Actual BP Amount - cell.find('input').val(data.actual_bp_amt).toggleClass('readonly-select', !!disable_td); - break; - case 23: // Actual TP Amount - cell.find('input').val(data.actual_tp_amt).toggleClass('readonly-select', !!disable_td); - break; - case 24: // Actual Ter Amount - cell.find('input').val(data.actual_tep_amt).toggleClass('readonly-select', !!disable_td); - break; - case 25: // Actual BP % - cell.find('input').val(data.actual_bp_per).toggleClass('readonly-select', !!disable_td); - break; - case 26: // Actual TP % - cell.find('input').val(data.actual_tp_per).toggleClass('readonly-select', !!disable_td); - break; - case 27: // Actual Ter % - cell.find('input').val(data.actual_tep_per).toggleClass('readonly-select', !!disable_td); - break; - case 28: // Actual BP Brokerage Amount - cell.find('input').val(data.actual_bp_brokerage_amt).toggleClass('readonly-select', !!disable_td); - break; - case 29: // Actual TP Brokerage Amount - cell.find('input').val(data.actual_tp_brokerage_amt).toggleClass('readonly-select', !!disable_td); - break; - case 30: // Actual Ter Brokerage Amount - cell.find('input').val(data.actual_tep_brokerage_amt).toggleClass('readonly-select', !!disable_td); - break; - case 31: // Expected Amount - cell.find('input').val(data.exp_amt).toggleClass('readonly-select', !!disable_td); - break; - case 32: // Variance - cell.find('input').val(data.variance).toggleClass('readonly-select', !!disable_td); - break; - case 33: // Reward - cell.find('input').val(data.reward).toggleClass('readonly-select', !!disable_td); - break; - case 34: // Co-share ID (hidden field) + case 22: // Co-share ID (hidden field) cell.find('input[type="hidden"]').val(data.id); break; - } + } + + }else { } }); + + // console.log('data.cd_ac_pk', cd_ac_pk) + if(data.co_share_type == 1){ + getCdAmount(cd_ac_pk, index); + } }); // $('input:disabled, select:disabled, textarea:disabled').addClass('readonly-color'); @@ -4582,5 +4221,34 @@ function checkCDAmountForBasePremium(input) { }); } +function getCdAmount(cd_ac_pk, increment){ + + increment = increment + 1 + console.log('cd_ac_pk', cd_ac_pk); + console.log('increment', increment); + + let url = ''; + + // Data to send in the AJAX request + let requestData = { + cd_ac_pk: cd_ac_pk + }; + + // Send AJAX request + sendAjaxRequestForGlobal(url, 'GET', requestData, function(response) { + + console.log('Data fetched successfully:', response); + + if (response.status == true) { + $('#cd_current_balance_'+increment).val(response.data.balance); + } + + }, function(xhr, status, error) { + console.error('Error fetching data:', error); + console.error(xhr.responseText); + toastr.error('An error occurred while checking the CD amount.', 'ERROR'); + }); + +} \ No newline at end of file diff --git a/app/Views/policy_transaction_inception_list.php b/app/Views/policy_transaction_inception_list.php index 0db12415..6509a81f 100644 --- a/app/Views/policy_transaction_inception_list.php +++ b/app/Views/policy_transaction_inception_list.php @@ -191,7 +191,7 @@ table.dataTable tbody td {