@@ -393,12 +440,18 @@
}
$("#source_policy_id").removeAttr("required");
$("#source_policy_id").closest("div") .find("label .text-danger").remove();
+ $("#source_policy_id").hide();
+ $('#source_policy_id').closest('.form-group').hide();
$("#source_policy_start_date").removeAttr("required");
$("#source_policy_start_date").closest("div") .find("label .text-danger").remove();
+ $("#source_policy_start_date").hide();
+ $('#source_policy_start_date').closest('.form-group').hide();
$("#source_policy_end_date").removeAttr("required");
$("#source_policy_end_date").closest("div") .find("label .text-danger").remove();
+ $("#source_policy_end_date").hide();
+ $('#source_policy_end_date').closest('.form-group').hide();
@@ -407,25 +460,27 @@
$("#source_policy_start_date").prop("required", true);
$("#source_policy_end_date").prop("required", true);
+ $("#source_policy_id").show();
+ $("#source_policy_start_date").show();
+ $("#source_policy_start_date").show();
+
+ $('#source_policy_id').closest('.form-group').find('label').show();
+ $('#source_policy_start_date').closest('.form-group').find('label').show();
+ $('#source_policy_end_date').closest('.form-group').find('label').show();
// Check if the asterisk doesn't already exist, then add it
- let $label = $("#source_policy_id")
- .closest("div")
- .find("label");
+ let $label = $("#source_policy_id").closest("div") .find("label");
if ($label.find(".text-danger").length === 0) {
$label.append('
*');
}
- let $label2 = $("#source_policy_start_date")
- .closest("div")
- .find("label");
+
+ let $label2 = $("#source_policy_start_date").closest("div") .find("label");
if ($label2.find(".text-danger").length === 0) {
$label2.append('
*');
}
- let $label3 = $("#source_policy_end_date")
- .closest("div")
- .find("label");
+ let $label3 = $("#source_policy_end_date").closest("div").find("label");
if ($label3.find(".text-danger").length === 0) {
$label3.append('
*');
@@ -439,6 +494,17 @@
}
+ if(lead_type != 1){
+ dataIncrement = 1;
+ // updateRenewalFields(dataIncrement);
+
+ let incurred_claim_date_id = 'incurred_claim_date';
+ var incurred_claim_datepicker = flatpickr("#" + incurred_claim_date_id, {
+ dateFormat: "d/m/Y",
+ allowInput: false,
+ });
+ }
+
var policy_end_datePicker = flatpickr("#policy_end_date_" + increment, {
dateFormat: "d/m/Y",
allowInput: false
@@ -448,6 +514,12 @@
document.getElementById('source_policy_end_date').readOnly = true;
$('#source_policy_start_date, #source_policy_end_date').addClass('readonly-select');
+
+ $('#client_id').select2();
+ $('#client_branch_id').select2();
+ $('#source_policy_id').val("");
+
+ console.log('---- completed ----')
});
console.log('increment count for insurer and tpa ', increment);
@@ -470,6 +542,11 @@
$('#tpa_' + increment).select2();
$('#proposed_insurer').select2();
$('#proposed_tpa').select2();
+ $('#client_id').select2();
+ $('#client_branch_id').select2();
+ $('#source_policy_id').val("");
+
+ console.log('---- completed ----')
})
@@ -556,9 +633,9 @@
console.log('Policy Start Date:', policyStartDate.val());
// Recalculate policy_run_days if policy start date is already selected
- if (policyStartDate.val()) {
- calculatePolicyRunDays(increment);
- }
+ // if (policyStartDate.val()) {
+ // calculatePolicyRunDays(increment);
+ // }
}
});
@@ -924,9 +1001,9 @@
console.log('Policy Start Date:', policyStartDate.val());
// Recalculate policy_run_days if policy start date is already selected
- if (policyStartDate.val()) {
- calculatePolicyRunDays(increment);
- }
+ // if (policyStartDate.val()) {
+ // calculatePolicyRunDays(increment);
+ // }
}
});
@@ -1022,7 +1099,7 @@
-
+
@@ -1161,115 +1238,210 @@
//------------------------ CALCULATION ---------------------------------------------------------------------------------
- function calculatePolicyRunDays(increment) {
+ // function calculatePolicyRunDays(increment) {
+
+ // // console.log('calculatePolicyRunDays function called');
+ // // console.log('increment', increment);
+ // // let lead_type = $('#lead_type').val();
+ // // var policyStartDate = $("#source_policy_start_date");
+ // // if(lead_type == 3){
+ // // policyStartDate = $("#policy_start_date");
+ // // }
+ // // var policyStartDate = flatpickr.parseDate(policyStartDate.val(), "d/m/Y");
+ // // var incurredClaimDate = flatpickr.parseDate($("#incurred_claim_date_" + increment).val(), "d/m/Y");
+
+ // // console.log('policyStartDate', policyStartDate)
+ // // console.log('incurredClaimDate', incurredClaimDate)
+
+ // // if (policyStartDate && incurredClaimDate) {
+ // // var timeDiff = Math.abs(policyStartDate - incurredClaimDate); // Time difference in milliseconds
+ // // console.log('timeDiff', timeDiff);
+ // // var daysDiff = Math.ceil(timeDiff / (1000 * 60 * 60 * 24) + 1); // Convert to days and add 1
+ // // console.log('daysDiff', daysDiff);
+ // // $("#policy_run_days_" + increment).val(daysDiff); // Set value in the policy_run_days_ input
+ // // }
+ // }
+
+ // function incurredClaimSum(input) {
+
+ // // let increment = input.id.split('_').pop(); // Extract the increment part
+ // // console.log('increment', increment);
+
+ // // // Retrieve and convert the values to numbers, fallback to 0 if empty or invalid
+ // // let paid_claims = Number($('#paid_claims_' + increment).val()) || 0;
+ // // console.log('paid_claims', paid_claims);
+
+ // // let outstanding_claims = Number($('#outstanding_claims_' + increment).val()) || 0;
+ // // console.log('outstanding_claims', outstanding_claims);
+
+ // // // Calculate the incurred claim
+ // // let incurred_claims = paid_claims + outstanding_claims;
+ // // console.log('incurred_claims', incurred_claims);
+
+ // // // Set the calculated value
+ // // $('#incurred_claims_' + increment).val(incurred_claims);
+
+ // // // ------------------------------------------------------------------------------------------
+
+ // // let policy_run_days = Number($('#policy_run_days_' + increment).val()) || 0;
+ // // console.log('policy_run_days', policy_run_days);
+ // // console.log('incurred claims ' + incurred_claims);
+ // // // Prevent division by zero in annualised claims calculation
+ // // let annualised_claims = policy_run_days > 0 ? incurred_claims / policy_run_days * 365 : 0;
+ // // let annualised_claims_roundoff = Math.round(annualised_claims);
+ // // console.log('annualised_claims', annualised_claims_roundoff);
+
+ // // $('#annualised_claims_' + increment).val(annualised_claims_roundoff);
+
+ // // // ------------------------------------------------------------------------------------------
+
+ // // // Prevent division by zero in incurred claim ratio calculation
+ // // let premium_as_on_date = Number($('#premium_date_' + increment).val()) || 0;
+ // // let incurred_claim_ratio = (annualised_claims > 0 && premium_as_on_date > 0)
+ // // ? (annualised_claims / premium_as_on_date)
+ // // : 0;
+
+ // // let incurred_claim_ratio_roundoff = isFinite(incurred_claim_ratio)
+ // // ? Math.round(incurred_claim_ratio)
+ // // : 0;
+
+ // // console.log('incurred_claim_ratio', incurred_claim_ratio_roundoff);
+
+ // // $('#incurred_claims_ratio_' + increment).val(incurred_claim_ratio_roundoff);
+
+ // // // ------------------------------------------------------------------------------------------
+
+ // // let earnedPremium = parseFloat($('#earned_premium_' + increment).val()) || 0;
+ // // console.log('earnedPremium:', earnedPremium);
+
+ // // // Prevent division by zero
+ // // let earnedClaimsRatio = earnedPremium > 0 ? annualised_claims / earnedPremium : 0;
+
+ // // // Round to nearest integer
+ // // let earnedClaimsRatioRounded = Math.round(earnedClaimsRatio);
+ // // console.log('earnedClaimsRatio:', earnedClaimsRatio);
+
+ // // // Set the value to the corresponding input
+ // // $('#earned_claims_ratio_' + increment).val(earnedClaimsRatioRounded);
+
+ // }
+
+ // function earnedPremiumCalc(input) {
+
+ // // let increment = input.id.split('_').pop(); // Extract the increment part
+ // // console.log('increment', increment);
+
+ // // let premium_as_on_date = Number($('#premium_date_' + increment).val()) || 0;
+
+ // // // Retrieve and convert the values to numbers, fallback to 0 if empty or invalid
+ // // let premium_at_inception = Number($('#premium_at_inception_' + increment).val()) || 0;
+ // // console.log('premium_at_inception', premium_at_inception);
+
+ // // let policy_run_days = Number($('#policy_run_days_' + increment).val()) || 0;
+ // // console.log('policy_run_days', policy_run_days);
+
+ // // // Prevent division by zero and calculate earned premium
+ // // let earned_premium = premium_as_on_date > 0 ? (premium_as_on_date / 365) * 364 : 0;
+ // // console.log('earned_premium', earned_premium);
+ // // let earned_premium_roundoff = Math.round(earned_premium);
+ // // // Set the calculated value with two decimal places
+ // // $('#earned_premium_' + increment).val(earned_premium_roundoff);
+ // }
+
+ function calculatePolicyMetrics(input) {
- console.log('calculatePolicyRunDays function called');
- console.log('increment', increment);
let lead_type = $('#lead_type').val();
- var policyStartDate = $("#source_policy_start_date");
- if(lead_type == 3){
- policyStartDate = $("#policy_start_date");
- }
- var policyStartDate = flatpickr.parseDate(policyStartDate.val(), "d/m/Y");
- var incurredClaimDate = flatpickr.parseDate($("#incurred_claim_date_" + increment).val(), "d/m/Y");
+ console.log('Lead Type:', lead_type);
- console.log('policyStartDate', policyStartDate)
- console.log('incurredClaimDate', incurredClaimDate)
+ let increment = input.id.split('_').pop(); // Extract increment
+ if(lead_type != 1){
+ increment = "1";
+ }
+
+ console.log('--- calculatePolicyMetrics called ---');
+ console.log('Input ID:', input.id);
+ console.log('Increment:', increment);
+
+ let sourcePolicyDateVal = $('#source_policy_start_date').val()?.trim();
+ let policyStartDateVal = $('#policy_start_date').val()?.trim();
+ let policyStartDateInput = null;
+
+ if (sourcePolicyDateVal) {
+ policyStartDateInput = $('#source_policy_start_date');
+ console.log('Using Source Policy Start Date:', sourcePolicyDateVal);
+ } else if (policyStartDateVal) {
+ policyStartDateInput = $('#policy_start_date');
+ console.log('Using Policy Start Date:', policyStartDateVal);
+ } else {
+ toastr.warning('Policy start date or Date of Commencement is empty. Please fill in the date field.', "WARNING.. !");
+ console.warn('Both policy start dates are missing or invalid');
+ $(input).val('');
+ return; // stop further execution
+ }
+
+ // let policyStartDateInput = (lead_type == 3) ? $('#policy_start_date') : $('#source_policy_start_date');
+ console.log('Policy Start Date Input:', policyStartDateInput.val());
+
+ let policyStartDate = flatpickr.parseDate(policyStartDateInput.val(), "d/m/Y");
+ let incurredClaimDate = flatpickr.parseDate($("#incurred_claim_date_" + increment).val(), "d/m/Y");
+
+ console.log('Parsed Policy Start Date:', policyStartDate);
+ console.log('Parsed Incurred Claim Date:', incurredClaimDate);
if (policyStartDate && incurredClaimDate) {
- var timeDiff = Math.abs(policyStartDate - incurredClaimDate); // Time difference in milliseconds
- console.log('timeDiff', timeDiff);
- var daysDiff = Math.ceil(timeDiff / (1000 * 60 * 60 * 24) + 1); // Convert to days and add 1
- console.log('daysDiff', daysDiff);
- $("#policy_run_days_" + increment).val(daysDiff); // Set value in the policy_run_days_ input
+ let timeDiff = Math.abs(incurredClaimDate - policyStartDate);
+ console.log('Time Difference (ms):', timeDiff);
+
+ let daysDiff = Math.ceil(timeDiff / (1000 * 60 * 60 * 24) + 1);
+ console.log('Policy Run Days:', daysDiff);
+
+ $('#policy_run_days_' + increment).val(daysDiff);
}
- }
- function incurredClaimSum(input) {
-
- let increment = input.id.split('_').pop(); // Extract the increment part
- console.log('increment', increment);
-
- // Retrieve and convert the values to numbers, fallback to 0 if empty or invalid
let paid_claims = Number($('#paid_claims_' + increment).val()) || 0;
- console.log('paid_claims', paid_claims);
-
let outstanding_claims = Number($('#outstanding_claims_' + increment).val()) || 0;
- console.log('outstanding_claims', outstanding_claims);
+ console.log('Paid Claims:', paid_claims);
+ console.log('Outstanding Claims:', outstanding_claims);
- // Calculate the incurred claim
let incurred_claims = paid_claims + outstanding_claims;
- console.log('incurred_claims', incurred_claims);
-
- // Set the calculated value
+ console.log('Incurred Claims:', incurred_claims);
$('#incurred_claims_' + increment).val(incurred_claims);
- // ------------------------------------------------------------------------------------------
-
let policy_run_days = Number($('#policy_run_days_' + increment).val()) || 0;
- console.log('policy_run_days', policy_run_days);
- console.log('incurred claims ' + incurred_claims);
- // Prevent division by zero in annualised claims calculation
- let annualised_claims = policy_run_days > 0 ? incurred_claims / policy_run_days * 365 : 0;
- let annualised_claims_roundoff = Math.round(annualised_claims);
- console.log('annualised_claims', annualised_claims_roundoff);
+ console.log('Policy Run Days (Final):', policy_run_days);
+ let annualised_claims = policy_run_days > 0 ? (incurred_claims / policy_run_days) * 365 : 0;
+ let annualised_claims_roundoff = Math.round(annualised_claims);
+ console.log('Annualised Claims:', annualised_claims);
+ console.log('Annualised Claims (Rounded):', annualised_claims_roundoff);
$('#annualised_claims_' + increment).val(annualised_claims_roundoff);
- // ------------------------------------------------------------------------------------------
-
- // Prevent division by zero in incurred claim ratio calculation
let premium_as_on_date = Number($('#premium_date_' + increment).val()) || 0;
+ console.log('Premium as on Date:', premium_as_on_date);
+
let incurred_claim_ratio = (annualised_claims > 0 && premium_as_on_date > 0)
? (annualised_claims / premium_as_on_date)
: 0;
-
- let incurred_claim_ratio_roundoff = isFinite(incurred_claim_ratio)
- ? Math.round(incurred_claim_ratio)
- : 0;
-
- console.log('incurred_claim_ratio', incurred_claim_ratio_roundoff);
-
+ let incurred_claim_ratio_roundoff = isFinite(incurred_claim_ratio) ? Math.round(incurred_claim_ratio) : 0;
+ console.log('Incurred Claim Ratio:', incurred_claim_ratio);
+ console.log('Incurred Claim Ratio (Rounded):', incurred_claim_ratio_roundoff);
$('#incurred_claims_ratio_' + increment).val(incurred_claim_ratio_roundoff);
- // ------------------------------------------------------------------------------------------
+ let earned_premium = premium_as_on_date > 0 ? (premium_as_on_date / 365) * 364 : 0;
+ let earned_premium_roundoff = Math.round(earned_premium);
+ console.log('Earned Premium:', earned_premium);
+ console.log('Earned Premium (Rounded):', earned_premium_roundoff);
+ $('#earned_premium_' + increment).val(earned_premium_roundoff);
- let earnedPremium = parseFloat($('#earned_premium_' + increment).val()) || 0;
- console.log('earnedPremium:', earnedPremium);
-
- // Prevent division by zero
- let earnedClaimsRatio = earnedPremium > 0 ? annualised_claims / earnedPremium : 0;
-
- // Round to nearest integer
+ let earnedClaimsRatio = earned_premium > 0 ? annualised_claims / earned_premium : 0;
let earnedClaimsRatioRounded = Math.round(earnedClaimsRatio);
- console.log('earnedClaimsRatio:', earnedClaimsRatio);
-
- // Set the value to the corresponding input
+ console.log('Earned Claims Ratio:', earnedClaimsRatio);
+ console.log('Earned Claims Ratio (Rounded):', earnedClaimsRatioRounded);
$('#earned_claims_ratio_' + increment).val(earnedClaimsRatioRounded);
+ console.log('--- End of calculatePolicyMetrics ---\n');
}
- function earnedPremiumCalc(input) {
-
- let increment = input.id.split('_').pop(); // Extract the increment part
- console.log('increment', increment);
-
- let premium_as_on_date = Number($('#premium_date_' + increment).val()) || 0;
-
- // Retrieve and convert the values to numbers, fallback to 0 if empty or invalid
- let premium_at_inception = Number($('#premium_at_inception_' + increment).val()) || 0;
- console.log('premium_at_inception', premium_at_inception);
-
- let policy_run_days = Number($('#policy_run_days_' + increment).val()) || 0;
- console.log('policy_run_days', policy_run_days);
-
- // Prevent division by zero and calculate earned premium
- let earned_premium = premium_as_on_date > 0 ? (premium_as_on_date / 365) * 364 : 0;
- console.log('earned_premium', earned_premium);
- let earned_premium_roundoff = Math.round(earned_premium);
- // Set the calculated value with two decimal places
- $('#earned_premium_' + increment).val(earned_premium_roundoff);
- }
$(document).on("input", "#incept_emp_count, #incept_dept_count, #renewal_emp_count, #renewal_dept_count, #exp_emp_count, #exp_dept_count", function() {
calculateTotalLives(this);
@@ -1680,6 +1852,23 @@
$("#source_policy_start_date").removeAttr("required");
$("#source_policy_end_date").removeAttr("required");
+ $('#source_policy_id').show();
+ $('#source_policy_start_date').show();
+ $('#source_policy_end_date').show();
+
+ $('#source_policy_id').closest('.form-group').show();
+ $('#source_policy_start_date').closest('.form-group').show();
+ $('#source_policy_end_date').closest('.form-group').show();
+
+ }else{
+
+ $('#source_policy_id').hide();
+ $('#source_policy_start_date').hide();
+ $('#source_policy_end_date').hide();
+
+ $('#source_policy_id').closest('.form-group').hide();
+ $('#source_policy_start_date').closest('.form-group').hide();
+ $('#source_policy_end_date').closest('.form-group').hide();
}
// $('.proposed_div').show().find('select, input').attr('required', 'required');
@@ -1732,6 +1921,7 @@
}
function updateRenewalFields(increment) {
+ console.log('updateRenewalFields function called');
$(".renewalCalculation input, .renewalCalculation select").each(function() {
let oldId = $(this).attr("id");
if (oldId) {
diff --git a/app/Views/leads_non_eb.php b/app/Views/leads_non_eb.php
index 50d28e46..e50b6c52 100644
--- a/app/Views/leads_non_eb.php
+++ b/app/Views/leads_non_eb.php
@@ -588,11 +588,15 @@
$("#source_policy_id").prop("required",false);
$("#source_policy_id").closest("div") .find("label .text-danger").remove();
+ $('#source_policy_id').closest('.form-group').hide();
} else if (value != 3) {
$("#source_policy_id").prop("required",true);
$("#source_policy_id").prop("required", true);
+ if(value == 2){
+ $("#source_policy_id").closest('.form-group').show();
+ }
// Check if the asterisk doesn't already exist, then add it
let $label = $("#source_policy_id")
@@ -669,9 +673,10 @@
if (value == 3) {
$("#source_policy_id").removeAttr("required");
- $("#source_policy_start_date").removeAttr("required");
- $("#source_policy_end_date").removeAttr("required");
+ $('#source_policy_id').closest('.form-group').hide();
+ }else if(value == 2){
+ $('#source_policy_id').closest('.form-group').show();
}
$('.proposed_div').show().find('select, input').attr('required', 'required');
diff --git a/app/Views/newClientModal.php b/app/Views/newClientModal.php
index 9a56eaa5..e310d0d3 100644
--- a/app/Views/newClientModal.php
+++ b/app/Views/newClientModal.php
@@ -241,10 +241,14 @@
}));
setTimeout(function(){
+
$('#client_branch_id').val(res.branch_id).change();
+ $('.loader').fadeOut();
+ $('.loader-mask').delay(350).fadeOut('slow');
+
}, 1000)
- }, 2000)
+ }, 3000)
}else{
diff --git a/app/Views/rfq/gmc.php b/app/Views/rfq/gmc.php
index 9700a144..876839d5 100644
--- a/app/Views/rfq/gmc.php
+++ b/app/Views/rfq/gmc.php
@@ -1,4 +1,6 @@
-
+
+
+