FIX_ISSUE : RV

This commit is contained in:
VENKATESHWARAN 2025-05-27 21:14:05 +05:30
parent 5e8adfc72d
commit e190a4d4e4
8 changed files with 115 additions and 42 deletions

View File

@ -332,7 +332,7 @@ $routes->group("/util", ["filter" => "authMVC"], function ($routes) {
$routes->get("send_manual_ecard/(:any)", "DashboardController::sendManualEcard/$1");
$routes->get("get_client_policy_list_for_remainder/(:any)", "EmployeeController::get_client_policy_list_for_remainder/$1");
$routes->get("get_client_branch_data/(:any)", "ClientController::get_client_branch_data/$1");
$routes->get("getLevelContects", "LeadsControllerg::getLevelContects");
$routes->get("getLevelContects", "LeadsController::getLevelContects");
$routes->get("get_emp_master_data_for_update/(:any)", "EmployeeController::get_emp_master_data_for_update/$1");
$routes->get("send_mail_for_individual_employee_ecard/(:any)", "EmployeeController::send_mail_for_individual_employee_ecard/$1");
$routes->post("update_emp_data", "EmployeeController::update_emp_data");
@ -524,6 +524,8 @@ $routes->group("employeeRest", ["filter" => "authJWT"], function ($routes) {
$routes->get("getEmployeeActiveOrInactivePolicy", "EmployeeRestController::getEmployeeActiveOrInactivePolicy");
$routes->get("getFEContent", "EmployeeRestController::getFEContent");
$routes->get("getAdvertisementImage", "EmployeeRestController::getAdvertisementImage");
$routes->get("getWellnessURL", "EmployeeRestController::getWellnessURL");
// $routes->post('postDataForTicket',"EmployeeRestController::postDataForTicket");
});
$routes->get("getEmployeeActiveOrInactivePolicy", "EmployeeRestController::getEmployeeActiveOrInactivePolicy");

View File

@ -687,6 +687,7 @@ class ClientController extends AdminController
$CD_Account_Number = $this->CDMasterModel
->where('client_id', $client_id)
->where('insurer_id', $insurer_id)
->where('is_active', 1)
->first();
// Prepare the array with data
$date = \DateTime::createFromFormat('d/m/Y', $record_date);
@ -2092,7 +2093,7 @@ class ClientController extends AdminController
->findAll();
$client_policy_list = $this->clientPolicyModel->getPolicyTypeForPolicyBinding($client_id);
$cd_data = $this->CDMasterModel->where('client_id', $client_id)->where('insurer_id', $insurer_id)->findAll();
$cd_data = $this->CDMasterModel->where('client_id', $client_id)->where('insurer_id', $insurer_id)->where('is_active', 1)->findAll();
// $client_policy_data['policy_end_date'] = date('d/m/Y', strtotime($client_policy_data['policy_end_date']));
$fromDate = new \DateTime($client_policy_data['policy_end_date']);
$fromDate->modify('+1 year');
@ -3882,6 +3883,7 @@ class ClientController extends AdminController
$cdmData = $this->CDMasterModel
->where('client_id', $client)
->where('insurer_id', $insurer)
->where('is_active', 1)
->findAll();
if ($cdmData) {
@ -4720,7 +4722,7 @@ class ClientController extends AdminController
// $EmpDataServiceController->importDeletionValidation(['file_id' => 304]); //for live
// $EmpDataServiceController->importSIEnhancementUpdateEndorsementID(['file_id' => 1199]); //for live
// $EmpDataServiceController->importSIEnhancementValidation(['file_id' => 1205]); //for live
$EmpDataServiceController->importInceptionUpdateTPAandUHID(['file_id' => 214]); //for live
// $EmpDataServiceController->importInceptionUpdateTPAandUHID(['file_id' => 214]); //for live
// $result = $this->employeePolicyModel->getDeletionEmployeeDataForExportExcel($batch_data);
// print_rr($result); die;

View File

@ -1100,7 +1100,7 @@ class EmployeeRestController extends AdminController
$keysToRemove = ["removable_keys"];
// Retrieve employee policy data by passing the employee primary key
$empPolicy = $this->employeeModel->getEmployeePolicy($id);
// dd($empPolicy);
// dd($empPolicy);
// Retrieve employee and dependents data by passing the employee code
$employeeData = $this->employeeModel->where('emp_code',$emp_code)
->where('client_id',$client_id)
@ -3323,4 +3323,22 @@ class EmployeeRestController extends AdminController
return $this->response->setJSON(['ticket_data' => $ticket_data])->setStatusCode(200);
}
public function getWellnessUrl()
{
$url = "https://aam.mohfw.gov.in/home/login";
if (!empty($url)) {
return $this->respond([
'status' => 'success',
'data' => $url
], 200);
} else {
return $this->respond([
'status' => 'failed',
'message' => 'No link found'
], 200);
}
}
}

View File

@ -724,6 +724,9 @@ class LeadsController extends BaseController
$data['mail_content'] = $this->transformMailContent($lead_data, $mail_content, $data['page_name']);
$data['subject'] = $this->transformMailContent($lead_data, $subject, $data['page_name']);
$data['placement_mail_content'] = $this->transformMailContent($lead_data, $mail_content, 'Placement');
$data['placement_subject'] = $this->transformMailContent($lead_data, $subject, 'Placement');
$data['multi_file_data'] = $this->leadFilesModel->where('lead_id', $id)->where('is_active', 1)->findAll() ?? null;
$installment_data['installments'] = $this->leadInstallmentPaymentDetails->where('lead_id', $id)->where('is_active', 1)->findAll() ?? null;
@ -1199,13 +1202,14 @@ class LeadsController extends BaseController
public function constructExcelToSaveTemp($lead_id, $type, $propsal_and_insurer = null)
{
$rfq_data = $this->RFQModel->getRFQTableDataWithLeadIDAndType($lead_id, $type);
$is_placement = false;
// dd($rfq_data, $lead_id, $type, $propsal_and_insurer);
// print_r($propsal_and_insurer); die;
if ($rfq_data['lead_type'] == 1) {
if ($rfq_data['policy_type_id'] == 2) {
if (in_array($rfq_data['policy_type_id'], [2,3,4,5])) {
$lead_data = [
'Insured' => $rfq_data['client_name'],
'Policy Type' => $this->leadType[$rfq_data['lead_type']] ?? "",
@ -1217,7 +1221,7 @@ class LeadsController extends BaseController
'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",
// 'Policy Run Days' => $rfq_data['policy_run_days'],
];
} else if ($rfq_data['policy_type_id'] == 1) {
} else if (in_array( $rfq_data['policy_type_id'], [1, 6, 7])) {
$lead_data = [
'Insured' => $rfq_data['client_name'],
'No of Employees at Inception' => $rfq_data['incept_emp_count'],
@ -1228,7 +1232,7 @@ class LeadsController extends BaseController
}
} else {
if ($rfq_data['policy_type_id'] == 2) {
if (in_array($rfq_data['policy_type_id'], [2,3,4,5])) {
$lead_data = [
'Insured' => $rfq_data['client_name'],
@ -1256,7 +1260,7 @@ class LeadsController extends BaseController
'Incurred Claims Ratio' => $rfq_data['incurred_claims_ratio'],
'Earned Claims Ratio' => $rfq_data['earned_claims_ratio'],
];
} else if ($rfq_data['policy_type_id'] == 1) {
} else if (in_array( $rfq_data['policy_type_id'], [1, 6, 7])) {
$lead_data = [
'Insured' => $rfq_data['client_name'],
'No of Employees at Renewal' => $rfq_data['renewal_emp_count'],
@ -1279,6 +1283,7 @@ class LeadsController extends BaseController
if ($propsal_and_insurer !== null) {
list($proposal_key, $insurer_key) = explode('-', $propsal_and_insurer, 2);
$data = $this->transformProposelData($data, $proposal_key, $insurer_key);
$is_placement = true;
}
} else if ($type == 1) {
$sheetName = 'RFQ';
@ -1382,7 +1387,11 @@ class LeadsController extends BaseController
],
]);
$subheader_count = array_sum(array_map(fn($header) => count($header['subHeaders']), $data['table_data']['headers']));
$subheader_count = $subheader_count - 2;
if($is_placement == false){
$subheader_count = $subheader_count - 2;
}
$headerCount = count($data['table_data']['headers']);
$lastColumn = Coordinate::stringFromColumnIndex($subheader_count);
// dd( $headerCount, $lastColumn);
@ -1428,7 +1437,11 @@ class LeadsController extends BaseController
$subHeaderCount = count($header['subHeaders']); // Number of subheaders for this parent header
// Set parent header value
$sheet->setCellValue("{$startColumn}{$rowNumber}", $header['parentHeader']);
if($is_placement == true && !in_array($header['parentHeader'] , ['Particulars', 'S.No.'])){
$sheet->setCellValue("{$startColumn}{$rowNumber}", "Terms");
}else{
$sheet->setCellValue("{$startColumn}{$rowNumber}", $header['parentHeader']);
}
$sheet->getStyle("{$startColumn}{$rowNumber}")->applyFromArray([
'font' => ['bold' => true],
'alignment' => [
@ -1448,7 +1461,7 @@ class LeadsController extends BaseController
// Add subheaders
foreach ($header['subHeaders'] as $subHeader) {
if($type == 2){
if($type == 2 && $is_placement == false){
$sheet->setCellValue("{$columnLetter}{$subHeaderRow}", $subHeader);
}
@ -1458,13 +1471,16 @@ class LeadsController extends BaseController
$sheet->getColumnDimension('A')->setWidth(10);
}
$sheet->getStyle("{$columnLetter}{$subHeaderRow}")->applyFromArray([
'font' => ['bold' => true],
'alignment' => [
'horizontal' => \PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER,
'vertical' => \PhpOffice\PhpSpreadsheet\Style\Alignment::VERTICAL_CENTER,
],
]);
if($is_placement == false){
$sheet->getStyle("{$columnLetter}{$subHeaderRow}")->applyFromArray([
'font' => ['bold' => true],
'alignment' => [
'horizontal' => \PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER,
'vertical' => \PhpOffice\PhpSpreadsheet\Style\Alignment::VERTICAL_CENTER,
],
]);
}
$columnLetter++; // Move to the next column for subheaders
}
}
@ -1485,7 +1501,12 @@ class LeadsController extends BaseController
$sheet->getRowDimension($rowNumber)->setRowHeight(25); // Header row height
$sheet->getRowDimension($subHeaderRow)->setRowHeight(20); // Subheader row height
$rowNumber = $subHeaderRow + 2;
if($is_placement == true){
$rowNumber = $subHeaderRow;
}else{
$rowNumber = $subHeaderRow + 2;
}
// dd($rowNumber);
$column_data = $data['table_data']['data'];
$serial_no = 1;
$maxColumnWidths = [];
@ -1521,7 +1542,7 @@ class LeadsController extends BaseController
],
]);
//premium data
if ($type == 2) {
$rowNumber += 2;
@ -1558,9 +1579,14 @@ class LeadsController extends BaseController
$rowNumber++;
}
$prevColumn3 = $this->getPreviousColumn($columnLetter, 2);
if($is_placement == true){
$prevColumn3 = $this->getPreviousColumn($columnLetter);
}else{
$prevColumn3 = $this->getPreviousColumn($columnLetter, 2);
}
$premiumRange = "B" . ($rowNumber - 4) . ":" . "{$prevColumn3}" . ($rowNumber - 1);
// dd($premiumRange);
$sheet->getStyle($premiumRange)->applyFromArray([
'borders' => [
'allBorders' => [
@ -1575,7 +1601,11 @@ class LeadsController extends BaseController
//set imgage and align the row and column
// Kint::dump($columnLetter);
if($type == 2){
$columnLetter_img = $this->getPreviousColumn($columnLetter, 2);
if($is_placement == true){
$columnLetter_img = $this->getPreviousColumn($columnLetter);
}else{
$columnLetter_img = $this->getPreviousColumn($columnLetter, 2);
}
}else{
$columnLetter_img = $this->getPreviousColumn($columnLetter);
}
@ -1667,7 +1697,7 @@ class LeadsController extends BaseController
// Set filename
$string = ($type == 2) ? 'QCR' : 'RFQ';
$string = ($type == 2) ? ( $is_placement == true ? 'Placement' : 'QCR') : 'RFQ';
$current_year = date('Y');
$next_year = $current_year + 1;
$policy_year = "$current_year-$next_year";
@ -2490,7 +2520,7 @@ class LeadsController extends BaseController
$headerData[] = [
'parentHeader' => $header['parentHeader'],
'subHeaders' => [
'Quote Asked', // Default value
// 'Quote Asked', // Default value
$subHeader // Matched insurer key
]
];
@ -2526,15 +2556,16 @@ class LeadsController extends BaseController
];
}
// Include Proposal with Quote Asked by default
if ($item['parentth'] === $proposel && $item['subth'] === "Quote Asked") {
$result['data'][] = [
"parentth" => $item['parentth'],
"subth" => $item['subth'],
"value" => $item['value'],
"input_value" => $item['input_value']
];
}
// Include Proposal with Quote Asked by default
/* For proposel do not remove it */
// if ($item['parentth'] === $proposel && $item['subth'] === "Quote Asked") {
// $result['data'][] = [
// "parentth" => $item['parentth'],
// "subth" => $item['subth'],
// "value" => $item['value'],
// "input_value" => $item['input_value']
// ];
// }
// Example of including matching specific proposals and insurers
if ($item['parentth'] === $proposel && $item['subth'] === $insurer) {
@ -2555,7 +2586,7 @@ class LeadsController extends BaseController
foreach ($data['premium_data']['data'] as $key => $value) {
if ($key === $proposel) {
$premiumData[$key]['Quote Asked'] = $value['Quote Asked'];
// $premiumData[$key]['Quote Asked'] = $value['Quote Asked'];
$premiumData[$key][$insurer] = $value[$insurer];
}
}

View File

@ -180,6 +180,7 @@ class ClientPolicyModel extends Model
->join('cd_master', 'cd_master.insurer_id = insurers.id AND cd_master.client_id = client_policy.client_id')
->where('client_policy.client_id', $id)
->where('cd_master.id = client_policy.cd_ac_pk')
->where('cd_master.is_active', 1)
->groupBy('client_policy.insurer_id')
->groupBy('client_policy.client_id', $id) // Group by insurer_id
->get()

View File

@ -874,6 +874,7 @@ if (isset($selected_lead_type)) {
let lead_type = data.lead_type || null;
waitForDropdownValue('#client_id', data.client_id || '', () => {
if (lead_type == 3) {
// Add "+ Add Client" option if not already present
if ($('#client_id option[value="add_client"]').length === 0) {
@ -888,7 +889,12 @@ if (isset($selected_lead_type)) {
$("#source_policy_id").closest("div").find("label .text-danger").remove();
} else {
$("#source_policy_id").prop("required", true);
if(lead_type == 2){
$("#source_policy_id").prop("required", true);
}else{
$("#source_policy_id").prop("required", false);
}
// Add asterisk if not present
let $label = $("#source_policy_id").closest("div").find("label");

View File

@ -588,7 +588,7 @@
<div class="form-group col-md-12">
<label for="subject">Subject</label>
<input type="text" class="form-control" id="placement_subject" name="placement_subject" value="<?= isset($subject) ? $subject : " " ?>" placeholder="Enter Subject">
<input type="text" class="form-control" id="placement_subject" name="placement_subject" value="<?= isset($placement_subject) ? $placement_subject : " " ?>" placeholder="Enter Subject">
</div>
</div>
@ -596,7 +596,7 @@
<div class="form-row">
<div class="form-group col-md-12">
<label for="mail_content">Mail Content</label>
<textarea id="placement_mail_content" class="form-control" name="placement_mail_content" rows="3"><?= isset($mail_content) ? $mail_content : " " ?></textarea>
<textarea id="placement_mail_content" class="form-control" name="placement_mail_content" rows="3"><?= isset($placement_mail_content) ? $placement_mail_content : " " ?></textarea>
</div>
</div>
@ -861,12 +861,25 @@
<script>
$(document).ready(function () {
setInterval(function () {
submitData(1);
}, 20000);
console.log("Document ready");
let lead_status = '<?= isset($lead_data['status']) ? $lead_data['status'] : '' ?>';
console.log('Lead status retrieved:', lead_status);
if (lead_status != "won") {
console.log("Lead status is not 'won', setting interval for submitData");
setInterval(function () {
console.log("Calling submitData(1) at 20-second interval");
submitData(1);
}, 20000);
} else {
console.log("Lead status is 'won', submitData will not be called");
}
});
const openDialogBtn = document.getElementById('openDialogBtn');
const closeDialogBtn = document.getElementById('closeDialogBtn');

View File

@ -523,7 +523,7 @@
<div class="form-group col-md-12">
<label for="subject">Subject</label>
<input type="text" class="form-control" id="placement_subject" name="placement_subject" value="<?= isset($subject) ? $subject : " " ?>" placeholder="Enter Subject">
<input type="text" class="form-control" id="placement_subject" name="placement_subject" value="<?= isset($placement_subject) ? $placement_subject : " " ?>" placeholder="Enter Subject">
</div>
</div>
@ -531,7 +531,7 @@
<div class="form-row">
<div class="form-group col-md-12">
<label for="mail_content">Mail Content</label>
<textarea id="placement_mail_content" class="form-control" name="placement_mail_content" rows="3"><?= isset($mail_content) ? $mail_content : " " ?></textarea>
<textarea id="placement_mail_content" class="form-control" name="placement_mail_content" rows="3"><?= isset($placement_mail_content) ? $placement_mail_content : " " ?></textarea>
</div>
</div>