diff --git a/app/Config/Routes.php b/app/Config/Routes.php index 81be817..4edaa27 100755 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -156,6 +156,8 @@ $routes->group("/employee", ["filter" => "authMVC"], function ($routes) { $routes->get("test-rack-rate", "EmployeeController::testRackRate"); $routes->post("test-rack-rate", "EmployeeController::testRackRate"); $routes->get('test_members_list', 'EmployeeController::test_members_list'); + $routes->post('get_emp_history','EmployeeController::getEmpHistory'); + }); $routes->group("/master", ["filter" => "authMVC"], function ($routes) { diff --git a/app/Controllers/EmployeeController.php b/app/Controllers/EmployeeController.php index 2e5d202..e874d6f 100755 --- a/app/Controllers/EmployeeController.php +++ b/app/Controllers/EmployeeController.php @@ -25,6 +25,9 @@ use App\Models\InsurerExcelExportTemplateModel; use App\Models\InsurerModel; use App\Models\ClientDepositModel; use App\Models\PolicyPremium2Model; +use App\Models\AuditHistoryModel; +use App\Models\UserModel; + use App\Controllers\Jobs; @@ -64,6 +67,9 @@ class EmployeeController extends AdminController protected $insurerModel; protected $cashDepositModel; protected $PolicyPremium2Model; + protected $auditHistory; + protected $userModel; + public function __construct() { @@ -84,6 +90,8 @@ class EmployeeController extends AdminController $this->insurerModel = new InsurerModel(); $this->cashDepositModel = new ClientDepositModel(); $this->PolicyPremium2Model = new PolicyPremium2Model(); + $this->auditHistory = new AuditHistoryModel(); + $this->userModel = new userModel(); } public function list() @@ -2654,4 +2662,55 @@ class EmployeeController extends AdminController return $html; } + + + public function getEmpHistory(){ + + $emp_id = $this->request->getPost('emp_id'); + + $data['emp_history'] = $this->auditHistory->select('field_name,old_value,new_value,created_by,created_at')->where('pk',$emp_id)->where('table_name','employees')->orderBy('created_at', 'DESC')->findAll(); + + foreach ($data['emp_history'] as &$emp_history) { + $emp_history['field_name'] = $this->formatFieldName($emp_history['field_name']); + $user = $emp_history['created_by']; + + if ($user != null && $user != '') { + $userData = $this->userModel->select('first_name, last_name')->where('id', $user)->where('is_active', 1)->first(); + if ($userData) { + $emp_history['created_by'] = ucwords($userData['first_name'] . ' ' . $userData['last_name']); + } else { + $emp_history['created_by'] = '-'; + } + } else { + $emp_history['created_by'] = '-'; + } + + + $emp_history['created_at'] = date("d-m-Y H:i:s", strtotime($emp_history['created_at'])); + } + + unset($emp_history); + + $emp_pol_pk = $this->employeePolicyModel->select('id')->where('employee_id',$emp_id)->first()['id']; + $data['emp_pol_history'] = $this->auditHistory->select('field_name,old_value,new_value,created_by,created_at')->where('pk',$emp_pol_pk)->where('table_name','employee_polices')->findAll(); + + return $this->respond(['status' => true, 'data' => $data],200); + + + } + + public function formatFieldName($unformattedString){ + + if (str_contains($unformattedString, '_')) { + $data = str_replace('_', ' ', $unformattedString); + }else{ + $data = $unformattedString; + } + + $format = ucwords($data); + + return $format; + + } + } diff --git a/app/Views/employee_data_list.php b/app/Views/employee_data_list.php index e3d9a6e..caee58a 100755 --- a/app/Views/employee_data_list.php +++ b/app/Views/employee_data_list.php @@ -30,7 +30,7 @@ white-space: normal; } -.dataTables_filter{ +.dataTables_filter { position: absolute; } @@ -40,10 +40,9 @@ .readonly-select { pointer-events: none; - background-color: #f0f0f0; - color: #666; + background-color: #f0f0f0; + color: #666; } -