MERGE_PREMIUM_CALC_API
This commit is contained in:
commit
674bfbff1f
@ -216,6 +216,8 @@ $routes->group("/util", ["filter" => "authMVC"], function($routes){
|
|||||||
$routes->get("view-success-emp-list", "EmployeeController::viewUploadedEmployeeList/$1");
|
$routes->get("view-success-emp-list", "EmployeeController::viewUploadedEmployeeList/$1");
|
||||||
$routes->get("fetch-policy-for-policy-type", "ClientController::fetchPolicyDataForPolicyType/$1");
|
$routes->get("fetch-policy-for-policy-type", "ClientController::fetchPolicyDataForPolicyType/$1");
|
||||||
$routes->get("fetch-emp-count/(:any)", "EmployeeController::getEmpCount/$1");
|
$routes->get("fetch-emp-count/(:any)", "EmployeeController::getEmpCount/$1");
|
||||||
|
$routes->get("init-Emp-onboard/(:any)", "EmployeeController::initiateManualEmployeesOnboardProcess/$1");
|
||||||
|
$routes->get("full-excel-error-file/(:any)", "EmployeeController::downloadFullExcelErrorFile/$1");
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@ -610,7 +610,23 @@ class ClientController extends AdminController
|
|||||||
$policy_terms = $this->clientPolicyModel->where('id', $this->request->getPost('base_policy'))->first();
|
$policy_terms = $this->clientPolicyModel->where('id', $this->request->getPost('base_policy'))->first();
|
||||||
|
|
||||||
if ( $this->request->getPost('is_addon') == 2 || $this->request->getPost('is_addon') == 3) {
|
if ( $this->request->getPost('is_addon') == 2 || $this->request->getPost('is_addon') == 3) {
|
||||||
$data['policy_terms'] = $policy_terms['policy_terms'];
|
|
||||||
|
if ($this->request->getPost('is_addon') == 3) {
|
||||||
|
$policyTerm = $policy_terms['policy_terms'];
|
||||||
|
$decoded_policyTerm = json_decode($policyTerm, true);
|
||||||
|
$decoded_policyTerm['family_floater'] =0;
|
||||||
|
$decoded_policyTerm['family_floaters']['self'] =0;
|
||||||
|
$decoded_policyTerm['family_floaters']['spouse'] =0;
|
||||||
|
$decoded_policyTerm['family_floaters']['childrens'] =0;
|
||||||
|
$decoded_policyTerm['family_floaters']['parents'] =0;
|
||||||
|
$decoded_policyTerm['family_floaters']['parents-in-law'] =0;
|
||||||
|
$decoded_policyTerm['family_floaters']['either-parents-pil'] =0;
|
||||||
|
|
||||||
|
$data['policy_terms'] = json_encode($decoded_policyTerm);
|
||||||
|
}else{
|
||||||
|
$data['policy_terms'] = $policy_terms['policy_terms'];
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -679,7 +695,23 @@ class ClientController extends AdminController
|
|||||||
$policy_terms = $this->clientPolicyModel->where('id', $this->request->getPost('base_policy'))->first();
|
$policy_terms = $this->clientPolicyModel->where('id', $this->request->getPost('base_policy'))->first();
|
||||||
|
|
||||||
if ( $this->request->getPost('is_addon') == 2 || $this->request->getPost('is_addon') == 3) {
|
if ( $this->request->getPost('is_addon') == 2 || $this->request->getPost('is_addon') == 3) {
|
||||||
$data['policy_terms'] = $policy_terms['policy_terms'];
|
if ($this->request->getPost('is_addon') == 3) {
|
||||||
|
$policyTerm = $policy_terms['policy_terms'];
|
||||||
|
$decoded_policyTerm = json_decode($policyTerm, true);
|
||||||
|
$decoded_policyTerm['family_floater'] =0;
|
||||||
|
$decoded_policyTerm['family_floaters']['self'] =0;
|
||||||
|
$decoded_policyTerm['family_floaters']['spouse'] =0;
|
||||||
|
$decoded_policyTerm['family_floaters']['childrens'] =0;
|
||||||
|
$decoded_policyTerm['family_floaters']['parents'] =0;
|
||||||
|
$decoded_policyTerm['family_floaters']['parents-in-law'] =0;
|
||||||
|
$decoded_policyTerm['family_floaters']['either-parents-pil'] =0;
|
||||||
|
|
||||||
|
$data['policy_terms'] = json_encode($decoded_policyTerm);
|
||||||
|
} else {
|
||||||
|
$data['policy_terms'] = $policy_terms['policy_terms'];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// dd($data);
|
// dd($data);
|
||||||
@ -1259,6 +1291,7 @@ class ClientController extends AdminController
|
|||||||
->where("employees.emp_status",'active')
|
->where("employees.emp_status",'active')
|
||||||
->countAllResults();
|
->countAllResults();
|
||||||
|
|
||||||
|
$emp_count_by_policy = $this->employeePolicyModel->where('client_policy_id',$client_policy_id)->where('is_active',1)->countAllResults();
|
||||||
if($emp_count == 0){
|
if($emp_count == 0){
|
||||||
$emp_count = true;
|
$emp_count = true;
|
||||||
}else{
|
}else{
|
||||||
@ -1266,7 +1299,7 @@ class ClientController extends AdminController
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($record) {
|
if ($record) {
|
||||||
return $this->respond(['Status' => true,'code' => 200,'data' => $record['policy_terms'], 'count' => $emp_count, 'policy_name' => $policy_name], 200);
|
return $this->respond(['Status' => true,'code' => 200,'data' => $record['policy_terms'], 'count' => $emp_count, 'policy_name' => $policy_name,'policy_addon' => $record['is_addon'], 'emp_count_by_policy'=>$emp_count_by_policy], 200);
|
||||||
} else {
|
} else {
|
||||||
return $this->respond(['Status' => false,'code' => 200,'message' => 'Record not found.', 'count' => $emp_count, 'policy_name' => $policy_name], 200);
|
return $this->respond(['Status' => false,'code' => 200,'message' => 'Record not found.', 'count' => $emp_count, 'policy_name' => $policy_name], 200);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -490,7 +490,7 @@ class EmpDataServiceController extends BaseController
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
|
|
||||||
if ($value[15] === null) {
|
if ($value[15] === null || $value[16] === null) {
|
||||||
$missing_id[] = $key + 1;
|
$missing_id[] = $key + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -26,6 +26,8 @@ use App\Controllers\EmpDataServiceController;
|
|||||||
use CodeIgniter\API\ResponseTrait;
|
use CodeIgniter\API\ResponseTrait;
|
||||||
|
|
||||||
use PhpOffice\PhpSpreadsheet\Spreadsheet;
|
use PhpOffice\PhpSpreadsheet\Spreadsheet;
|
||||||
|
use PhpOffice\PhpSpreadsheet\IOFactory;
|
||||||
|
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
|
||||||
|
|
||||||
class EmployeeController extends AdminController
|
class EmployeeController extends AdminController
|
||||||
{
|
{
|
||||||
@ -248,6 +250,7 @@ class EmployeeController extends AdminController
|
|||||||
|
|
||||||
// Render views and capture output
|
// Render views and capture output
|
||||||
$result = $empServiceController->getExcelErrorData($file_id);
|
$result = $empServiceController->getExcelErrorData($file_id);
|
||||||
|
$result['file_id'] = $file_id;
|
||||||
|
|
||||||
// echo '<pre>';
|
// echo '<pre>';
|
||||||
// print_r($result); die;
|
// print_r($result); die;
|
||||||
@ -564,10 +567,21 @@ class EmployeeController extends AdminController
|
|||||||
// this funciton initiate Inception/adition/DA of employees data only form enrollment app when passing
|
// this funciton initiate Inception/adition/DA of employees data only form enrollment app when passing
|
||||||
// client_policy_id pull draft and enrolled status employees and proceed to calculatin and make entry in DB
|
// client_policy_id pull draft and enrolled status employees and proceed to calculatin and make entry in DB
|
||||||
public function initiateManualEmployeesOnboardProcess($client_policy_id)
|
public function initiateManualEmployeesOnboardProcess($client_policy_id)
|
||||||
{
|
{
|
||||||
$empServiceController = new EmployeeServiceController();
|
$client_data = $this->clientPolicyModel->select('clients.client_name as client_name, policies.name as policy_name')
|
||||||
$res = $empServiceController->employeesOnboardPreprocess(['client_policy_id' => $client_policy_id]);
|
->join('clients', 'clients.id = client_policy.client_id')
|
||||||
dd($res);
|
->join('policies', 'policies.id = client_policy.policy_id')
|
||||||
|
->where('client_policy.id', $client_policy_id)
|
||||||
|
->first();
|
||||||
|
|
||||||
|
$empServiceController = new EmployeeServiceController();
|
||||||
|
$res = $empServiceController->employeesOnboardPreprocess(['client_policy_id' => $client_policy_id]);
|
||||||
|
// dd($res);
|
||||||
|
|
||||||
|
$count = count($res);
|
||||||
|
$message = $count . ' Employees are Initiate Onboard Process againts Client '. $client_data['client_name'] . ' and the Policy is ' . $client_data['policy_name'] ;
|
||||||
|
session()->setFlashdata('success1', $message);
|
||||||
|
return redirect()->to(base_url('/employee/upload'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -665,9 +679,9 @@ class EmployeeController extends AdminController
|
|||||||
|
|
||||||
public function getEmpCount($id = null){
|
public function getEmpCount($id = null){
|
||||||
|
|
||||||
$data = $this->employeeModel->select('employees.id')
|
$data = $this->employeePolicyModel->select('employee_polices.id')
|
||||||
->join('clients', 'clients.id = employees.client_id')
|
->where('employee_polices.is_active', 1)
|
||||||
->where('employees.client_id', $id)
|
->where('employee_polices.client_policy_id', $id)
|
||||||
->findAll();
|
->findAll();
|
||||||
|
|
||||||
$emp_count = count($data);
|
$emp_count = count($data);
|
||||||
@ -683,5 +697,120 @@ class EmployeeController extends AdminController
|
|||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function downloadFullExcelErrorFile($file_id = 137, $rowIndex = 1, $colIndex = 1)
|
||||||
|
{
|
||||||
|
// Get file data from the database
|
||||||
|
$file_data = $this->fileModel->find($file_id);
|
||||||
|
|
||||||
|
$error = json_decode($file_data['reason']);
|
||||||
|
// echo '<pre>';
|
||||||
|
// print_r($error); die;
|
||||||
|
// dd($error);
|
||||||
|
|
||||||
|
// Check if the file exists
|
||||||
|
if (!$file_data) {
|
||||||
|
$error_message = "File not found";
|
||||||
|
$this->myLogger->logme('error', $error_message . ' for file id ' . $file_id);
|
||||||
|
return $error_message;
|
||||||
|
}
|
||||||
|
|
||||||
|
$fileName = $file_data['file_name'];
|
||||||
|
$filePath = WRITEPATH . '/uploads/excel/' . $fileName;
|
||||||
|
|
||||||
|
// Check if the file exists
|
||||||
|
if (!file_exists($filePath)) {
|
||||||
|
$error_message = "File not found";
|
||||||
|
$this->myLogger->logme('error', $error_message . ' for file id ' . $file_id);
|
||||||
|
return $error_message;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Load the Excel file
|
||||||
|
$spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load($filePath);
|
||||||
|
$sheet = $spreadsheet->getActiveSheet();
|
||||||
|
|
||||||
|
// echo '<pre>';
|
||||||
|
|
||||||
|
foreach ($error->error_data as $index => $error_data) {
|
||||||
|
|
||||||
|
$rowIndex = $index+1;
|
||||||
|
|
||||||
|
if( $error->error_type == 1 ){
|
||||||
|
|
||||||
|
foreach ($error_data as $key => $value) {
|
||||||
|
|
||||||
|
$colIndex = $value->col_idx+1;
|
||||||
|
|
||||||
|
$originalValue = $sheet->getCell([$colIndex, $rowIndex])->getValue();
|
||||||
|
|
||||||
|
$newValue = implode(', ',$value->error);
|
||||||
|
$val = $originalValue . ' ( ' . $newValue . ' )';
|
||||||
|
$sheet->setCellValue([$colIndex, $rowIndex], $val);
|
||||||
|
|
||||||
|
$style = [
|
||||||
|
'fill' => [
|
||||||
|
'fillType' => \PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID,
|
||||||
|
'startColor' => ['rgb' => 'ffad99'] // Red color
|
||||||
|
]
|
||||||
|
];
|
||||||
|
|
||||||
|
$sheet->getStyle([$colIndex, $rowIndex])->applyFromArray($style);
|
||||||
|
|
||||||
|
}
|
||||||
|
}else if( $error->error_type == 2){
|
||||||
|
|
||||||
|
|
||||||
|
foreach ($error_data as $key => $value) {
|
||||||
|
|
||||||
|
|
||||||
|
$originalValue = $sheet->getCell([1, $rowIndex])->getValue();
|
||||||
|
|
||||||
|
$newValue = implode(', ',$value->error);
|
||||||
|
$val = $originalValue . ' ( ' . $newValue . ' )';
|
||||||
|
$sheet->setCellValue([$colIndex, $rowIndex], $val);
|
||||||
|
|
||||||
|
$style = [
|
||||||
|
'fill' => [
|
||||||
|
'fillType' => \PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID,
|
||||||
|
'startColor' => ['rgb' => 'ffad99'] // Red color
|
||||||
|
]
|
||||||
|
];
|
||||||
|
$sheet->getStyle([$colIndex, $rowIndex])->applyFromArray($style);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Create a new filename for the modified Excel file
|
||||||
|
$newFileName = 'modified_' . $fileName;
|
||||||
|
|
||||||
|
// Save the modified Excel file to a new location
|
||||||
|
$newFilePath = WRITEPATH . '/uploads/excel/' . $newFileName;
|
||||||
|
$writer = new \PhpOffice\PhpSpreadsheet\Writer\Xlsx($spreadsheet);
|
||||||
|
$writer->save($newFilePath);
|
||||||
|
|
||||||
|
// Set headers to force download
|
||||||
|
$response = service('response');
|
||||||
|
$response->setHeader('Content-Type', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
|
||||||
|
$response->setHeader('Content-Disposition', 'attachment;filename="' . $newFileName . '"');
|
||||||
|
$response->setHeader('Cache-Control', 'max-age=0');
|
||||||
|
$response->setHeader('Content-Length', filesize($newFilePath));
|
||||||
|
$response->setBody(file_get_contents($newFilePath));
|
||||||
|
|
||||||
|
// Delete the temporary file
|
||||||
|
unlink($newFilePath);
|
||||||
|
|
||||||
|
// Return the response
|
||||||
|
return $response;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -170,16 +170,18 @@ class EmployeeRestController extends AdminController
|
|||||||
|
|
||||||
public function addEmployeeAndDependence()
|
public function addEmployeeAndDependence()
|
||||||
{
|
{
|
||||||
try {
|
// try {
|
||||||
$data = $this->request->getJSON();
|
$data = $this->request->getJSON();
|
||||||
|
|
||||||
if ($data) {
|
if ($data) {
|
||||||
|
|
||||||
$Count = 0;
|
$Count = 0;
|
||||||
foreach ($data as $item) {
|
foreach ($data as $item) {
|
||||||
if (isset($item->id)) {
|
if (isset($item->id)) {
|
||||||
//update old data
|
//update old data
|
||||||
$id = $item->id;
|
$id = $item->id;
|
||||||
$item->family_floater_key = $this->RelationshipMap($item->relationship);
|
$item->family_floater_key = $this->RelationshipMap($item->relationship);
|
||||||
|
$item->gender = $this->GenderMap($item->relationship , $item->emp_code);
|
||||||
$item->dob = $this->convertDateFormatYMD($item->dob);
|
$item->dob = $this->convertDateFormatYMD($item->dob);
|
||||||
$item->emp_status = 'Draft';
|
$item->emp_status = 'Draft';
|
||||||
$employee = $this->employeeModel->where('is_active', 1 )->update($id, (array)$item);
|
$employee = $this->employeeModel->where('is_active', 1 )->update($id, (array)$item);
|
||||||
@ -189,9 +191,10 @@ class EmployeeRestController extends AdminController
|
|||||||
}else{
|
}else{
|
||||||
//create new data
|
//create new data
|
||||||
$item->family_floater_key = $this->RelationshipMap($item->relationship);
|
$item->family_floater_key = $this->RelationshipMap($item->relationship);
|
||||||
|
$item->gender = $this->GenderMap($item->relationship , $item->emp_code);
|
||||||
$item->dob = $this->convertDateFormatYMD($item->dob);
|
$item->dob = $this->convertDateFormatYMD($item->dob);
|
||||||
$item->emp_status = 'Draft';
|
$item->emp_status = 'Draft';
|
||||||
$employee = $this->employeeModel->where('is_active', 1 )->insert($item);
|
$employee = $this->employeeModel->insert($item);
|
||||||
|
|
||||||
if ($employee) {
|
if ($employee) {
|
||||||
if(!isset($item->is_addon_value))
|
if(!isset($item->is_addon_value))
|
||||||
@ -206,6 +209,7 @@ class EmployeeRestController extends AdminController
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($Count > 0) {
|
if ($Count > 0) {
|
||||||
|
$this->updatePremiumAmount($data[0]->client_policy_id , $data[0]->emp_code);
|
||||||
$result = [];
|
$result = [];
|
||||||
return $this->respond(['status' => 'success','code' => 200,'data' => $result], 200);
|
return $this->respond(['status' => 'success','code' => 200,'data' => $result], 200);
|
||||||
} else {
|
} else {
|
||||||
@ -213,40 +217,57 @@ class EmployeeRestController extends AdminController
|
|||||||
return $this->respond(['status' => 'failed','code' => 404,'data' => $result], 404);
|
return $this->respond(['status' => 'failed','code' => 404,'data' => $result], 404);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (\Exception $e) {
|
// } catch (\Exception $e) {
|
||||||
return $this->respond(['status' => 'failed','code' => 500,'data' => $e->getMessage()], 500);
|
// return $this->respond(['status' => 'failed','code' => 500,'data' => $e->getMessage()], 500);
|
||||||
}
|
// }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function createEmployeePolicyData($employee_id,$emp_code,$client_id,$client_policy_id)
|
public function createEmployeePolicyData($employee_id,$emp_code,$client_id,$client_policy_id)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
$client_policy = $this->clientPolicyModel->where('id', $client_policy_id)->where('client_id', $client_id)->first();
|
$client_policy = $this->clientPolicyModel->where('id', $client_policy_id)->where('client_id', $client_id)->first();
|
||||||
$policy_terms = json_decode($client_policy['policy_terms']);
|
$policy_terms = json_decode($client_policy['policy_terms']);
|
||||||
$basic_cover_si = $policy_terms->sum_insured;
|
$basic_cover_si = $policy_terms->sum_insured;
|
||||||
|
|
||||||
$getSlabAndGridData = $this->policesModel->getPolicySlabRatesForEmpOnboard($client_policy_id,$client_id);
|
|
||||||
$SlabRatesArray = $getSlabAndGridData['slab_rates'];
|
|
||||||
$premium = $this->findPremiumAmount($SlabRatesArray, $basic_cover_si);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
$data['employee_id']= $employee_id;
|
$data['employee_id']= $employee_id;
|
||||||
$data['client_policy_id']= $client_policy_id;
|
$data['client_policy_id']= $client_policy_id;
|
||||||
$data['basic_cover_si']= $basic_cover_si;
|
$data['basic_cover_si']= $basic_cover_si;
|
||||||
$data['premium']= $premium;
|
$data['status']= 'draft';
|
||||||
|
|
||||||
$this->employeePolicyModel->insert($data);
|
$this->employeePolicyModel->insert($data);
|
||||||
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function updatePremiumAmount($client_policy_id , $emp_code)
|
||||||
|
{
|
||||||
|
$response = $this->calculatePremium($client_policy_id , $emp_code);
|
||||||
|
|
||||||
|
if(count($response[$emp_code]))
|
||||||
|
{
|
||||||
|
print_r($response[$emp_code]);
|
||||||
|
foreach ($response[$emp_code] as $key => $value)
|
||||||
|
{
|
||||||
|
|
||||||
|
$checkIfExist = $this->employeePolicyModel->where('employee_id', $value['temp']['emp_id'])
|
||||||
|
->where('client_policy_id', $value['policy_details']['client_policy_id'])
|
||||||
|
->where('is_active', 1 )
|
||||||
|
->findAll();
|
||||||
|
if($checkIfExist)
|
||||||
|
{
|
||||||
|
$this->employeePolicyModel
|
||||||
|
->where('client_policy_id',$value['policy_details']['client_policy_id'] )
|
||||||
|
->where('employee_id' , $value['temp']['emp_id'] )
|
||||||
|
->where('is_active', 1 )
|
||||||
|
->set(array('premium'=> $value['policy_details']['premium'] ))
|
||||||
|
->update();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public function RelationshipMap($value){
|
public function RelationshipMap($value){
|
||||||
|
|
||||||
if ($value === 'Mother' || $value === 'Father') {
|
if ($value === 'Mother' || $value === 'Father') {
|
||||||
@ -260,6 +281,19 @@ class EmployeeRestController extends AdminController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function GenderMap($value,$empCode){
|
||||||
|
|
||||||
|
if ($value === 'Mother' || $value === 'Daughter' || $value === 'Mother in Law') {
|
||||||
|
return 'F';
|
||||||
|
} else if($value === 'Son' || $value === 'Father' || $value === 'Father in Law'){
|
||||||
|
return 'M';
|
||||||
|
}else if($value === 'Spouse'){
|
||||||
|
|
||||||
|
$Gender = $this->employeeModel->where('emp_code',$empCode)->where('relationship','Self')->get()->getRow()->gender;
|
||||||
|
if($Gender == 'M'){ return 'F'; }else{ return 'M'; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private function convertDateFormatYMD($dateString)
|
private function convertDateFormatYMD($dateString)
|
||||||
{
|
{
|
||||||
// Attempt to create a DateTime object from the provided date string
|
// Attempt to create a DateTime object from the provided date string
|
||||||
@ -1293,14 +1327,21 @@ public function iAgreeForAddOn()
|
|||||||
//Post method - which receives client_policy id and empcode of the family.
|
//Post method - which receives client_policy id and empcode of the family.
|
||||||
//Pull records againest emp code and calculate premium
|
//Pull records againest emp code and calculate premium
|
||||||
// retun array
|
// retun array
|
||||||
public function calculatePremium()//family level
|
public function calculatePremium($clientPolicyId = null , $empCode = null, $default_si = null)//family level
|
||||||
{
|
{
|
||||||
helper('excel_util_helper');
|
helper('excel_util_helper');
|
||||||
$client_policy_id = $this->request->getVar('client_policy_id');
|
|
||||||
$emp_code = $this->request->getVar('emp_code');
|
// $client_policy_id = $this->request->getVar('client_policy_id');
|
||||||
$default_si = $this->request->getVar('si');// si amt which choosed in add on policy
|
// $emp_code = $this->request->getVar('emp_code');
|
||||||
|
|
||||||
// dd($default_si);
|
// dd($default_si);
|
||||||
|
|
||||||
|
$client_policy_id = $this->request->getVar('client_policy_id') ?? $clientPolicyId;
|
||||||
|
$emp_code = $this->request->getVar('emp_code') ?? $empCode;
|
||||||
|
$default_si = $this->request->getVar('si') ?? $default_si;// si amt which choosed in add on policy
|
||||||
|
// dd($client_policy_id);
|
||||||
|
|
||||||
|
|
||||||
$client_id = ($this->clientPolicyModel->select('client_id')->find($client_policy_id))['client_id'];
|
$client_id = ($this->clientPolicyModel->select('client_id')->find($client_policy_id))['client_id'];
|
||||||
// get policy and rack details
|
// get policy and rack details
|
||||||
$policy_terms = $this->clientPolicyModel->getPolicyDetails($client_id,$client_policy_id);
|
$policy_terms = $this->clientPolicyModel->getPolicyDetails($client_id,$client_policy_id);
|
||||||
@ -1326,8 +1367,15 @@ public function calculatePremium()//family level
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// dd ($employee_data_group_by_family);
|
if($clientPolicyId != null && $empCode != null)
|
||||||
|
{
|
||||||
|
return $employee_data_group_by_family;
|
||||||
|
}else{
|
||||||
|
// dd ($employee_data_group_by_family);
|
||||||
return $this->respond(['status' => 'success','code' => (count($employee_data_group_by_family) ? 200 : 404),'data' => [$employee_data_group_by_family] ], 200);
|
return $this->respond(['status' => 'success','code' => (count($employee_data_group_by_family) ? 200 : 404),'data' => [$employee_data_group_by_family] ], 200);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -568,6 +568,8 @@ class EmployeeServiceController extends AdminController
|
|||||||
|
|
||||||
$existing_famility_details = $this->employeeModel->getEmpFamilybyEmpCode(client_id: $client_id,client_policy_id: $client_policy_id,emp_status: ['enrolled','draft'],policy_status:['enrolled','draft']);
|
$existing_famility_details = $this->employeeModel->getEmpFamilybyEmpCode(client_id: $client_id,client_policy_id: $client_policy_id,emp_status: ['enrolled','draft'],policy_status:['enrolled','draft']);
|
||||||
|
|
||||||
|
|
||||||
|
// $file = ['id' => null,'client_id' => $client_id,'policy_id' => $client_policy_id,'action' => 'inception'];
|
||||||
$file = ['id' => null,'client_id' => $client_id,'policy_id' => $client_policy_id,'action' => 'inception','created_by' => get_session_userid()];
|
$file = ['id' => null,'client_id' => $client_id,'policy_id' => $client_policy_id,'action' => 'inception','created_by' => get_session_userid()];
|
||||||
// dd($this->employeeModel->getLastQuery());
|
// dd($this->employeeModel->getLastQuery());
|
||||||
// Kint::dump($existing_famility_details);die();
|
// Kint::dump($existing_famility_details);die();
|
||||||
|
|||||||
@ -659,6 +659,7 @@ class EmployeePolicyModel extends Model
|
|||||||
->where('employee_polices.client_policy_id',$policy_id);
|
->where('employee_polices.client_policy_id',$policy_id);
|
||||||
|
|
||||||
$result->whereIn('employee_polices.status', ['draft', 'enrolled']);
|
$result->whereIn('employee_polices.status', ['draft', 'enrolled']);
|
||||||
|
$result->whereIn('emp.emp_status', ['draft', 'enrolled']);
|
||||||
$result = $result->findAll();
|
$result = $result->findAll();
|
||||||
return ($result);
|
return ($result);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -424,10 +424,26 @@ $(document).ready(function() {
|
|||||||
// console.log(res)
|
// console.log(res)
|
||||||
var OptionsHTML = '';
|
var OptionsHTML = '';
|
||||||
OptionsHTML += '<option value="" selected>Select Policy</option>';
|
OptionsHTML += '<option value="" selected>Select Policy</option>';
|
||||||
|
$policy_type_value = $('#policy_type').val();
|
||||||
$.each(res.data, function(index, item) {
|
$.each(res.data, function(index, item) {
|
||||||
OptionsHTML += '<option data-id="' + item.policy_type_id + '" value="' +
|
|
||||||
item.id +
|
if ($policy_type_value == 3) {
|
||||||
'">' + item.name + '</option>';
|
if (item.policy_type_id == 5 || item.policy_type_id == 3) {
|
||||||
|
OptionsHTML += '<option data-id="' + item.policy_type_id + '" value="' +
|
||||||
|
item.id +
|
||||||
|
'">' + item.name + '</option>';
|
||||||
|
}
|
||||||
|
}else if($policy_type_value == 2){
|
||||||
|
if (item.policy_type_id == 4 ) {
|
||||||
|
OptionsHTML += '<option data-id="' + item.policy_type_id + '" value="' +
|
||||||
|
item.id +
|
||||||
|
'">' + item.name + '</option>';
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
OptionsHTML += '<option data-id="' + item.policy_type_id + '" value="' +
|
||||||
|
item.id +
|
||||||
|
'">' + item.name + '</option>';
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
$('#policy').html(OptionsHTML);
|
$('#policy').html(OptionsHTML);
|
||||||
@ -989,6 +1005,10 @@ $('#policy_type').change(function() {
|
|||||||
$('#end_date').val('');
|
$('#end_date').val('');
|
||||||
$('#base_policy').val('0');
|
$('#base_policy').val('0');
|
||||||
|
|
||||||
|
if($(this).val() == 3){
|
||||||
|
toastr.warning('Please Change the Policy Terms after Submit the Policy!', 'warning');
|
||||||
|
}
|
||||||
|
|
||||||
if ($(this).val() != '1' && $(this).val() != '0') {
|
if ($(this).val() != '1' && $(this).val() != '0') {
|
||||||
|
|
||||||
$('#base_policy_id').show();
|
$('#base_policy_id').show();
|
||||||
@ -1011,7 +1031,6 @@ $('#policy_type').change(function() {
|
|||||||
$('#base_policy_id').hide();
|
$('#base_policy_id').hide();
|
||||||
$('#base_policy').prop('required', false);
|
$('#base_policy').prop('required', false);
|
||||||
}
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
@ -1074,8 +1093,8 @@ $(document).ready(function(){
|
|||||||
const queryString = objectToQueryString(queryParams);
|
const queryString = objectToQueryString(queryParams);
|
||||||
// var uri = '<?= base_url('util/fetch-policy-for-policy-type')?>?' + queryString
|
// var uri = '<?= base_url('util/fetch-policy-for-policy-type')?>?' + queryString
|
||||||
var uri = '<?= base_url('client/policy/list/')?>' + client_policy_id
|
var uri = '<?= base_url('client/policy/list/')?>' + client_policy_id
|
||||||
console.log('uri', uri)
|
// console.log('uri', uri)
|
||||||
console.log('queryString', queryString)
|
// console.log('queryString', queryString)
|
||||||
|
|
||||||
$('.loader').fadeIn();
|
$('.loader').fadeIn();
|
||||||
$('.loader-mask').fadeIn();
|
$('.loader-mask').fadeIn();
|
||||||
@ -1102,11 +1121,19 @@ $(document).ready(function(){
|
|||||||
|
|
||||||
|
|
||||||
var policeOptionHTML = '';
|
var policeOptionHTML = '';
|
||||||
|
$policy_type_value = $('#policy_type').val();
|
||||||
$.each(res.policy, function(index, item) {
|
$.each(res.policy, function(index, item) {
|
||||||
console.log(item)
|
|
||||||
policeOptionHTML += '<option data-id="' + item.policy_type_id +
|
// if ($policy_type_value == 3) {
|
||||||
|
// if (item.policy_type_id == 5) {
|
||||||
|
console.log(item);
|
||||||
|
|
||||||
|
policeOptionHTML += '<option data-id="' + item.policy_type_id +
|
||||||
'" value="' + item.id + '" ' + (res.data.policy_id === item.id ?
|
'" value="' + item.id + '" ' + (res.data.policy_id === item.id ?
|
||||||
'selected="selected"' : '') + '>' + item.name + '</option>';
|
'selected="selected"' : '') + '>' + item.name + '</option>';
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
});
|
});
|
||||||
$('#policy').html(policeOptionHTML);
|
$('#policy').html(policeOptionHTML);
|
||||||
|
|
||||||
|
|||||||
@ -1,3 +1,10 @@
|
|||||||
|
<style>
|
||||||
|
|
||||||
|
option:disabled {
|
||||||
|
color: gray !important; /* Set text color to gray */
|
||||||
|
background-color: lightgray !important;}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
|
||||||
<div class="tab-pane fade active show" id="general-q-tab">
|
<div class="tab-pane fade active show" id="general-q-tab">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
@ -124,7 +131,7 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button type="button" class="btn btn-primary">Save changes</button>
|
<a id="fetch_btn" class="btn btn-primary">Initiate Emp Onboard</a>
|
||||||
</div>
|
</div>
|
||||||
</div><!-- /.modal-content -->
|
</div><!-- /.modal-content -->
|
||||||
</div><!-- /.modal-dialog -->
|
</div><!-- /.modal-dialog -->
|
||||||
@ -152,6 +159,10 @@
|
|||||||
$('#file_upload').hide();
|
$('#file_upload').hide();
|
||||||
|
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
|
|
||||||
|
<?php if (session()->has('success1')): ?>
|
||||||
|
toastr.success('<?= session()->getFlashdata('success1') ?>', 'success');
|
||||||
|
<?php endif; ?>
|
||||||
// Initialize select2
|
// Initialize select2
|
||||||
$("#client_id").select2();
|
$("#client_id").select2();
|
||||||
$("#policy_id").select2();
|
$("#policy_id").select2();
|
||||||
@ -478,10 +489,10 @@ $(document).ready(function() {
|
|||||||
|
|
||||||
$('#client_id').on('change', function() {
|
$('#client_id').on('change', function() {
|
||||||
var selectedClient = $(this).val();
|
var selectedClient = $(this).val();
|
||||||
|
|
||||||
console.log('selectedClient', selectedClient);
|
console.log('selectedClient', selectedClient);
|
||||||
// $('#selectedOptionInfo').text('Selected option: ' + selectedOption);
|
// $('#selectedOptionInfo').text('Selected option: ' + selectedOption);
|
||||||
|
|
||||||
|
|
||||||
// Check if the selected option exists in apiData
|
// Check if the selected option exists in apiData
|
||||||
var foundPolicies = clientPolicies.find(function(item) {
|
var foundPolicies = clientPolicies.find(function(item) {
|
||||||
return item.id === selectedClient;
|
return item.id === selectedClient;
|
||||||
@ -489,64 +500,6 @@ $(document).ready(function() {
|
|||||||
console.log(foundPolicies.policies);
|
console.log(foundPolicies.policies);
|
||||||
appendPolicies(foundPolicies.policies);
|
appendPolicies(foundPolicies.policies);
|
||||||
|
|
||||||
var apiURL = '<?php echo base_url();?>' + 'util/fetch-emp-count/' + selectedClient;
|
|
||||||
console.log(apiURL);
|
|
||||||
$.ajax({
|
|
||||||
url: apiURL,
|
|
||||||
method: 'GET',
|
|
||||||
headers: {
|
|
||||||
"Content-Type": "application/json",
|
|
||||||
"X-Requested-With": "XMLHttpRequest"
|
|
||||||
},
|
|
||||||
success: function(response) {
|
|
||||||
|
|
||||||
console.log('responce data emp_count', response);
|
|
||||||
|
|
||||||
if (response.code === 200 && response.dataStatus === true && response.data !== "") {
|
|
||||||
try {
|
|
||||||
console.log(response.emp_count.length)
|
|
||||||
if(response.emp_count > 0){
|
|
||||||
|
|
||||||
var select = document.getElementById("upload-action-type");
|
|
||||||
for (var i = 0; i < select.options.length; i++) {
|
|
||||||
if (select.options[i].value === "inception") {
|
|
||||||
select.options[i].disabled = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}else{
|
|
||||||
|
|
||||||
var select = document.getElementById("upload-action-type");
|
|
||||||
for (var i = 0; i < select.options.length; i++) {
|
|
||||||
if (select.options[i].value === "inception") {
|
|
||||||
select.options[i].disabled = false;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (error) {
|
|
||||||
console.error('Error parsing API response data:', error);
|
|
||||||
}
|
|
||||||
} else if (response.code === 404 && response.dataStatus === false) {
|
|
||||||
|
|
||||||
console.error('no data found', response);
|
|
||||||
|
|
||||||
} else {
|
|
||||||
console.error('Something went wrong!');
|
|
||||||
}
|
|
||||||
},
|
|
||||||
error: function(xhr, status, error) {
|
|
||||||
console.error('Error fetching data from API:', error);
|
|
||||||
var select = document.getElementById("upload-action-type");
|
|
||||||
for (var i = 0; i < select.options.length; i++) {
|
|
||||||
if (select.options[i].value === "inception") {
|
|
||||||
select.options[i].disabled = false;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
@ -637,6 +590,12 @@ document.getElementById('toggleIcon1').addEventListener('click', function() {
|
|||||||
$('#fetch_enrolled_data').click(function()
|
$('#fetch_enrolled_data').click(function()
|
||||||
{
|
{
|
||||||
|
|
||||||
|
var policy_id = $('#policy_id').val();
|
||||||
|
var uri = '<?= base_url('util/init-Emp-onboard/') ?>' + policy_id;
|
||||||
|
console.log(policy_id);
|
||||||
|
console.log(uri);
|
||||||
|
$('#fetch_btn').attr('href', uri);
|
||||||
|
|
||||||
$('#emp_data').empty();
|
$('#emp_data').empty();
|
||||||
var client_id = $('#client_id').val();
|
var client_id = $('#client_id').val();
|
||||||
var policy_id = $('#policy_id').val();
|
var policy_id = $('#policy_id').val();
|
||||||
@ -700,5 +659,75 @@ $('#fetch_enrolled_data').click(function()
|
|||||||
|
|
||||||
})
|
})
|
||||||
|
|
||||||
|
$(document).ready(function() {
|
||||||
|
|
||||||
|
$('#policy_id').change(function(){
|
||||||
|
|
||||||
|
var selectedpolicy = $(this).val();
|
||||||
|
console.log('selectedpolicy',selectedpolicy)
|
||||||
|
|
||||||
|
var apiURL = '<?php echo base_url();?>' + 'util/fetch-emp-count/' + selectedpolicy;
|
||||||
|
console.log(apiURL);
|
||||||
|
$.ajax({
|
||||||
|
url: apiURL,
|
||||||
|
method: 'GET',
|
||||||
|
headers: {
|
||||||
|
"Content-Type": "application/json",
|
||||||
|
"X-Requested-With": "XMLHttpRequest"
|
||||||
|
},
|
||||||
|
success: function(response) {
|
||||||
|
|
||||||
|
console.log('responce data emp_count', response);
|
||||||
|
|
||||||
|
if (response.code === 200 && response.dataStatus === true && response.data !== "") {
|
||||||
|
try {
|
||||||
|
console.log(response.emp_count.length)
|
||||||
|
if(response.emp_count > 0){
|
||||||
|
|
||||||
|
var select = document.getElementById("upload-action-type");
|
||||||
|
for (var i = 0; i < select.options.length; i++) {
|
||||||
|
if (select.options[i].value === "inception") {
|
||||||
|
select.options[i].disabled = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
|
||||||
|
var select = document.getElementById("upload-action-type");
|
||||||
|
for (var i = 0; i < select.options.length; i++) {
|
||||||
|
if (select.options[i].value === "inception") {
|
||||||
|
select.options[i].disabled = false;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (error) {
|
||||||
|
console.error('Error parsing API response data:', error);
|
||||||
|
}
|
||||||
|
} else if (response.code === 404 && response.dataStatus === false) {
|
||||||
|
|
||||||
|
console.error('no data found', response);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
console.error('Something went wrong!');
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error: function(xhr, status, error) {
|
||||||
|
console.error('Error fetching data from API:', error);
|
||||||
|
var select = document.getElementById("upload-action-type");
|
||||||
|
for (var i = 0; i < select.options.length; i++) {
|
||||||
|
if (select.options[i].value === "inception") {
|
||||||
|
select.options[i].disabled = false;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------
|
||||||
</script>
|
</script>
|
||||||
@ -66,6 +66,7 @@ table.dataTable tbody td {
|
|||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
<!-- <button><a href="">download full file</a></button> -->
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<table class="table table-sm table-hover m-0 table-centered dt-responsive nowrap w-100" cellspacing="0" id="tickets-table">
|
<table class="table table-sm table-hover m-0 table-centered dt-responsive nowrap w-100" cellspacing="0" id="tickets-table">
|
||||||
<thead class="bg-light">
|
<thead class="bg-light">
|
||||||
@ -118,6 +119,12 @@ $(document).ready(function() {
|
|||||||
extend: 'excel',
|
extend: 'excel',
|
||||||
text: 'Excel', // Set the title for the Excel button
|
text: 'Excel', // Set the title for the Excel button
|
||||||
title: 'ExcelErrorData', // Set your custom title here
|
title: 'ExcelErrorData', // Set your custom title here
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Excel Error', // Set the text for the custom button
|
||||||
|
action: function (e, dt, node, config) {
|
||||||
|
window.location.href = '<?= base_url("util/full-excel-error-file/") . $file_id ?>';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
paging: false, // Disable pagination
|
paging: false, // Disable pagination
|
||||||
|
|||||||
@ -105,8 +105,8 @@
|
|||||||
<label for="totalSumInsured">Family Floater</label>
|
<label for="totalSumInsured">Family Floater</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<input type="radio" name="family_floater" value="1"> Yes
|
<input type="radio" name="family_floater" class="family_floater" value="1"> Yes
|
||||||
<input type="radio" name="family_floater" value="0" style="margin-left:10px"> No
|
<input type="radio" name="family_floater" class="family_floater" value="0" style="margin-left:10px"> No
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
</div>
|
</div>
|
||||||
@ -159,8 +159,8 @@
|
|||||||
<label for="totalSumInsured">Waiver of Pre-existing Diseases</label>
|
<label for="totalSumInsured">Waiver of Pre-existing Diseases</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<input type="radio" name="waiverofpreexistingdiseases" value="1"> Yes, waived off
|
<input type="radio" name="waiverofpreexistingdiseases" class="waiverofpreexistingdiseases" value="1"> Yes, waived off
|
||||||
<input type="radio" name="waiverofpreexistingdiseases" value="0" style="margin-left:10px"> No
|
<input type="radio" name="waiverofpreexistingdiseases" class="waiverofpreexistingdiseases" value="0" style="margin-left:10px"> No
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -206,8 +206,8 @@
|
|||||||
<label for="totalSumInsured">9-month waiting Period –waived</label>
|
<label for="totalSumInsured">9-month waiting Period –waived</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<input type="radio" name="9monthwaitingperiodwaived" value="1"> Yes, waived off
|
<input type="radio" name="9monthwaitingperiodwaived" class="9monthwaitingperiodwaived" value="1"> Yes, waived off
|
||||||
<input type="radio" name="9monthwaitingperiodwaived" value="0" style="margin-left:10px"> No </div>
|
<input type="radio" name="9monthwaitingperiodwaived" class="9monthwaitingperiodwaived" value="0" style="margin-left:10px"> No </div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row" style="margin-bottom: 10px;">
|
<div class="row" style="margin-bottom: 10px;">
|
||||||
@ -224,8 +224,8 @@
|
|||||||
<label for="totalSumInsured">Waiver of 1, 2, 3 & 4th year Exclusions</label>
|
<label for="totalSumInsured">Waiver of 1, 2, 3 & 4th year Exclusions</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<input type="radio" name="waiverof1,2,3&4thyearexclusions" value="1"> Yes, waived off
|
<input type="radio" name="waiverof1,2,3&4thyearexclusions" class="waiverof1234thyearexclusions" value="1"> Yes, waived off
|
||||||
<input type="radio" name="waiverof1,2,3&4thyearexclusions" value="0" style="margin-left:10px"> No
|
<input type="radio" name="waiverof1,2,3&4thyearexclusions" class="waiverof1234thyearexclusions" value="0" style="margin-left:10px"> No
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -235,8 +235,8 @@
|
|||||||
<label for="totalSumInsured">Waiver of 30 days waiting period</label>
|
<label for="totalSumInsured">Waiver of 30 days waiting period</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<input type="radio" name="waiverof30dayswaitingperiod" value="1"> Yes, waived off
|
<input type="radio" name="waiverof30dayswaitingperiod" class="waiverof30dayswaitingperiod" value="1"> Yes, waived off
|
||||||
<input type="radio" name="waiverof30dayswaitingperiod" value="0" style="margin-left:10px"> No
|
<input type="radio" name="waiverof30dayswaitingperiod" class="waiverof30dayswaitingperiod" value="0" style="margin-left:10px"> No
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -254,8 +254,8 @@
|
|||||||
<label for="totalSumInsured">Congenital Diseases - Internal</label>
|
<label for="totalSumInsured">Congenital Diseases - Internal</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<input type="radio" name="congenitaldiseasesinternal" value="internal"> Internal Covered
|
<input type="radio" name="congenitaldiseasesinternal" class="congenitaldiseasesinternal" value="internal"> Internal Covered
|
||||||
<input type="radio" name="congenitaldiseasesinternal" value="no" style="margin-left:10px"> No </div>
|
<input type="radio" name="congenitaldiseasesinternal" class="congenitaldiseasesinternal" value="no" style="margin-left:10px"> No </div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row" style="margin-bottom: 10px;">
|
<div class="row" style="margin-bottom: 10px;">
|
||||||
@ -324,8 +324,8 @@
|
|||||||
<label for="totalSumInsured">Ailment capping</label>
|
<label for="totalSumInsured">Ailment capping</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<input type="radio" name="ailmentcapping" value="1"> Yes
|
<input type="radio" name="ailmentcapping" class="ailmentcapping" value="1"> Yes
|
||||||
<input type="radio" name="ailmentcapping" value="0" style="margin-left:10px"> No
|
<input type="radio" name="ailmentcapping" class="ailmentcapping" value="0" style="margin-left:10px"> No
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -361,8 +361,8 @@
|
|||||||
<label for="totalSumInsured">Reasonable and Customary Charges</label>
|
<label for="totalSumInsured">Reasonable and Customary Charges</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<input type="radio" name="reasonableandcustomarycharges" value="1">Applicable
|
<input type="radio" name="reasonableandcustomarycharges" class="reasonableandcustomarycharges" value="1">Applicable
|
||||||
<input type="radio" name="reasonableandcustomarycharges" value="0" style="margin-left:10px">Not Applicable </div>
|
<input type="radio" name="reasonableandcustomarycharges" class="reasonableandcustomarycharges" value="0" style="margin-left:10px">Not Applicable </div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row" style="margin-bottom: 10px;">
|
<div class="row" style="margin-bottom: 10px;">
|
||||||
@ -370,8 +370,8 @@
|
|||||||
<label for="totalSumInsured">Day Care Treatment</label>
|
<label for="totalSumInsured">Day Care Treatment</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<input type="radio" name="daycaretreatment" value="1"> Yes
|
<input type="radio" name="daycaretreatment" class="daycaretreatment" value="1"> Yes
|
||||||
<input type="radio" name="daycaretreatment" value="0" style="margin-left:10px"> No </div>
|
<input type="radio" name="daycaretreatment" class="daycaretreatment" value="0" style="margin-left:10px"> No </div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row" style="margin-bottom: 10px;">
|
<div class="row" style="margin-bottom: 10px;">
|
||||||
@ -379,8 +379,8 @@
|
|||||||
<label for="totalSumInsured">AYUSH treatment cover</label>
|
<label for="totalSumInsured">AYUSH treatment cover</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<input type="radio" name="ayudhtreatmentcover" value="1"> Yes
|
<input type="radio" name="ayudhtreatmentcover" class="ayudhtreatmentcover" value="1"> Yes
|
||||||
<input type="radio" name="ayudhtreatmentcover" value="0" style="margin-left:10px"> No
|
<input type="radio" name="ayudhtreatmentcover" class="ayudhtreatmentcover" value="0" style="margin-left:10px"> No
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -398,8 +398,8 @@
|
|||||||
<label for="totalSumInsured">Sum Insured enhancement</label>
|
<label for="totalSumInsured">Sum Insured enhancement</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<input type="radio" name="suminsuredenhancement" value="1"> Yes
|
<input type="radio" name="suminsuredenhancement" class="suminsuredenhancement" value="1"> Yes
|
||||||
<input type="radio" name="suminsuredenhancement" value="0" style="margin-left:10px"> No
|
<input type="radio" name="suminsuredenhancement" class="suminsuredenhancement" value="0" style="margin-left:10px"> No
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -640,7 +640,7 @@ var grid_html = '';
|
|||||||
|
|
||||||
|
|
||||||
var gmc_policy_type_id = $(this).attr('id');
|
var gmc_policy_type_id = $(this).attr('id');
|
||||||
console.log(gmc_policy_type_id)
|
// console.log(gmc_policy_type_id)
|
||||||
|
|
||||||
if(gmc_policy_type_id == 'GMC'){
|
if(gmc_policy_type_id == 'GMC'){
|
||||||
|
|
||||||
@ -657,7 +657,9 @@ var grid_html = '';
|
|||||||
data: {client_policy_id: client_policy_id},
|
data: {client_policy_id: client_policy_id},
|
||||||
success: function(response) {
|
success: function(response) {
|
||||||
console.log('response',response);
|
console.log('response',response);
|
||||||
console.log('count', response.count);
|
|
||||||
|
|
||||||
|
// console.log('count', response.count);
|
||||||
setTimeout(function() {
|
setTimeout(function() {
|
||||||
$('.loader').fadeOut();
|
$('.loader').fadeOut();
|
||||||
$('.loader-mask').delay(350).fadeOut('slow');
|
$('.loader-mask').delay(350).fadeOut('slow');
|
||||||
@ -684,6 +686,11 @@ var grid_html = '';
|
|||||||
|
|
||||||
|
|
||||||
if (response) {
|
if (response) {
|
||||||
|
if ( response.emp_count_by_policy != 0) {
|
||||||
|
$('#btnGridSubmit1').hide();
|
||||||
|
|
||||||
|
$('#myButtonSpecialCondition').hide();
|
||||||
|
}
|
||||||
let jsonObject = JSON.parse(response.data);
|
let jsonObject = JSON.parse(response.data);
|
||||||
Object.keys(jsonObject).forEach(function(key) {
|
Object.keys(jsonObject).forEach(function(key) {
|
||||||
if (key.includes("special_condition_label") || key.includes("special_condition_input")) {
|
if (key.includes("special_condition_label") || key.includes("special_condition_input")) {
|
||||||
@ -737,6 +744,53 @@ var grid_html = '';
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(response.policy_addon == '3'){
|
||||||
|
|
||||||
|
$('.jodit-container').prop('disabled', true);
|
||||||
|
$('.waiverofpreexistingdiseases').prop('disabled', true);
|
||||||
|
$('#maternitycoverage').prop('disabled', true);
|
||||||
|
$('#twindelivery').prop('disabled', true);
|
||||||
|
$('#preandpostnatal').prop('disabled', true);
|
||||||
|
$('#babyday1cover').prop('disabled', true);
|
||||||
|
$('.9monthwaitingperiodwaived').prop('disabled', true);
|
||||||
|
$('#coverfromthedateofjoining').prop('disabled', true);
|
||||||
|
$('.waiverof1234thyearexclusions').prop('disabled', true);
|
||||||
|
$('.waiverof30dayswaitingperiod').prop('disabled', true);
|
||||||
|
$('#prehospitalizationcover').prop('disabled', true);
|
||||||
|
$('.congenitaldiseasesinternal').prop('disabled', true);
|
||||||
|
$('#copayzonewisecopay').prop('disabled', true);
|
||||||
|
$('#bioabsorbablestenttoriclensmultifocallens').prop('disabled', true);
|
||||||
|
$('#roomrentlimit').prop('disabled', true);
|
||||||
|
$('#proportionatedeductionclause').prop('disabled', true);
|
||||||
|
$('#nursingallowance').prop('disabled', true);
|
||||||
|
$('.ailmentcapping').prop('disabled', true);
|
||||||
|
$('#ambulancecharges').prop('disabled', true);
|
||||||
|
$('#airambulance').prop('disabled', true);
|
||||||
|
$('#familytransportationbenefit').prop('disabled', true);
|
||||||
|
$('.reasonableandcustomarycharges').prop('disabled', true);
|
||||||
|
$('.daycaretreatment').prop('disabled', true);
|
||||||
|
$('.ayudhtreatmentcover').prop('disabled', true);
|
||||||
|
$('#armdcovered').prop('disabled', true);
|
||||||
|
$('.suminsuredenhancement').prop('disabled', true);
|
||||||
|
$('#automaticsuminsuredreinstatement').prop('disabled', true);
|
||||||
|
$('#lasiksurgery').prop('disabled', true);
|
||||||
|
$('#midterminclusion').prop('disabled', true);
|
||||||
|
$('#capd').prop('disabled', true);
|
||||||
|
$('#organdonorexpenses').prop('disabled', true);
|
||||||
|
$('#moderntreatmentsasperirdai').prop('disabled', true);
|
||||||
|
$('#days_of_discharge').prop('disabled', true);
|
||||||
|
$('#days_from_dod').prop('disabled', true);
|
||||||
|
|
||||||
|
setTimeout(function() {
|
||||||
|
var editor1 = new Jodit('#additionalsicknessbenefit');
|
||||||
|
var editor2 = new Jodit('#Wellness');
|
||||||
|
|
||||||
|
editor1.setReadOnly(true);
|
||||||
|
editor2.setReadOnly(true);
|
||||||
|
|
||||||
|
}, 3000);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user