FIX_ISSUE

This commit is contained in:
VENKATESHWARAN 2026-02-07 12:39:02 +05:30
parent be6417761c
commit 57a4b946ca
3 changed files with 140 additions and 421 deletions

View File

@ -2665,439 +2665,154 @@ class ClientController extends AdminController
return $insert; return $insert;
} }
// Save Rack Rate function // Save Rack Rate function
public function createClientPolicyPremium() public function createClientPolicyPremium()
{ {
// echo json_encode(['key' => $this->request->getPost()]); die;
try { try {
$data = $this->request->getPost(); // 1. Fetch and Sanitize all input at once
$sanitized_post_data = sanitizeInputArrayAdvanced($data); $rawPost = $this->request->getPost();
$data = sanitizeInputArrayAdvanced($rawPost);
$client_id = $sanitized_post_data['client_id'] ?? null; // Extract base variables from the sanitized array
$client_policy_id = $sanitized_post_data['client_policy_id'] ?? null; $client_id = $data['client_id'] ?? null;
$record = $this->clientPolicyModel->where('client_policy.id', $client_policy_id)->first(); $client_policy_id = $data['client_policy_id'] ?? null;
$premium_type = $sanitized_post_data['premium_type'] ?? null; $premium_type = $data['premium_type'] ?? null;
if (!empty($client_id) && $client_id != null) { $policy_grid_id = $data['policy_grid_id'] ?? null;
$client_policy_data = $this->clientPolicyModel->where('id', $client_policy_id)->first(); $rack_rate_name = $data['rack_rate_name'] ?? null;
$client_id = $client_policy_data['client_id'] ?? null; $si_or_bp = $data['si_or_bp'] ?? null;
$record = $this->clientPolicyModel->where('id', $client_policy_id)->first();
if (!$record) {
return $this->respond(['status' => false, 'message' => 'Policy record not found'], 404);
} }
$branch_units = $this->getBranchUnitsByBranchId($record['client_branch_id']); if (empty($client_id)) {
$branch_units = json_decode($branch_units); $client_id = $record['client_id'];
}
$policy_grid_id = $sanitized_post_data['policy_grid_id'] ?? null; $branch_units_raw = $this->getBranchUnitsByBranchId($record['client_branch_id']);
$rack_rate_name = $sanitized_post_data['rack_rate_name'] ?? null; $branch_units = json_decode($branch_units_raw, true);
$default_unit = !empty($branch_units) ? $branch_units[0] : null;
// Relationship Logic
$relation_data = [ $relation_data = [
'self' => $sanitized_post_data['self'] ?? 'NA', 'self' => $data['self'] ?? 'NA',
'spouse' => $sanitized_post_data['spouse'] ?? 'NA', 'spouse' => $data['spouse'] ?? 'NA',
'childrens' => $sanitized_post_data['childrens'] ?? 'NA', 'childrens' => $data['childrens'] ?? 'NA',
'parents' => $sanitized_post_data['parents'] ?? 'NA', 'parents' => $data['parents'] ?? 'NA',
'parents-in-law' => $sanitized_post_data['parents-in-law'] ?? 'NA', 'parents-in-law' => $data['parents-in-law'] ?? 'NA',
]; ];
$relation_data_for_form_submit_check = [ if (in_array($policy_grid_id, ['1', '2'])) {
$rack_rate_name => [ $relation_data = ['self' => 1, 'spouse' => 'NA', 'childrens' => 'NA', 'parents' => 'NA', 'parents-in-law' => 'NA'];
'self' => $sanitized_post_data['self'] ?? 'NA',
'spouse' => $sanitized_post_data['spouse'] ?? 'NA',
'childrens' => $sanitized_post_data['childrens'] ?? 'NA',
'parents' => $sanitized_post_data['parents'] ?? 'NA',
'parents-in-law' => $sanitized_post_data['parents-in-law'] ?? 'NA',
]
];
if ($policy_grid_id == 1 || $policy_grid_id == 2) {
$relation_data = [
'self' => 1,
'spouse' => 'NA',
'childrens' => 'NA',
'parents' => 'NA',
'parents-in-law' => 'NA',
];
} }
// Convert to JSON
$jsonDataForRelation = json_encode($relation_data); $jsonDataForRelation = json_encode($relation_data);
$json_data_relation_data_for_form_submit_check = json_encode($relation_data_for_form_submit_check); $submit_check_json = json_encode([$rack_rate_name => $relation_data]);
$si_or_bp = $sanitized_post_data['si_or_bp'] ?? null; // Deactivate old records
$basic_multiplier = str_replace(',', '', $sanitized_post_data['basic_multiplier']); if (in_array($policy_grid_id, ['1', '2'])) {
$premium_multiplier = str_replace(',', '', $sanitized_post_data['premium_multiplier']); $this->policyPremium1Model->where(['client_id' => $client_id, 'client_policy_id' => $client_policy_id])->set(['is_active' => 0])->update();
$multiplier = str_replace(',', '', $sanitized_post_data['multiplier']);
$basic_pay = str_replace(',', '', $sanitized_post_data['basic_pay']);
$data = [];
$data['client_id'] = $client_id;
$data['client_policy_id'] = $client_policy_id;
$data['policy_grid_id'] = $policy_grid_id;
$data['premium_type'] = $premium_type;
$data['rack_rate_name'] = $rack_rate_name;
$data['additional_relationship'] = $jsonDataForRelation;
$premium = [];
if ($policy_grid_id == '1' || $policy_grid_id == '2') {
$this->policyPremium1Model->where('client_id', $client_id)->where('client_policy_id', $client_policy_id)->set('is_active', 0)->update();
} else { } else {
$this->policyPremium2Model->where('client_id', $client_id)->where('client_policy_id', $client_policy_id)->where('rack_rate_name', $rack_rate_name)->set('is_active', 0)->update(); $this->policyPremium2Model->where(['client_id' => $client_id, 'client_policy_id' => $client_policy_id, 'rack_rate_name' => $rack_rate_name])->set(['is_active' => 0])->update();
} }
// Helper closures for cleaning and unit selection
$cleanNum = fn($val) => str_replace(',', '', (string)($val ?? '0'));
$getUnit = fn($unitArr, $index) => (empty($unitArr[$index]) || $unitArr[$index] === 'undefined') ? $default_unit : $unitArr[$index];
$insert = false;
$baseInsertData = [
'client_id' => $client_id,
'client_policy_id' => $client_policy_id,
'policy_grid_id' => $policy_grid_id,
'premium_type' => $premium_type,
'rack_rate_name' => $rack_rate_name,
'additional_relationship' => $jsonDataForRelation
];
// --- Logic Switch based on Grid ID ---
if ($policy_grid_id == '1') { if ($policy_grid_id == '1') {
if ($si_or_bp == '1') { if ($si_or_bp == '1') {
$premiums = $data['gpa_sum_premium'] ?? [];
$premium = str_replace(',', '', $sanitized_post_data['gpa_sum_premium[]']); foreach ($premiums as $i => $p) {
$sum_insure = str_replace(',', '', $sanitized_post_data['gpa_sum_si[]']); $this->policyPremium1Model->insert(array_merge($baseInsertData, [
$multiplier = $sanitized_post_data['gpa_sum_multiplier'] ?? null; 'si' => $cleanNum($data['gpa_sum_si'][$i] ?? 0),
$unit = $sanitized_post_data['gpa_unit_1[]'] ?? null; 'premium' => $cleanNum($p),
'multiplier' => $data['gpa_sum_multiplier'] ?? null,
for ($i = 0; $i < count($premium); $i++) { 'si_or_bp' => $si_or_bp,
$data['si'] = $sum_insure[$i]; 'unit' => $getUnit($data['gpa_unit_1'] ?? [], $i)
$data['premium'] = $premium[$i]; ]));
$data['multiplier'] = $multiplier; $insert = true;
$data['si_or_bp'] = $sanitized_post_data['si_or_bp'] ?? null;
if (empty($unit) || !isset($unit[$i]) || empty($unit[$i])) {
$data['unit'] = $branch_units[0];
} else {
$data['unit'] = $unit[$i];
}
$policyPremium = $this->policyPremium1Model->insert($data);
} }
} else if ($si_or_bp == '3') { } else if ($si_or_bp == '3') {
$premiums = $data['gpa_sum_premium2'] ?? [];
$premium = str_replace(',', '', $sanitized_post_data['gpa_sum_premium2[]']); foreach ($premiums as $i => $p) {
$sum_insure = str_replace(',', '', $sanitized_post_data['gpa_sum_si2[]']); $this->policyPremium1Model->insert(array_merge($baseInsertData, [
$multiplier = $sanitized_post_data['gpa_sum_multiplier2'] ?? null; 'si' => $cleanNum($data['gpa_sum_si2'][$i] ?? 0),
$grade = $sanitized_post_data['gpa_band[]'] ?? null; 'premium' => $cleanNum($p),
$unit = $sanitized_post_data['gpa_unit_3[]'] ?? null; 'grade' => $data['gpa_band'][$i] ?? null,
'multiplier' => $data['gpa_sum_multiplier2'] ?? null,
'si_or_bp' => $si_or_bp,
for ($i = 0; $i < count($premium); $i++) { 'unit' => $getUnit($data['gpa_unit_3'] ?? [], $i)
$data['si'] = $sum_insure[$i]; ]));
$data['premium'] = $premium[$i]; $insert = true;
$data['grade'] = $grade[$i];
$data['multiplier'] = $multiplier;
$data['si_or_bp'] = $sanitized_post_data['si_or_bp'] ?? null;
if (empty($unit) || !isset($unit[$i]) || empty($unit[$i])) {
$data['unit'] = $branch_units[0];
} else {
$data['unit'] = $unit[$i];
}
$policyPremium = $this->policyPremium1Model->insert($data);
} }
} else if ($si_or_bp == '2') { } else if ($si_or_bp == '2') {
$premiums = $data['gpa_basic_premium'] ?? [];
$premium = str_replace(',', '', $sanitized_post_data['gpa_basic_premium[]']); foreach ($premiums as $i => $p) {
$sum_insure = str_replace(',', '', $sanitized_post_data['gpa_basic_si[]']); $this->policyPremium1Model->insert(array_merge($baseInsertData, [
$basic_pay = str_replace(',', '', $sanitized_post_data['basic_pay[]']); 'si_or_bp' => $si_or_bp,
$unit = $sanitized_post_data['gpa_unit[]'] ?? null; 'basic_multiplier' => $cleanNum($data['basic_multiplier'] ?? 0),
'multiplier' => $cleanNum($data['premium_multiplier'] ?? 0),
'basic_pay' => $cleanNum($data['basic_pay'][$i] ?? 0),
for ($i = 0; $i < count($premium); $i++) { 'si' => $cleanNum($data['gpa_basic_si'][$i] ?? 0),
'premium' => $cleanNum($p),
$data['si_or_bp'] = $sanitized_post_data['si_or_bp'] ?? null; 'unit' => $getUnit($data['gpa_unit'] ?? [], $i)
$data['basic_multiplier'] = str_replace(',', '', $sanitized_post_data['basic_multiplier']); ]));
$data['multiplier'] = $sanitized_post_data['premium_multiplier'] ?? null; $insert = true;
$data['basic_pay'] = $basic_pay[$i];
$data['si'] = $sum_insure[$i];
$data['premium'] = $premium[$i];
if (empty($unit) || !isset($unit[$i]) || empty($unit[$i])) {
$data['unit'] = $branch_units[0];
} else {
$data['unit'] = $unit[$i];
}
$policyPremium = $this->policyPremium1Model->insert($data);
} }
} else {
$data['premium'] = str_replace(',', '', $sanitized_post_data['gpa_basic_premium']);
$data['si'] = str_replace(',', '', $sanitized_post_data['gpa_basic_si']);
$data['basic_multiplier'] = str_replace(',', '', $sanitized_post_data['basic_multiplier']);
$data['multiplier'] = $sanitized_post_data['premium_multiplier'] ?? null;
$data['basic_pay'] = str_replace(',', '', $sanitized_post_data['basic_pay']);
$data['si_or_bp'] = $sanitized_post_data['si_or_bp'] ?? null;
$policyPremium = $this->policyPremium1Model->insert($data);
} }
} else if (in_array($policy_grid_id, ['2', '9'])) {
$data = $sanitized_post_data; $premiums = $data['gpa_premium29'] ?? [];
$insert = true; $model = ($policy_grid_id == '2') ? $this->policyPremium1Model : $this->policyPremium2Model;
} else if ($policy_grid_id == '2') { foreach ($premiums as $i => $p) {
$model->insert(array_merge($baseInsertData, [
$premium = $sanitized_post_data['gpa_premium29[]'] ?? null; 'premium' => $cleanNum($p),
$sum_insure = $sanitized_post_data['gpa_si29[]'] ?? null; 'si' => $cleanNum($data['gpa_si29'][$i] ?? 0),
$unit = $sanitized_post_data['gpa_unit29[]'] ?? null; 'unit' => $getUnit($data['gpa_unit29'] ?? [], $i)
]));
for ($i = 0; $i < count($premium); $i++) { $insert = true;
$data['premium'] = str_replace(',', '', $premium[$i]);
$data['si'] = str_replace(',', '', $sum_insure[$i]);
if (empty($unit) || !isset($unit[$i]) || empty($unit[$i])) {
$data['unit'] = $branch_units[0];
} else {
$data['unit'] = $unit[$i];
}
$dataa = $this->policyPremium1Model->insert($data);
} }
} else {
// Handles grids 3, 4, 5, 6, 7, 8, 10, 11, 12, 13
$pfx = $policy_grid_id . "_";
$premiums = $data[$pfx . 'premium'] ?? [];
$is_si_array = is_array($data[$pfx . 'si'] ?? null);
$data = $sanitized_post_data; foreach ($premiums as $i => $p) {
$insert = true; $this->policyPremium2Model->insert(array_merge($baseInsertData, [
} else if ($policy_grid_id == '3') { 'premium' => $cleanNum($p),
'si' => $cleanNum($is_si_array ? ($data[$pfx . 'si'][$i] ?? 0) : ($data[$pfx . 'si'] ?? 0)),
$premium = $sanitized_post_data['3_premium[]'] ?? null; 'unit' => $getUnit($data[$pfx . 'unit'] ?? [], $i),
$sum_insure = $sanitized_post_data['3_si[]'] ?? null; 'age_from' => $data[$pfx . 'age_from'][$i] ?? null,
$unit = $sanitized_post_data['3_unit[]'] ?? null; 'age_to' => $data[$pfx . 'age_to'][$i] ?? null,
'grade' => $data[$pfx . 'grade'][$i] ?? null,
for ($i = 0; $i < count($premium); $i++) { 'relationship' => $data[$pfx . 'relationship'][$i] ?? null,
$data['premium'] = str_replace(',', '', $premium[$i]); 'max_si' => $cleanNum($data[$pfx . 'max_si'][$i] ?? 0)
$data['si'] = str_replace(',', '', $sum_insure[$i]); ]));
if (empty($unit) || !isset($unit[$i]) || empty($unit[$i])) { $insert = true;
$data['unit'] = $branch_units[0];
} else {
$data['unit'] = $unit[$i];
}
$dataa = $this->policyPremium2Model->insert($data);
} }
$data = $sanitized_post_data;
$insert = true;
} else if ($policy_grid_id == '4') {
$premium = $sanitized_post_data['4_premium[]'] ?? null;
$sum_insure = $sanitized_post_data['4_si'] ?? null;
$age_from = $sanitized_post_data['4_age_from[]'] ?? null;
$age_to = $sanitized_post_data['4_age_to[]'] ?? null;
$unit = $sanitized_post_data['4_unit[]'] ?? null;
for ($i = 0; $i < count($premium); $i++) {
$data['premium'] = str_replace(',', '', $premium[$i]);
$data['si'] = str_replace(',', '', $sum_insure);
$data['age_from'] = $age_from[$i];
$data['age_to'] = $age_to[$i];
if (empty($unit) || !isset($unit[$i]) || empty($unit[$i])) {
$data['unit'] = $branch_units[0];
} else {
$data['unit'] = $unit[$i];
}
$dataa = $this->policyPremium2Model->insert($data);
}
$data = $sanitized_post_data;
$insert = true;
} else if ($policy_grid_id == '5') {
$premium = $sanitized_post_data['5_premium[]'] ?? null;
$sum_insure = $sanitized_post_data['5_si[]']?? null;
$age_from = $sanitized_post_data['5_age_from[]']?? null;
$age_to = $sanitized_post_data['5_age_to[]']?? null;
$unit = $sanitized_post_data['5_unit[]']?? null;
for ($i = 0; $i < count($premium); $i++) {
$data['premium'] = str_replace(',', '', $premium[$i]);
$data['si'] = str_replace(',', '', $sum_insure[$i]);
$data['age_from'] = $age_from[$i];
$data['age_to'] = $age_to[$i];
if (empty($unit) || !isset($unit[$i]) || empty($unit[$i] || $unit[$i] == 'undefined')) {
$data['unit'] = $branch_units[0];
} else {
$data['unit'] = $unit[$i];
}
$dataa = $this->policyPremium2Model->insert($data);
}
$data = $sanitized_post_data;
$insert = true;
} else if ($policy_grid_id == '6') {
$premium = $sanitized_post_data['6_premium[]']?? null;
$sum_insure = $sanitized_post_data['6_si']?? null;
$age_from = $sanitized_post_data['6_age_from[]']?? null;
$age_to = $sanitized_post_data['6_age_to[]']?? null;
$unit = $sanitized_post_data['6_unit[]']?? null;
for ($i = 0; $i < count($premium); $i++) {
$data['premium'] = str_replace(',', '', $premium[$i]);
$data['si'] = str_replace(',', '', $sum_insure);
$data['age_from'] = $age_from[$i];
$data['age_to'] = $age_to[$i];
if (empty($unit) || !isset($unit[$i]) || empty($unit[$i])) {
$data['unit'] = $branch_units[0];
} else {
$data['unit'] = $unit[$i];
}
$dataa = $this->policyPremium2Model->insert($data);
}
$data = $sanitized_post_data;
$insert = true;
} else if ($policy_grid_id == '7') {
$premium = $sanitized_post_data['7_premium[]'] ?? null;
$sum_insure = $sanitized_post_data['7_si[]'] ?? null;
$age_from = $sanitized_post_data['7_age_from[]'] ?? null;
$age_to = $sanitized_post_data['7_age_to[]'] ?? null;
$unit = $sanitized_post_data['7_unit[]'] ?? null;
for ($i = 0; $i < count($premium); $i++) {
$data['premium'] = str_replace(',', '', $premium[$i]);
$data['si'] = str_replace(',', '', $sum_insure[$i]);
$data['age_from'] = $age_from[$i];
$data['age_to'] = $age_to[$i];
if (empty($unit) || !isset($unit[$i]) || empty($unit[$i])) {
$data['unit'] = $branch_units[0];
} else {
$data['unit'] = $unit[$i];
}
$dataa = $this->policyPremium2Model->insert($data);
}
$data = $sanitized_post_data;
$insert = true;
} else if ($policy_grid_id == '8') {
$premium = $sanitized_post_data['8_premium[]']?? null;
$sum_insure = $sanitized_post_data['8_si[]']?? null;
$grade = $sanitized_post_data['8_grade[]']?? null;
$unit = $sanitized_post_data['8_unit[]']?? null;
for ($i = 0; $i < count($premium); $i++) {
$data['premium'] = str_replace(',', '', $premium[$i]);
$data['si'] = str_replace(',', '', $sum_insure[$i]);
$data['grade'] = $grade[$i];
if (empty($unit) || !isset($unit[$i]) || empty($unit[$i])) {
$data['unit'] = $branch_units[0];
} else {
$data['unit'] = $unit[$i];
}
$dataa = $this->policyPremium2Model->insert($data);
}
$data = $sanitized_post_data;
$insert = true;
} else if ($policy_grid_id == '9') {
$premium = $sanitized_post_data['gpa_premium29[]']?? null;
$sum_insure = $sanitized_post_data['gpa_si29[]']?? null;
$unit = $sanitized_post_data['gpa_unit29[]']?? null;
for ($i = 0; $i < count($premium); $i++) {
$data['premium'] = str_replace(',', '', $premium[$i]);
$data['si'] = str_replace(',', '', $sum_insure[$i]);
if (empty($unit) || !isset($unit[$i]) || empty($unit[$i])) {
$data['unit'] = $branch_units[0];
} else {
$data['unit'] = $unit[$i];
}
$dataa = $this->policyPremium2Model->insert($data);
}
$data = $sanitized_post_data;
$insert = true;
} else if ($policy_grid_id == '10') {
$premium = $sanitized_post_data['10_premium[]']?? null;
$sum_insure = $sanitized_post_data['10_si[]']?? null;
$age_from = $sanitized_post_data['10_age_from[]']?? null;
$age_to = $sanitized_post_data['10_age_to[]']?? null;
$unit = $sanitized_post_data['10_unit[]']?? null;
for ($i = 0; $i < count($premium); $i++) {
$data['premium'] = str_replace(',', '', $premium[$i]);
$data['si'] = str_replace(',', '', $sum_insure[$i]);
$data['age_from'] = $age_from[$i];
$data['age_to'] = $age_to[$i];
if (empty($unit) || !isset($unit[$i]) || empty($unit[$i])) {
$data['unit'] = $branch_units[0];
} else {
$data['unit'] = $unit[$i];
}
$policyPremium = $this->policyPremium2Model->insert($data);
}
$data = $sanitized_post_data;
$insert = true;
} else if ($policy_grid_id == '11') {
$premium = $sanitized_post_data['11_premium[]']?? null;
$sum_insure = $sanitized_post_data['11_si[]']?? null;
$grade = $sanitized_post_data['11_grade[]']?? null;
$max_sum_insure = $sanitized_post_data['11_max_si[]']?? null;
$unit = $sanitized_post_data['11_unit[]']?? null;
for ($i = 0; $i < count($premium); $i++) {
$data['premium'] = str_replace(',', '', $premium[$i]);
$data['si'] = str_replace(',', '', $sum_insure[$i]);
$data['grade'] = $grade[$i];
$data['max_si'] = str_replace(',', '', $max_sum_insure[$i]);
if (empty($unit) || !isset($unit[$i]) || empty($unit[$i])) {
$data['unit'] = $branch_units[0];
} else {
$data['unit'] = $unit[$i];
}
$dataa = $this->policyPremium2Model->insert($data);
}
$data = $sanitized_post_data;
$insert = true;
} else if ($policy_grid_id == '12') {
$premium = $sanitized_post_data['12_premium[]']?? null;
$sum_insure = $sanitized_post_data['12_si[]']?? null;
$relationship = $sanitized_post_data['12_relationship[]']?? null;
$unit = $sanitized_post_data['12_unit[]']?? null;
for ($i = 0; $i < count($premium); $i++) {
$data['premium'] = str_replace(',', '', $premium[$i]);
$data['si'] = str_replace(',', '', $sum_insure[$i]);
$data['relationship'] = $relationship[$i];
if (empty($unit) || !isset($unit[$i]) || empty($unit[$i])) {
$data['unit'] = $branch_units[0];
} else {
$data['unit'] = $unit[$i];
}
$dataa = $this->policyPremium2Model->insert($data);
}
$data = $sanitized_post_data;
$insert = true;
} else if ($policy_grid_id == '13') {
$premium = $sanitized_post_data['13_premium[]']?? null;
$sum_insure = $sanitized_post_data['13_si[]']?? null;
$age_from = $sanitized_post_data['13_age_from[]']?? null;
$age_to = $sanitized_post_data['13_age_to[]']?? null;
$relationship = $sanitized_post_data['13_relationship[]']?? null;
$unit = $sanitized_post_data['13_unit[]']?? null;
for ($i = 0; $i < count($premium); $i++) {
$data['premium'] = str_replace(',', '', $premium[$i]);
$data['si'] = str_replace(',', '', $sum_insure[$i]);
$data['age_from'] = $age_from[$i];
$data['age_to'] = $age_to[$i];
$data['relationship'] = $relationship[$i];
if (empty($unit) || !isset($unit[$i]) || empty($unit[$i])) {
$data['unit'] = $branch_units[0];
} else {
$data['unit'] = $unit[$i];
}
$dataa = $this->policyPremium2Model->insert($data);
}
$data = $sanitized_post_data;
$insert = true;
} }
if ($insert) { if ($insert) {
return $this->respond(['status' => true, 'code' => 200, 'data' => $data, 'rack_rate_json' => $json_data_relation_data_for_form_submit_check,], 200); return $this->respond(['status' => true, 'code' => 200, 'data' => $data, 'rack_rate_json' => $submit_check_json], 200);
} else {
return $this->respond(['status' => false, 'code' => 404, 'data' => $data, 'message' => 'no data found'], 200);
} }
return $this->respond(['status' => false, 'code' => 404, 'message' => 'No data found'], 200);
} catch (\Exception $e) { } catch (\Exception $e) {
echo 'Error: ' . $e->getMessage() . ' at line no ' . $e->getLine(); return $this->respond(['status' => false, 'message' => $e->getMessage() . ' line ' . $e->getLine()], 500);
} }
} }

