Merge branch 'dev' of bitbucket.org:jubilian/nhance into dev
This commit is contained in:
commit
be852ec756
@ -116,6 +116,7 @@ $routes->group("/employee", ["filter" => "authMVC"], function($routes){
|
|||||||
$routes->post("upload", "EmployeeController::employeesUplodWithEvents");
|
$routes->post("upload", "EmployeeController::employeesUplodWithEvents");
|
||||||
$routes->get("excel_error/(:any)", "EmployeeController::getExcelFileErrors/$1");
|
$routes->get("excel_error/(:any)", "EmployeeController::getExcelFileErrors/$1");
|
||||||
$routes->get("endorsement-list", "EmployeeController::endorsementList");
|
$routes->get("endorsement-list", "EmployeeController::endorsementList");
|
||||||
|
$routes->get("truncate/(:any)", "EmployeeController::truncateFileData/$1");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -131,9 +131,9 @@ class EmployeeController extends AdminController
|
|||||||
// print_r($this->request->getPost('policies'));
|
// print_r($this->request->getPost('policies'));
|
||||||
// print_r($this->request->getPost('upload-action-type'));
|
// print_r($this->request->getPost('upload-action-type'));
|
||||||
// die();
|
// die();
|
||||||
$empServiceController = new EmployeeServiceController();
|
// $empServiceController = new EmployeeServiceController();
|
||||||
$res = $empServiceController->excelFileFormatValidation(['file_id' => '42']);
|
// $res = $empServiceController->excelFileFormatValidation(['file_id' => '42']);
|
||||||
dd($res);
|
// dd($res);
|
||||||
|
|
||||||
// $empServiceController = new EmployeeServiceController();
|
// $empServiceController = new EmployeeServiceController();
|
||||||
// $res = $empServiceController->excelFileDataValidation(['file_id' => '38']);
|
// $res = $empServiceController->excelFileDataValidation(['file_id' => '38']);
|
||||||
@ -862,6 +862,68 @@ class EmployeeController extends AdminController
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function truncateFileData() //truncateFileDataIn DB (de activate rows)
|
||||||
|
{
|
||||||
|
$file_id = $this->request->uri->getSegment(3);
|
||||||
|
// $file_id = 112;
|
||||||
|
$file = $this->fileModel->find($file_id);
|
||||||
|
// $file['action'] = 'si_enhancement';
|
||||||
|
// $result = [];
|
||||||
|
// !dd($file);
|
||||||
|
if($file['action'] == 'inception' || $file['action'] == 'dependent_addition' || $file['action'] == 'addition')
|
||||||
|
{
|
||||||
|
$result = $this->employeeModel->getEmpListByFileId(file_id: $file_id,emp_status: ['active'],policy_status:['active']);
|
||||||
|
// ~dd($result);
|
||||||
|
if(count($result))
|
||||||
|
{
|
||||||
|
return $this->respond(['dataStatus' => false,'code' => 404,'message' => 'File data already processed'], 200);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
|
||||||
|
//update emp and emp plocies
|
||||||
|
$db = db_connect();
|
||||||
|
$query = "UPDATE employees JOIN employee_polices ON employees.id = employee_polices.employee_id and employees.file_id = $file_id SET employees.emp_status = 'truncated', employee_polices.status = 'truncated', employees.is_active = 0,employee_polices.is_active = 0 WHERE employees.file_id = $file_id";
|
||||||
|
$db->query($query);
|
||||||
|
$affectedRows = $db->affectedRows();
|
||||||
|
// $affectedRows = 10;
|
||||||
|
|
||||||
|
//update file status
|
||||||
|
$this->fileModel->where('id', $file_id)->set(['status' => 'truncated'])->update();
|
||||||
|
|
||||||
|
return $this->respond(['dataStatus' => true,'code' => 200,'data' => round($affectedRows/2)], 200);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if($file['action'] == 'si_enhancement' || $file['action'] == 'correction' || $file['action'] == 'deletion')
|
||||||
|
{
|
||||||
|
$res = $this->empEndorsementModel->select(['count(id) as count'])
|
||||||
|
->where('emp_endorsement.file_id',$file_id)
|
||||||
|
->groupStart()
|
||||||
|
->where('emp_endorsement.endorsement_id is not null')
|
||||||
|
->orwhereIn('emp_endorsement.status',['complete'])
|
||||||
|
->groupEnd()
|
||||||
|
->get()
|
||||||
|
->getResult();
|
||||||
|
// print_r($this->empEndorsementModel->getLastQuery());
|
||||||
|
// echo $res[0]->count;die();
|
||||||
|
if($res[0]->count == 0)
|
||||||
|
{
|
||||||
|
//update truncated status to db
|
||||||
|
$this->empEndorsementModel->where('file_id',$file_id)
|
||||||
|
->set(['status' => 'truncated'])
|
||||||
|
->update();
|
||||||
|
//update file status
|
||||||
|
$this->fileModel->where('id', $file_id)->set(['status' => 'truncated'])->update();
|
||||||
|
return $this->respond(['dataStatus' => true,'code' => 200,'data' => 'success'], 200);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return $this->respond(['dataStatus' => false,'code' => 404,'message' => 'File data already processed'], 200);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -145,7 +145,7 @@ class EmployeeServiceController extends AdminController
|
|||||||
$policy_terms = json_decode($policy_terms[0]->policy_terms);
|
$policy_terms = json_decode($policy_terms[0]->policy_terms);
|
||||||
$policy_terms = (array) $policy_terms;// convert obj to array
|
$policy_terms = (array) $policy_terms;// convert obj to array
|
||||||
//
|
//
|
||||||
dd($policy_terms);
|
// dd($policy_terms);
|
||||||
|
|
||||||
//get policy slab rates
|
//get policy slab rates
|
||||||
$slab_details = $this->policiesModel->getPolicySlabRatesForEmpOnboard($file['policy_id'],$file['client_id']);
|
$slab_details = $this->policiesModel->getPolicySlabRatesForEmpOnboard($file['policy_id'],$file['client_id']);
|
||||||
@ -621,14 +621,14 @@ class EmployeeServiceController extends AdminController
|
|||||||
|
|
||||||
$group_key = rand(100000, 999999);
|
$group_key = rand(100000, 999999);
|
||||||
//for emp table
|
//for emp table
|
||||||
$this->empEndorsementModel->save(['pk' => (int)$data['emp_id'],'emp_code' => $data['emp_code'],'table_name' => 'employees','actions' => 'd','name' => $data['name'],'field_name' => 'emp_status','old_value' => $data['emp_status'],'new_value' => 'deactivate','created_by' => $file['created_by'],'remarks' => 'general deletion','group_key' => $group_key]);
|
$this->empEndorsementModel->save(['pk' => (int)$data['emp_id'],'emp_code' => $data['emp_code'],'table_name' => 'employees','actions' => 'd','name' => $data['name'],'field_name' => 'emp_status','old_value' => $data['emp_status'],'new_value' => 'deactivate','created_by' => $file['created_by'],'remarks' => 'general deletion','group_key' => $group_key,'file_id' => $file['id']]);
|
||||||
// dd( $this->empEndorsementModel->getLastQuery());
|
// dd( $this->empEndorsementModel->getLastQuery());
|
||||||
// $this->empEndorsementModel->save(['pk' => (int)$data['emp_id'],'emp_code' => $data['emp_code'],'table_name' => 'employees','actions' => 'd','name' => $data['name'],'field_name' => 'change_event','old_value' => $data['change_event'],'new_value' => 'deletion','created_by' => $file['created_by'],'remarks' => 'general deletion']);
|
// $this->empEndorsementModel->save(['pk' => (int)$data['emp_id'],'emp_code' => $data['emp_code'],'table_name' => 'employees','actions' => 'd','name' => $data['name'],'field_name' => 'change_event','old_value' => $data['change_event'],'new_value' => 'deletion','created_by' => $file['created_by'],'remarks' => 'general deletion']);
|
||||||
|
|
||||||
// for employee policy table
|
// for employee policy table
|
||||||
$this->empEndorsementModel->save(['pk' => (int)$data['emp_policy_id'],'emp_code' => $data['emp_code'],'table_name' => 'employee_polices','actions' => 'd','name' => $data['name'],'field_name' => 'date_of_exit','old_value' => $data['date_of_exit'],'new_value' => change_date_format($row[4],'d-M-Y','Y-m-d'),'created_by' => $file['created_by'],'remarks' => 'general deletion','group_key' => $group_key]);
|
$this->empEndorsementModel->save(['pk' => (int)$data['emp_policy_id'],'emp_code' => $data['emp_code'],'table_name' => 'employee_polices','actions' => 'd','name' => $data['name'],'field_name' => 'date_of_exit','old_value' => $data['date_of_exit'],'new_value' => change_date_format($row[4],'d-M-Y','Y-m-d'),'created_by' => $file['created_by'],'remarks' => 'general deletion','group_key' => $group_key,'file_id' => $file['id']]);
|
||||||
$this->empEndorsementModel->save(['pk' => (int)$data['emp_policy_id'],'emp_code' => $data['emp_code'],'table_name' => 'employee_polices','actions' => 'd','name' => $data['name'],'field_name' => 'reason_for_exit','old_value' => $data['reason_for_exit'],'new_value' => $row[5],'created_by' => $file['created_by'],'remarks' => 'general deletion','group_key' => $group_key]);
|
$this->empEndorsementModel->save(['pk' => (int)$data['emp_policy_id'],'emp_code' => $data['emp_code'],'table_name' => 'employee_polices','actions' => 'd','name' => $data['name'],'field_name' => 'reason_for_exit','old_value' => $data['reason_for_exit'],'new_value' => $row[5],'created_by' => $file['created_by'],'remarks' => 'general deletion','group_key' => $group_key,'file_id' => $file['id']]);
|
||||||
$this->empEndorsementModel->save(['pk' => (int)$data['emp_policy_id'],'emp_code' => $data['emp_code'],'table_name' => 'employee_polices','actions' => 'd','name' => $data['name'],'field_name' => 'status','old_value' => $data['status'],'new_value' => 'deactivate','created_by' => $file['created_by'],'remarks' => 'general deletion','group_key' => $group_key]);
|
$this->empEndorsementModel->save(['pk' => (int)$data['emp_policy_id'],'emp_code' => $data['emp_code'],'table_name' => 'employee_polices','actions' => 'd','name' => $data['name'],'field_name' => 'status','old_value' => $data['status'],'new_value' => 'deactivate','created_by' => $file['created_by'],'remarks' => 'general deletion','group_key' => $group_key,'file_id' => $file['id']]);
|
||||||
};
|
};
|
||||||
//iterate each row
|
//iterate each row
|
||||||
foreach ($excel_data as $col_key => $row)
|
foreach ($excel_data as $col_key => $row)
|
||||||
@ -738,7 +738,7 @@ class EmployeeServiceController extends AdminController
|
|||||||
if(!count($existing_endorsements))
|
if(!count($existing_endorsements))
|
||||||
{
|
{
|
||||||
$group_key = rand(100000, 999999);
|
$group_key = rand(100000, 999999);
|
||||||
$this->empEndorsementModel->save(['pk' => (int)$employee['id'],'emp_code' => $employee['emp_code'],'table_name' => 'employees','actions' => 'c','name' => $employee['name'],'field_name' => $field_name,'old_value' => $employee[ $field_name ],'new_value' => $field_value,'created_by' => $file['created_by'],'remarks' => $row[7],'date_of_correction' => change_date_format($row[5],'d-M-Y','Y-m-d'),'group_key' => $group_key]);
|
$this->empEndorsementModel->save(['pk' => (int)$employee['id'],'emp_code' => $employee['emp_code'],'table_name' => 'employees','actions' => 'c','name' => $employee['name'],'field_name' => $field_name,'old_value' => $employee[ $field_name ],'new_value' => $field_value,'created_by' => $file['created_by'],'remarks' => $row[7],'date_of_correction' => change_date_format($row[5],'d-M-Y','Y-m-d'),'group_key' => $group_key,'file_id' => $file['id']]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -803,9 +803,9 @@ class EmployeeServiceController extends AdminController
|
|||||||
if($slab_value['si'] == $row[3])
|
if($slab_value['si'] == $row[3])
|
||||||
{
|
{
|
||||||
$group_key = rand(100000, 999999);
|
$group_key = rand(100000, 999999);
|
||||||
$this->empEndorsementModel->save(['pk' => (int)$employee['id'],'emp_code' => $employee['emp_code'],'table_name' => 'employee_polices','actions' => 'si','name' => $employee['name'],'field_name' => 'basic_cover_si','old_value' => $employee_policy['basic_cover_si'],'new_value' => $row[3],'created_by' => $file['created_by'],'remarks' => 'general si enhancement','group_key' => $group_key]);
|
$this->empEndorsementModel->save(['pk' => (int)$employee['id'],'emp_code' => $employee['emp_code'],'table_name' => 'employee_polices','actions' => 'si','name' => $employee['name'],'field_name' => 'basic_cover_si','old_value' => $employee_policy['basic_cover_si'],'new_value' => $row[3],'created_by' => $file['created_by'],'remarks' => 'general si enhancement','group_key' => $group_key,'file_id' => $file['id']]);
|
||||||
$this->empEndorsementModel->save(['pk' => (int)$employee['id'],'emp_code' => $employee['emp_code'],'table_name' => 'employee_polices','actions' => 'si','name' => $employee['name'],'field_name' => 'premium','old_value' => $employee_policy['premium'],'new_value' => $slab_value['premium'],'created_by' => $file['created_by'],'remarks' => 'general si enhancement','group_key' => $group_key]);
|
$this->empEndorsementModel->save(['pk' => (int)$employee['id'],'emp_code' => $employee['emp_code'],'table_name' => 'employee_polices','actions' => 'si','name' => $employee['name'],'field_name' => 'premium','old_value' => $employee_policy['premium'],'new_value' => $slab_value['premium'],'created_by' => $file['created_by'],'remarks' => 'general si enhancement','group_key' => $group_key,'file_id' => $file['id']]);
|
||||||
$this->empEndorsementModel->save(['pk' => (int)$employee['id'],'emp_code' => $employee['emp_code'],'table_name' => 'employee_polices','actions' => 'si','name' => $employee['name'],'field_name' => 'si_enhancement_date','old_value' => null,'new_value' => change_date_format($row[4],'d-M-Y','Y-m-d'),'created_by' => $file['created_by'],'remarks' => 'general si enhancement','group_key' => $group_key]);
|
$this->empEndorsementModel->save(['pk' => (int)$employee['id'],'emp_code' => $employee['emp_code'],'table_name' => 'employee_polices','actions' => 'si','name' => $employee['name'],'field_name' => 'si_enhancement_date','old_value' => null,'new_value' => change_date_format($row[4],'d-M-Y','Y-m-d'),'created_by' => $file['created_by'],'remarks' => 'general si enhancement','group_key' => $group_key,'file_id' => $file['id']]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -844,7 +844,7 @@ if (!function_exists('premium_calculation_manager'))
|
|||||||
$emp_data['policy_details']['policy_end_date'] = $policy_terms['policy_end_date'];
|
$emp_data['policy_details']['policy_end_date'] = $policy_terms['policy_end_date'];
|
||||||
$emp_data['policy_details']['days'] = calculate_days_bw_dates($policy_terms['policy_start_date'],$policy_terms['policy_end_date'])->days;
|
$emp_data['policy_details']['days'] = calculate_days_bw_dates($policy_terms['policy_start_date'],$policy_terms['policy_end_date'])->days;
|
||||||
$emp_data['policy_details']['premium'] = $slab_value['premium'];
|
$emp_data['policy_details']['premium'] = $slab_value['premium'];
|
||||||
$emp_data['policy_details']['rata_premimum'] = calculate_pro_rata_premimum($slab_value['premium'],$emp_data['policy_details']['days'];
|
$emp_data['policy_details']['rata_premimum'] = calculate_pro_rata_premimum($slab_value['premium'],$emp_data['policy_details']['days']);
|
||||||
$emp_data['policy_details']['gst'] = ((float) number_format(($emp_data['policy_details']['rata_premimum'] * (18/100)),2,'.',''));
|
$emp_data['policy_details']['gst'] = ((float) number_format(($emp_data['policy_details']['rata_premimum'] * (18/100)),2,'.',''));
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|||||||
@ -25,7 +25,8 @@ class EmpEndorsementModel extends Model
|
|||||||
"created_by",
|
"created_by",
|
||||||
"updated_by",
|
"updated_by",
|
||||||
"is_active",
|
"is_active",
|
||||||
"remarks"
|
"remarks",
|
||||||
|
"file_id"
|
||||||
];
|
];
|
||||||
|
|
||||||
// Callbacks
|
// Callbacks
|
||||||
|
|||||||
@ -139,4 +139,30 @@ class EmployeeModel extends Model
|
|||||||
return $this->where('emp_code',$arr['emp_code'])->where('name',$arr['name'])->where('client_id', $arr['client_id'])->first();
|
return $this->where('emp_code',$arr['emp_code'])->where('name',$arr['name'])->where('client_id', $arr['client_id'])->first();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function getEmpListByFileId(int $file_id,array $emp_status = [],array $policy_status = [])
|
||||||
|
{
|
||||||
|
$result = $this->select(['employees.id as emp_id', 'employees.client_id', 'employees.relationship', 'employees.relationship_code', 'employees.change_event', 'employees.emp_code', 'employees.name', 'employees.email_personal', 'employees.email_corporate', 'employees.mobile', 'employees.gender', 'employees.dob', 'employees.doj', 'employees.basic_pay', 'employees.band', 'employees.designation', 'employees.emp_status','employee_polices.id as emp_policy_id', 'employee_polices.employee_id', 'employee_polices.client_policy_id', 'employee_polices.tpa_id', 'employee_polices.uhid', 'employee_polices.batch_code', 'employee_polices.status', 'employee_polices.pre_existing_alignments', 'employee_polices.basic_cover_si', 'employee_polices.date_coverage', 'employee_polices.policy_end_date', 'employee_polices.days', 'employee_polices.premium', 'employee_polices.rata_premimum', 'employee_polices.gst', 'employee_polices.date_of_exit', 'employee_polices.reason_for_exit'])
|
||||||
|
->join('employee_polices', 'employee_polices.employee_id = employees.id')
|
||||||
|
->where('employees.is_active',1)
|
||||||
|
->where('employees.file_id',$file_id)
|
||||||
|
->where('employee_polices.is_active',1)
|
||||||
|
// ->where('employee_polices.uhid is not null')
|
||||||
|
// ->where('employee_polices.tpa_id is not null')
|
||||||
|
->groupStart()
|
||||||
|
->orWhere('employee_polices.uhid is not null')
|
||||||
|
->orWhere('employee_polices.tpa_id is not null')
|
||||||
|
->groupEnd()
|
||||||
|
->when(count($emp_status), function($query) use ($emp_status){
|
||||||
|
return $query->whereIn('employees.emp_status', $emp_status);
|
||||||
|
})
|
||||||
|
->when(count($policy_status), function($query) use ($policy_status){
|
||||||
|
return $query->whereIn('employee_polices.status', $policy_status);
|
||||||
|
})
|
||||||
|
->findAll();
|
||||||
|
// ~dd($this->db->getLastQuery());
|
||||||
|
|
||||||
|
return ($result);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -86,6 +86,11 @@
|
|||||||
data-target="#full-width-modal-emp-list" class="dropdown-item view_emp_list"
|
data-target="#full-width-modal-emp-list" class="dropdown-item view_emp_list"
|
||||||
href="#"><i
|
href="#"><i
|
||||||
class="mdi mdi-eye mr-2 text-muted font-18 vertical-middle"></i>View</a>
|
class="mdi mdi-eye mr-2 text-muted font-18 vertical-middle"></i>View</a>
|
||||||
|
<?php if($file['status'] == 'success'){?>
|
||||||
|
<a data-id="<?php echo $file['id']?>" class="dropdown-item truncate"
|
||||||
|
href="#"><i
|
||||||
|
class="mdi mdi-delete mr-2 text-muted font-18 vertical-middle"></i>Truncate</a>
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -225,6 +230,80 @@ $('body').on('click', '.upload_button', function() {
|
|||||||
$('#file_upload_actions').val(fileId.action)
|
$('#file_upload_actions').val(fileId.action)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
$('body').on('click', '.truncate', function() {
|
||||||
|
event.preventDefault();
|
||||||
|
// console.log(event);
|
||||||
|
var fileId = JSON.parse(this.getAttribute('data-id'));
|
||||||
|
// alert('Hi' + fileId);
|
||||||
|
|
||||||
|
Swal.fire({
|
||||||
|
title: "Do you want to truncate data from uploaded file?",
|
||||||
|
showCancelButton: true,
|
||||||
|
confirmButtonText: "Delete",
|
||||||
|
confirmButtonColor: "#ff3333",
|
||||||
|
}).then((result) => {
|
||||||
|
|
||||||
|
console.log(result);
|
||||||
|
if (result.isConfirmed) {
|
||||||
|
$('.loader').fadeIn();
|
||||||
|
$('.loader-mask').fadeIn();
|
||||||
|
var apiURL = '<?php echo base_url();?>' + 'employee/truncate/' + fileId;
|
||||||
|
$.ajax({
|
||||||
|
url: apiURL,
|
||||||
|
method: 'GET',
|
||||||
|
headers: {
|
||||||
|
// "Content-Type": "application/json",
|
||||||
|
"X-Requested-With": "XMLHttpRequest"
|
||||||
|
},
|
||||||
|
success: function(response) {
|
||||||
|
// console.log(response.code);
|
||||||
|
// console.log(response.dataStatus);
|
||||||
|
// console.log(response.data);
|
||||||
|
setTimeout(function() {
|
||||||
|
$('.loader').fadeOut();
|
||||||
|
$('.loader-mask').delay(350).fadeOut('slow');
|
||||||
|
}, 1000);
|
||||||
|
|
||||||
|
|
||||||
|
if (response.code === 200 && response.dataStatus === true && response.data !== "") {
|
||||||
|
Swal.fire({
|
||||||
|
title: "Deleted!",
|
||||||
|
// text: "Data from truncated",
|
||||||
|
icon: "success"
|
||||||
|
});
|
||||||
|
} else if (response.code === 404 && response.dataStatus === false) {
|
||||||
|
console.error('no data found', response);
|
||||||
|
Swal.fire({
|
||||||
|
title: "Failed!",
|
||||||
|
text: response.message,
|
||||||
|
icon: "error"
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
|
||||||
|
Swal.fire({
|
||||||
|
title: "Failed!",
|
||||||
|
text: 'Something went wrong! Try later',
|
||||||
|
icon: "error"
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error: function(xhr, status, error) {
|
||||||
|
setTimeout(function() {
|
||||||
|
$('.loader').fadeOut();
|
||||||
|
$('.loader-mask').delay(350).fadeOut('slow');
|
||||||
|
}, 1000);
|
||||||
|
|
||||||
|
console.error('Error fetching data from API:', error);
|
||||||
|
toastr.error('Something went wrong! Try later', 'Error');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
$('#uploadForm').submit(function() {
|
$('#uploadForm').submit(function() {
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user