diff --git a/app/Controllers/LeadsController.php b/app/Controllers/LeadsController.php index ce2dc8f0..9eb1da12 100644 --- a/app/Controllers/LeadsController.php +++ b/app/Controllers/LeadsController.php @@ -571,6 +571,70 @@ class LeadsController extends BaseController } + // $leadFormType = (int) ($postData['lead_form_type'] ?? 1); + // $postedPolicyTypeIds = array_map('intval', (array) ($postData['policy_type_id'] ?? [])); + // $isEbRenewalGpaClaimHistory = $leadFormType === 1 + // && (int) ($postData['lead_type'] ?? 0) === 2 + // && in_array(1, $postedPolicyTypeIds, true) + // && (int) ($postData['claim_history'] ?? 0) === 1; + + // if ($isEbRenewalGpaClaimHistory) { + // $rules['first_year.*'] = [ + // 'rules' => 'required|regex_match[/^\d{4}-\d{4}$/]', + // 'errors' => [ + // 'required' => 'Claim Year is required for all entries.', + // 'regex_match' => 'Year must be in format YYYY-YYYY.', + // ], + // ]; + // $rules['emp_id.*'] = [ + // 'rules' => 'required', + // 'errors' => ['required' => 'Employee ID is required in Claim History.'], + // ]; + // $rules['emp_name.*'] = [ + // 'rules' => 'required', + // 'errors' => ['required' => 'Employee Name is required in Claim History.'], + // ]; + // $rules['gender.*'] = [ + // 'rules' => 'required|in_list[Female,Male]', + // 'errors' => [ + // 'required' => 'Gender is required in Claim History.', + // 'in_list' => 'Gender must be Female or Male.', + // ], + // ]; + // $rules['designation.*'] = [ + // 'rules' => 'required', + // 'errors' => ['required' => 'Designation is required in Claim History.'], + // ]; + // $rules['sum_insured.*'] = [ + // 'rules' => 'required|numeric', + // 'errors' => [ + // 'required' => 'Sum Insured is required in Claim History.', + // 'numeric' => 'Sum Insured must be a number.', + // ], + // ]; + // $rules['first_death_date.*'] = [ + // 'rules' => 'required|regex_match[/^[0-9]{2}-([0-9]{2}|[A-Za-z]{3})-[0-9]{4}$/]', + // 'errors' => [ + // 'required' => 'Date of Death is required.', + // 'regex_match' => 'Date of Death must be in DD-MM-YYYY or DD-MMM-YYYY format.', + // ], + // ]; + // $rules['first_cause_of_death.*'] = [ + // 'rules' => 'required|in_list[natural_death,suicide,accident,cardiac_arrest,septic_shock,heart_attack]', + // 'errors' => [ + // 'required' => 'Nature/Cause Of Death is required.', + // 'in_list' => 'Nature/Cause Of Death is invalid.', + // ], + // ]; + // $rules['first_claim_amount.*'] = [ + // 'rules' => 'required|numeric', + // 'errors' => [ + // 'required' => 'Claim/Settled Amount is required.', + // 'numeric' => 'Claim/Settled Amount must be a number.', + // ], + // ]; + // } + // 1. MANUALLY VALIDATE FILES BEFORE PROCESSING // $allFiles = $this->request->getFiles(); // foreach ($allFiles as $inputName => $files) { @@ -2140,6 +2204,8 @@ class LeadsController extends BaseController { helper('excel_util_helper'); $rfq_data = $this->RFQModel->getRFQTableDataWithLeadIDAndType($lead_id, $type); + $claim_history = $rfq_data['claim_history'] ?? 0; + $is_placement = false; $length = 0; @@ -2176,7 +2242,7 @@ class LeadsController extends BaseController 'No of Dependents' => $rfq_data['incept_dept_count'], 'Total Lives' => $rfq_data['incept_no_of_lives'], - 'Period of Insurance ' => ! empty($rfq_data['policy_start_date']) && ! empty($rfq_data['policy_end_date']) ? date('d-m-Y', strtotime($rfq_data['policy_start_date'])) . ' to ' . date('d-m-Y', strtotime($rfq_data['policy_end_date'])) : "To be decided", + // 'Period of Insurance ' => ! empty($rfq_data['policy_start_date']) && ! empty($rfq_data['policy_end_date']) ? date('d-m-Y', strtotime($rfq_data['policy_start_date'])) . ' to ' . date('d-m-Y', strtotime($rfq_data['policy_end_date'])) : "To be decided", // 'Insurer' => $rfq_data['insurer_name'] ?? " - ", // 'TPA' => $rfq_data['tpa_name'] ?? " - ", // 'Policy Run Days' => $rfq_data['policy_run_days'], @@ -2186,7 +2252,7 @@ class LeadsController extends BaseController 'Insured' => $rfq_data['client_name'], 'No of Employees at Inception' => $rfq_data['incept_emp_count'], // 'Total Sum Insured at Inception ' => $rfq_data['total_si_at_incept'], - 'Policy Period' => ! empty($rfq_data['policy_start_date']) && ! empty($rfq_data['policy_end_date']) ? date('d-m-Y', strtotime($rfq_data['policy_start_date'])) . ' to ' . date('d-m-Y', strtotime($rfq_data['policy_end_date'])) : "To be decided", + // 'Policy Period' => ! empty($rfq_data['policy_start_date']) && ! empty($rfq_data['policy_end_date']) ? date('d-m-Y', strtotime($rfq_data['policy_start_date'])) . ' to ' . date('d-m-Y', strtotime($rfq_data['policy_end_date'])) : "To be decided", // 'Insurer' => $rfq_data['insurer_name'] ?? " - ", // 'TPA' => $rfq_data['tpa_name'] ?? " - ", 'Policy Type' => $this->leadType[$rfq_data['lead_type']] ?? "", @@ -2279,7 +2345,7 @@ class LeadsController extends BaseController 'Existing Insurer' => $rfq_data['insurer_name'], 'No of Employees at Renewal' => $rfq_data['renewal_emp_count'], 'Total Sum Insured at Renewal' => $rfq_data['total_si_at_renewal'], - 'Claims Experience for last 3 years' => "Mentioned in Claims sheet", + 'Claims Experience for last 3 years' => $claim_history == "1" ? "Mentioned in Claims sheet" : "Nil", // 'Insurer' => $rfq_data['insurer_name'] ?? " - ", // 'TPA' => $rfq_data['tpa_name'] ?? " - ", // 'Total Lives at Inception' => $rfq_data['total_lives_at_incept'], @@ -2796,7 +2862,7 @@ class LeadsController extends BaseController } //claim history new sheet; - if (! empty($rfq_data['fin_years_claims'])) { + if ($claim_history == 1 && !empty($rfq_data['fin_years_claims'])) { $claim_details = json_decode($rfq_data['fin_years_claims'], true) ?? []; diff --git a/app/Views/leads_form.php b/app/Views/leads_form.php index 939d4b57..ddd850a6 100644 --- a/app/Views/leads_form.php +++ b/app/Views/leads_form.php @@ -744,7 +744,7 @@ } - leadTypeBsedHideAndShow(lead_type) + leadTypeBsedHideAndShow(lead_type, false, policy_type_id) if (lead_type == 1) { @@ -851,6 +851,7 @@ .contact_person_email); $('#policy_type_id_1').val(res.data.policy_type_id) .select2(); + togglePolicyDateFields(lead_type, res.data.policy_type_id); $('.loader').fadeOut(); $('.loader-mask').delay(350).fadeOut('slow'); }, 1000) @@ -1093,6 +1094,7 @@ var lead_type = $('#lead_type').val(); console.log("lead_type", lead_type); + togglePolicyDateFields(lead_type); let url = '= base_url('util/getPolicyTypeFields/') ?>'; @@ -1281,7 +1283,7 @@ -