diff --git a/app/Controllers/LeadsController.php b/app/Controllers/LeadsController.php index 8ecd1e50..d3bc9b8b 100644 --- a/app/Controllers/LeadsController.php +++ b/app/Controllers/LeadsController.php @@ -100,7 +100,9 @@ class LeadsController extends BaseController $this->issuer = [1 => 'JIBS', 2 => 'Nhance']; $this->clientType = [1 => 'Group', 2 => 'Individual']; $this->leadType = [1 => 'Fresh', 2 => 'Renewal', 3 => 'Roll Over']; - $this->buisnessType = [1 => 'Industrial', 2 => 'Non Industrial']; + $data = $this->kycEntityTypeModel->where('is_active', 1)->findAll(); + $this->buisnessType = array_column($data, 'name', 'id'); + // $this->buisnessType = [1 => 'Public Sector', 2 => 'Private Sector',3=> 'Trust',4 => 'Proprietorship',5 => 'Partnership',6 => 'Private',7 => 'Individual']; $this->leadsStatus = [ 'queued' => 'In-Queued', 'qcr_sent' => 'QCR sent', @@ -730,9 +732,11 @@ class LeadsController extends BaseController $data['product'] = $this->leadsModel->select("policy_type.policy_type")->join('policy_type', 'leads.policy_type_id = policy_type.id')->where('leads.id', $id)->first()['policy_type']; // $data['lead_register_data'] = json_decode($data['lead_data']['custom_fields']); // dd($data['lead_register_data']); + // $data['entity_type'] = $this->kycEntityTypeModel->where('is_active', 1)->findAll(); + $data['buisness_type'] = $this->buisnessType; + // dd($data); $data['client_type'] = $this->clientType; - $data['buisness_type'] = $this->buisnessType; $this->loadLayout('view_rfq_non_eb', $data); } } @@ -2076,6 +2080,7 @@ class LeadsController extends BaseController ->where('leads.id', $lead_id) ->first(); + // log_message('error', 'Lead Data' . json_encode($lead_data)); // print_r($lead_data ); die; $cc_mails = []; @@ -2236,9 +2241,9 @@ class LeadsController extends BaseController foreach ($recipient_data as $recipient) { $message = $original_message; - $message = str_replace("{{RECIPIENT_NAME}}", $recipient['name'], $message); - $message = str_replace("{{CLIENT_NAME}}", $lead_data['client_name'], $message); - $message = str_replace("{{POLICY_LONG_NAME}}", $lead_data['long_name'], $message); + $message = str_replace("{{RECIPIENT_NAME}}", $recipient['name'] != "" ? $recipient['name'] :" ", $message); + $message = str_replace("{{CLIENT_NAME}}", $lead_data['client_name'] != "" ? $lead_data['client_name'] : "", $message); + $message = str_replace("{{POLICY_LONG_NAME}}",$lead_data['long_name'] != ""? $lead_data['long_name'] : "", $message); $message = str_replace("{{POLICY_START_DATE}}", change_date_format($lead_data['policy_start_date'], 'Y-m-d', 'd-m-Y'), $message); $message = str_replace("{{DURATION}}", calculate_days_bw_dates($lead_data['policy_end_date'] ?? "", $lead_data['policy_start_date'] ?? "")->days, $message) ?? '--'; @@ -2809,7 +2814,7 @@ class LeadsController extends BaseController $value = $cellData['display_content'] ?? ''; // Skip unwanted keys - if (in_array($parentth, ['SNO', 'Particulars', 'Action']) || $subth === 'Quote Asked') { + if (in_array($parentth, ['SNO', 'Particulars', 'Action']) || $subth === 'Sum Insured' || $subth === 'Fidelity Limit') { continue; } @@ -3217,11 +3222,11 @@ class LeadsController extends BaseController $sheet->getColumnDimension('B')->setWidth($maxWidthA * 1.2); $sheet->getColumnDimension('C')->setWidth($maxWidthB * 1.2); - $rowNumber += 2; + $rowNumber += 1; //Policy Registration if (!empty($policy_registration_data)) { foreach ($policy_registration_data as $key => $value) { - + // kint::dump($value); $startRow = $rowNumber; // Track where the block starts // Title Row @@ -3308,6 +3313,24 @@ class LeadsController extends BaseController $rowNumber++; } + if (isset($value['policyDetails']) && !empty($value['policyDetails'])) { + // Type of Business + $sheet->mergeCells("A{$rowNumber}:B{$rowNumber}"); + $sheet->setCellValue("A{$rowNumber}", "Terrorism"); + $sheet->setCellValue("C{$rowNumber}", ucfirst($value['policyDetails']['terrorism'] ?? 'No')); + + $sheet->getStyle("A{$rowNumber}")->applyFromArray([ + 'font' => ['bold' => true], + 'alignment' => [ + 'horizontal' => \PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER, + 'vertical' => \PhpOffice\PhpSpreadsheet\Style\Alignment::VERTICAL_CENTER, + ], + ]); + + $rowNumber++; + + } + $endRow = $rowNumber - 1; // Block ends at previous row // Apply border to the whole block @@ -3320,8 +3343,9 @@ class LeadsController extends BaseController ], ]); - $rowNumber += 2; // Add space before the next block + $rowNumber += 1; // Add space before the next block } + // die(); } //Table Data @@ -3425,6 +3449,18 @@ class LeadsController extends BaseController } } + // For the subheader row, merge B and C and set the value + $sheet->setCellValue("B{$subHeaderRow}", "Sum Insured"); + $sheet->mergeCells("B{$subHeaderRow}:C{$subHeaderRow}"); + $sheet->getStyle("B{$subHeaderRow}:C{$subHeaderRow}")->applyFromArray([ + 'font' => ['bold' => true], + 'alignment' => [ + 'horizontal' => \PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER, + 'vertical' => \PhpOffice\PhpSpreadsheet\Style\Alignment::VERTICAL_CENTER, + ], + ]); + + // Apply border to the header range $prevColumn4 = $this->getPreviousColumn($columnLetter); $headerRange = "A{$rowNumber}:" . "{$prevColumn4}" . "{$subHeaderRow}"; @@ -3441,7 +3477,9 @@ class LeadsController extends BaseController $sheet->getRowDimension($rowNumber)->setRowHeight(25); // Header row height $sheet->getRowDimension($subHeaderRow)->setRowHeight(20); // Subheader row height - $rowNumber = $subHeaderRow + 2; + // $rowNumber = $subHeaderRow + 2; + $rowNumber = $subHeaderRow + 1; + $column_data = $data['table_data']['data']; // dd($column_data); $serial_no = 1; @@ -3729,7 +3767,7 @@ class LeadsController extends BaseController $row['data'] = array_filter( $row['data'], function ($item) { - return in_array($item['subth'], ['Quote asked', '-']); + return in_array($item['subth'], ['Sum Insured', '-',"Liability Limit"]); } ); @@ -3818,7 +3856,7 @@ class LeadsController extends BaseController if ($subHeader === $insurer) { $headerData[] = [ 'parentHeader' => $header['parentHeader'], - 'subHeaders' => ['Quote asked', $subHeader] + 'subHeaders' => ['Sum Insured', $subHeader] ]; break 2; // Exit both loops after match is found } @@ -3851,8 +3889,8 @@ class LeadsController extends BaseController $filteredData[] = $item; } - // Include Proposal with Quote Asked - if ($item['parentth'] === $proposal && $item['subth'] === "Quote asked") { + // Include Proposal with Sum Insured + if ($item['parentth'] === $proposal && ($item['subth'] === "Sum Insured" || $item['subth'] === "Liability Limit")) { $filteredData[] = $item; } diff --git a/app/Views/leads_form.php b/app/Views/leads_form.php index fc2ee0f0..265d1f32 100644 --- a/app/Views/leads_form.php +++ b/app/Views/leads_form.php @@ -884,7 +884,7 @@ " . $value['policy_type'] . ""; } } diff --git a/app/Views/policyRegisterModel.php b/app/Views/policyRegisterModel.php index 88b8f14c..fc5170e3 100644 --- a/app/Views/policyRegisterModel.php +++ b/app/Views/policyRegisterModel.php @@ -217,11 +217,11 @@