View File

@ -2744,27 +2744,26 @@ class EmployeeController extends AdminController
{ {
$rules = [ $rules = [
'emp_code' => [ // 'emp_code' => [
'rules' => 'required', // 'rules' => 'required',
'errors' => [ // 'errors' => [
'required' => 'Employee Code is missing' // 'required' => 'Employee Code is missing'
] // ]
], // ],
// 'name' => [
'name' => [ // 'rules' => 'required|min_length[2]|max_length[100]',
'rules' => 'required|min_length[2]|max_length[100]', // 'errors' => [
'errors' => [ // 'required' => 'Employee name is required',
'required' => 'Employee name is required', // 'min_length' => 'Name must be at least 2 characters',
'min_length' => 'Name must be at least 2 characters', // 'max_length' => 'Name cannot exceed 100 characters'
'max_length' => 'Name cannot exceed 100 characters' // ]
] // ],
], // 'gender' => [
'gender' => [ // 'rules' => 'permit_empty|in_list[M,F]',
'rules' => 'permit_empty|in_list[M,F]', // 'errors' => [
'errors' => [ // 'in_list' => 'Invalid gender selected'
'in_list' => 'Invalid gender selected' // ]
] // ],
],
'email_corporate' => [ 'email_corporate' => [
'rules' => 'required|valid_email', 'rules' => 'required|valid_email',
'errors' => [ 'errors' => [
@ -2772,7 +2771,6 @@ class EmployeeController extends AdminController
'valid_email' => 'Enter a valid email address' 'valid_email' => 'Enter a valid email address'
] ]
], ],
'mobile' => [ 'mobile' => [
'rules' => 'required|numeric|exact_length[10]', 'rules' => 'required|numeric|exact_length[10]',
'errors' => [ 'errors' => [

View File

@ -2501,6 +2501,12 @@ class EmployeeRestController extends AdminController
$search_data = $this->request->getJSON(true); // Get JSON as associative array $search_data = $this->request->getJSON(true); // Get JSON as associative array
if ( isset($search_data['client_id']) &&is_string($search_data['client_id']) && preg_match('/^[a-f0-9]{32}$/i', $search_data['client_id'])) {
$client_data = $this->clientModel->where('MD5(id)', $search_data['client_id'])->first();
$search_data['client_id'] = $client_data['id'] ?? null;
}
$client_id = isset($search_data['client_id']) ? (int) $search_data['client_id'] : 0; $client_id = isset($search_data['client_id']) ? (int) $search_data['client_id'] : 0;
unset($search_data['client_id']); unset($search_data['client_id']);
unset($search_data['client_branch_id']); unset($search_data['client_branch_id']);
@ -2612,7 +2618,7 @@ class EmployeeRestController extends AdminController
$builder->where('tm.is_active', 1); $builder->where('tm.is_active', 1);
if ($client_id > 0) { if ($client_id > 0) {
$builder->where('md5(tm.client_id)', $client_id); $builder->where('tm.client_id', $client_id);
} }
if (!empty($from_date) && !empty($to_date)) { if (!empty($from_date) && !empty($to_date)) {