diff --git a/app/Controllers/ClientController.php b/app/Controllers/ClientController.php
index db355961..2b6bb1ba 100755
--- a/app/Controllers/ClientController.php
+++ b/app/Controllers/ClientController.php
@@ -6103,7 +6103,7 @@ class ClientController extends AdminController
$empServiceController = new EmployeeServiceController();
// $res = $empServiceController->excelFileFormatValidation(['file_id' => '1248']);
- // $res = $empServiceController->excelFileDataValidation(['file_id' => '1248']);
+ // $res = $empServiceController->excelFileDataValidation(['file_id' => '1252']);
// $res = $empServiceController->employeesOnboardPreprocess(['file_id' => 1183]);
// $res = $empServiceController->employeesOnboardPreprocess(['file_id' => 1169]);
// $res = $empServiceController->employeesOnboardProcess(['file_id' => 835]);
diff --git a/app/Controllers/EmployeeServiceController.php b/app/Controllers/EmployeeServiceController.php
index 9942c87b..0547b05f 100755
--- a/app/Controllers/EmployeeServiceController.php
+++ b/app/Controllers/EmployeeServiceController.php
@@ -1196,6 +1196,20 @@ class EmployeeServiceController extends AdminController
}
}
+ // check the employee code if dublicate exist
+ if(($file['action'] == 'inception' || $file['action'] == 'missed_inception' || $file['action'] == 'addition' || $file['action'] == 'enrollment'))
+ {
+ $res = check_emp_code_duplication($family, $file);
+ // dd($res);
+ if($res['status'])
+ {
+ foreach ($res['row_ids'] as $row_id) {
+ array_push($result['error_summary'],26);
+ $result['error_data'][ $row_id ]['emp_id']['error'][] = "Employee Code is already exist in the system";
+ }
+ }
+ }
+
//check self avaialbe either same policy DB level(i.e.) gMC parents
if($file['action'] == 'dependent_addition' || ($policy_details['policy_type_id'] == 3 && !$is_self_available_in_policy_terms)) // 3 is GMC parents as base policy not as dep addon)
{
diff --git a/app/Helpers/excel_util_helper.php b/app/Helpers/excel_util_helper.php
index f1269f3d..98b171e5 100755
--- a/app/Helpers/excel_util_helper.php
+++ b/app/Helpers/excel_util_helper.php
@@ -514,6 +514,47 @@ if (!function_exists('name_and_empid_check_in_db')) {
}
}
+if (!function_exists('check_emp_code_duplication')) {
+ function check_emp_code_duplication($family_data, $actionArr)
+ {
+ $employeeModel = new EmployeeModel();
+ $row_ids = [];
+ $status = false;
+ $client_id = $actionArr['client_id'];
+ $policy_id = $actionArr['policy_id'];
+ $client_branch_id = $actionArr['client_branch_id'];
+ $current_action = $actionArr['action'];
+
+ foreach ($family_data as $rkey => $row) {
+
+ if ($current_action != 'dependent_addition' || (isset($row['temp']) && $row['temp']['source'] != 'db')) {
+ $res = $employeeModel
+ ->join('client_policy cp', "employees.client_id = cp.client_id")
+ ->join('employee_polices ep', "cp.id = ep.client_policy_id AND employees.id = ep.employee_id")
+ ->where("cp.id", $policy_id)
+ ->where("employees.client_id", $client_id)
+ ->where("employees.client_branch_id", $client_branch_id)
+ ->where("employees.is_active", 1)
+ ->where("employees.emp_status", 'active')
+ ->where("ep.is_active", 1)
+ ->where("ep.status", 'active')
+ ->where('TRIM(emp_code)', trim($row[1]))
+ ->findAll();
+
+ if(count($res) > 0){
+ $row_ids[] = $row[0];
+ }
+ }
+ }
+
+ if(!empty($row_ids)){
+ $status = true;
+ }
+
+ return ['status' => $status, 'row_ids' => $row_ids];
+ }
+}
+
if (!function_exists('check_dependent_conflict')) {
function check_dependent_conflict($family_data, $policy_terms, $actionArr, $is_lgbtq)
{
diff --git a/app/Views/employee_upload.php b/app/Views/employee_upload.php
index 5732111a..a04682a3 100755
--- a/app/Views/employee_upload.php
+++ b/app/Views/employee_upload.php
@@ -548,6 +548,11 @@ function fetchFileError(file_id) {
"Rule conflict: Twofold relationship found within family " +
err_count + "";
break;
+ case 26:
+ file_error_html +=
+ "Duplicate Employee code found " +
+ err_count + "";
+ break;
case 100:
hasError14 = true;
error_code = 14;