Merge branch 'dev' of bitbucket.org:jubilian/nhance into dev

This commit is contained in:
bitbucket 2024-04-18 11:46:31 +05:30
commit 12d1b898e1
2 changed files with 49 additions and 41 deletions

View File

@ -24,6 +24,10 @@ use App\Controllers\Jobs;
use PhpOffice\PhpSpreadsheet\Spreadsheet;
// use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
use PhpOffice\PhpSpreadsheet\Reader\Xlsx;
use PhpOffice\PhpSpreadsheet\IOFactory;
use PhpOffice\PhpSpreadsheet\Reader\Exception as SpreadsheetReaderException;
use function PHPUnit\Framework\returnSelf;
class EmpDataServiceController extends BaseController
{
@ -479,6 +483,12 @@ class EmpDataServiceController extends BaseController
$file = $import_data['file'];
$data = $this->readExcelToArray($file);
if (!$data) {
return 0;
}
unset($data[0]);
array_pop($data);
$count = count($data);
@ -491,18 +501,16 @@ class EmpDataServiceController extends BaseController
try {
if($import_data['insurer_or_tpa'] == 'tpa'){
if ($import_data['insurer_or_tpa'] == 'tpa') {
if ($value[15] === null) {
$missing_id[] = $key + 1;
}
} else if ($import_data['insurer_or_tpa'] == 'insurer') {
}else if($import_data['insurer_or_tpa'] == 'insurer'){
if ( $value[16] === null) {
if ($value[16] === null) {
$missing_id[] = $key + 1;
}
}
$emp_code = $value[2];
@ -519,14 +527,12 @@ class EmpDataServiceController extends BaseController
$query->where('employees.client_id', $client_id);
$query->where('employees.name', $name);
$query->where('employees.emp_code', $emp_code);
if($import_data['insurer_or_tpa'] == 'tpa'){
if ($import_data['insurer_or_tpa'] == 'tpa') {
$query->where('(employee_polices.tpa_id IS NULL OR employee_polices.tpa_id = "")');
}else if($import_data['insurer_or_tpa'] == 'insurer'){
} else if ($import_data['insurer_or_tpa'] == 'insurer') {
$query->where('(employee_polices.uhid IS NULL OR employee_polices.uhid = "")');
}
$query->where('employee_polices.is_active', 1);
$query->limit(1);
@ -547,7 +553,7 @@ class EmpDataServiceController extends BaseController
$empty_id_count = count($empty_emp_tpa_uh_ids);
if($import_data['insurer_or_tpa'] == 'tpa'){
if ($import_data['insurer_or_tpa'] == 'tpa') {
if ($empty_id_count == 0) {
@ -558,9 +564,7 @@ class EmpDataServiceController extends BaseController
return 2;
}
}else if($import_data['insurer_or_tpa'] == 'insurer'){
} else if ($import_data['insurer_or_tpa'] == 'insurer') {
if ($empty_id_count == 0) {
@ -571,7 +575,6 @@ class EmpDataServiceController extends BaseController
return 4;
}
}
// if ($missing_id_count != $count) {
@ -585,7 +588,7 @@ class EmpDataServiceController extends BaseController
// return 3;
// }
// dd($empty_emp_tpa_uh_ids);
@ -607,15 +610,14 @@ class EmpDataServiceController extends BaseController
if (!empty($value)) {
if($import_data['insurer_or_tpa'] == 'tpa'){
if ($import_data['insurer_or_tpa'] == 'tpa') {
$tpa_id = $value[15] !== null ? $value[15] : '';
$uhid = $value[16] !== null ? $value[16] : '';
$data = ['tpa_id' => $tpa_id, 'uhid' => $uhid];
}else if($import_data['insurer_or_tpa'] == 'insurer'){
} else if ($import_data['insurer_or_tpa'] == 'insurer') {
$tpa_id = $value[15] !== null ? $value[15] : '';
$uhid = $value[16] !== null ? $value[16] : '';
@ -623,11 +625,9 @@ class EmpDataServiceController extends BaseController
}
foreach ($empty_emp_tpa_uh_ids as $id) {
$this->employeePolicyModel->where('id', $id)->set($data)->update();
}
} else {
return 0;
@ -1532,34 +1532,42 @@ class EmpDataServiceController extends BaseController
public function readExcelToArray($file)
{
if ($file->isValid() && !$file->hasMoved()) {
$file = $file;
try {
$reader = new Xlsx();
$spreadsheet = $reader->load($file->getPathname());
// Get the active sheet
$sheet = $spreadsheet->getActiveSheet();
// Iterate through rows to read data
$data = [];
foreach ($sheet->getRowIterator() as $row) {
$rowData = [];
foreach ($row->getCellIterator() as $cell) {
$rowData[] = $cell->getValue();
$reader = IOFactory::createReaderForFile($file->getPathname());
$spreadsheet = $reader->load($file->getPathname());
// Get the active sheet
$sheet = $spreadsheet->getActiveSheet();
// Iterate through rows to read data
$data = [];
foreach ($sheet->getRowIterator() as $row) {
$rowData = [];
foreach ($row->getCellIterator() as $cell) {
$rowData[] = $cell->getValue();
}
$data[] = $rowData;
}
$data[] = $rowData;
return $data;
} catch (SpreadsheetReaderException $e) {
error_log('PhpSpreadsheet reader exception: ' . $e->getMessage());
return false;
}
return $data;
} else {
return false;
}
}
public function insertBatchFileAndBatchListForImportExcel($data, $ids)

View File

@ -409,7 +409,7 @@ class EmployeeController extends AdminController
return redirect()->to(base_url('employee/upload'));
}else if($return == 3){
session()->setFlashdata('error', 'The following list of employees has already been updated with the TPA ID.');
session()->setFlashdata('error', 'The list of employees provided has already been updated with the TPA ID, or this is not the correct file');
return redirect()->to(base_url('employee/upload'));
}else if($return == 4){
@ -417,7 +417,7 @@ class EmployeeController extends AdminController
return redirect()->to(base_url('employee/upload'));
}else if($return == 5){
session()->setFlashdata('error', 'The following list of employees has already been updated with the UHID.');
session()->setFlashdata('error', 'The list of employees provided has already been updated with the UHID, or this is not the correct file');
return redirect()->to(base_url('employee/upload'));
}