From 5700b1cc252c0ca684002e2035a8ca44832a89e5 Mon Sep 17 00:00:00 2001 From: vadivelJ96 Date: Tue, 14 Oct 2025 14:19:57 +0530 Subject: [PATCH 1/5] CHANGE_Mail_template_filename_issue - VADIVEL J 2025-10-14 --- app/Config/Routes.php | 1 + app/Controllers/TestingController.php | 72 +++++++++++++++++++++++++++ 2 files changed, 73 insertions(+) diff --git a/app/Config/Routes.php b/app/Config/Routes.php index 0cd7f7fe..58aa95b4 100755 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -713,6 +713,7 @@ $routes->group('test', function($routes) { $routes->get('mapping_client_id_and_branch_id','TestingController::mapping_client_id_and_branch_id'); $routes->get('membervalidation', 'TestingController::membervalidation'); $routes->get('generateExcel', 'TestingController::generateExcel'); + $routes->get('logo_renaming','TestingController::logo_renaming'); }); $routes->cli('cli/testcli', 'TestingController::testcli'); diff --git a/app/Controllers/TestingController.php b/app/Controllers/TestingController.php index d003037e..9104f3f5 100644 --- a/app/Controllers/TestingController.php +++ b/app/Controllers/TestingController.php @@ -715,4 +715,76 @@ class TestingController extends BaseController ]; } + + public function logo_renaming(){ + + $directory = ROOTPATH . 'public/uploads/logo/'; + + if (!is_dir($directory)) { + die("Directory not found: $directory"); + } + + $files = scandir($directory); + + $client_logo_files = $this->get_client_logo_files(); + + $rename_files = ""; + $failed_rename_files = ""; + + foreach ($files as $file) { + // Skip system entries + if ($file === '.' || $file === '..' ) { + continue; + } + + + $oldPath = $directory . $file; + + if (is_file($oldPath) && in_array(trim($file) , $client_logo_files)) { + + // Remove all spaces from filename + $newFileName = preg_replace('/\s+|\x{00A0}|\x{200B}|\x{200C}|\x{200D}|\x{FEFF}/u', '', $file); + + $newPath = $directory . $newFileName; + + // Only rename if the name changed + if ($oldPath !== $newPath) { + if (rename($oldPath, $newPath)) { + $rename_files .= "\n Renamed: $file → $newFileName \n"; + } else { + $failed_rename_files .= "\n Failed file: $file \n"; + } + } + } + } + log_message('error', 'Renamed Files: ' . $rename_files); + log_message('error', 'Failed Renames: ' . $failed_rename_files); + + return $this->response->setJSON(['status' => 'success', + 'message' => 'Logo renaming completed. kindly check backend logs for details', + 'data' => [ + 'renamed_files' => $rename_files, + 'failed_renames' => $failed_rename_files + ] + ])->setStatusCode(200); + } + + public function get_client_logo_files(){ + + $db = \Config\Database::connect(); + + $sql = "SELECT client_logo FROM clients WHERE client_logo IS NOT NULL AND TRIM(client_logo) <> '' "; + + $query = $db->query($sql); + + $results = $query->getResultArray() ?? []; + + $files = array_map(function($item) { + return trim($item['client_logo']); + }, $results); + + return $files; + } + + } From 77406ef3359e7c667dcfbfece170f6cad74f7f1e Mon Sep 17 00:00:00 2001 From: vadivelJ96 Date: Tue, 14 Oct 2025 14:55:01 +0530 Subject: [PATCH 2/5] CHANGE_Mail_template_filename_issue - VADIVEL J 2025-10-14 --- app/Controllers/TestingController.php | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/app/Controllers/TestingController.php b/app/Controllers/TestingController.php index 9104f3f5..a7cdddd1 100644 --- a/app/Controllers/TestingController.php +++ b/app/Controllers/TestingController.php @@ -757,8 +757,12 @@ class TestingController extends BaseController } } } + + $dbUpdated = $this->update_client_logo_files(); + log_message('error', 'Renamed Files: ' . $rename_files); log_message('error', 'Failed Renames: ' . $failed_rename_files); + log_message('error', 'Database Update Status: ' . ($dbUpdated ? 'Success' : 'No changes made')); return $this->response->setJSON(['status' => 'success', 'message' => 'Logo renaming completed. kindly check backend logs for details', @@ -786,5 +790,22 @@ class TestingController extends BaseController return $files; } + public function update_client_logo_files(){ + + $db = \Config\Database::connect(); + + $sql = "UPDATE clients + SET client_logo = REPLACE(REPLACE(REPLACE(client_logo, CHAR(160), ''), ' ', ''), '\t', '') + WHERE client_logo IS NOT NULL + AND TRIM(client_logo) <> '' + "; + + $query = $db->query($sql); + + return $db->affectedRows() > 0; + + + } + } From 7b1d98d86ce749e15495f13ecc0c92982b467d49 Mon Sep 17 00:00:00 2001 From: venba-Inspriron-3558 Date: Tue, 14 Oct 2025 15:03:43 +0530 Subject: [PATCH 3/5] FIX_Master screen --- app/Config/Routes.php | 3 + app/Controllers/MasterController.php | 174 +++++++++++- app/Models/RTOModel.php | 57 ++++ app/Views/layout/header.php | 9 + app/Views/nhance_branch_list.php | 159 ++++++++--- .../policy_transaction_inception_form.php | 61 +++++ app/Views/rto_master_list.php | 254 ++++++++++++++++++ app/Views/vehicle_type_master_list.php | 230 ++++++++++++++++ 8 files changed, 905 insertions(+), 42 deletions(-) create mode 100644 app/Models/RTOModel.php create mode 100644 app/Views/rto_master_list.php create mode 100755 app/Views/vehicle_type_master_list.php diff --git a/app/Config/Routes.php b/app/Config/Routes.php index 58aa95b4..877ba46e 100755 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -396,6 +396,9 @@ $routes->group("/util", ["filter" => "authMVC"], function ($routes) { $routes->post('savePlacementDataAndValidateMemberDataFile', 'LeadsController::savePlacementDataAndValidateMemberDataFile'); $routes->get('checkMemberDataFileValidationStatus', 'LeadsController::checkMemberDataFileValidationStatus'); $routes->match(['get', 'post', 'delete'], 'nhanceBranchMaster', 'MasterController::nhanceBranchMaster'); + $routes->match(['get', 'post', 'delete'], 'vehicleTypeMaster', 'MasterController::vehicleTypeMaster'); + $routes->match(['get', 'post', 'delete'], 'rtoMaster', 'MasterController::rtoMaster'); + }); diff --git a/app/Controllers/MasterController.php b/app/Controllers/MasterController.php index cde00cf7..19cde67b 100755 --- a/app/Controllers/MasterController.php +++ b/app/Controllers/MasterController.php @@ -36,6 +36,8 @@ use App\Models\InsurerExcelExportTemplateModel; use App\Models\NhanceBranchModel; use App\Models\SettingsModel; use App\Models\VehicleModel; +use App\Models\VehicleTypeModel; +use App\Models\RTOModel; use CodeIgniter\CLI\CLI; @@ -2022,15 +2024,19 @@ class MasterController extends AdminController dd($result); } + //---------------------------------------------------------------------------------------------------------- + public function nhanceBranchMaster() { $nhanceBranchModel = new NhanceBranchModel(); + $method = $this->request->getMethod(); + $data['tab_name'] = 'Nhance Branch'; + $data['page_name'] = 'Nhance Branchs'; - if ($this->request->is('post')) { + if ($method === 'post') { $id = $this->request->getPost('pk') ?? null; $data = $this->request->getPost(); - print_r($data); die; if (empty($id)) { $update_status = $nhanceBranchModel->insert($data); @@ -2054,7 +2060,7 @@ class MasterController extends AdminController ], 200); } - } elseif ($this->request->is('get')) { + } elseif ($method === 'get') { $id = $this->request->getGet('pk') ?? null; @@ -2070,7 +2076,7 @@ class MasterController extends AdminController $data = $nhanceBranchModel->where('is_active', 1)->findAll(); return $this->loadLayout('nhance_branch_list', ['data' => $data]); - } elseif ($this->request->is('delete')) { + } elseif ($method === 'delete') { $input = $this->request->getRawInput(); $id = $input['pk'] ?? null; @@ -2106,7 +2112,167 @@ class MasterController extends AdminController public function vehicleTypeMaster() { + $vehicleTypeModel = new VehicleTypeModel(); + $method = $this->request->getMethod(); + $data['tab_name'] = 'Vehicle Type'; + $data['page_name'] = 'Vehicle Types'; + if ($method === 'post') { + $id = $this->request->getPost('pk') ?? null; + $data = $this->request->getPost(); + + if (empty($id)) { + $update_status = $vehicleTypeModel->insert($data); + } else { + $update_status = $vehicleTypeModel->where('id', $id)->set($data)->update(); + } + + if ($update_status) { + return $this->respond([ + 'status' => true, + 'code' => 200, + 'message' => 'Vehicle Type Master updated successfully', + 'data' => $data + ], 200); + } else { + return $this->respond([ + 'status' => false, + 'code' => 400, + 'message' => 'Failed to update', + 'data' => $data + ], 200); + } + + } elseif ($method === 'get') { + + $id = $this->request->getGet('pk') ?? null; + + if (!empty($id)) { + $data = $vehicleTypeModel->where('is_active', 1)->where('id', $id)->findAll(); + if (!empty($data)) { + return $this->respond(['status' => true, 'code' => 200, 'data' => $data], 200); + } else { + return $this->respond(['status' => false, 'code' => 400, 'message' => 'No data found'], 200); + } + } + + $data = $vehicleTypeModel->where('is_active', 1)->findAll(); + return $this->loadLayout('vehicle_type_master_list', ['data' => $data]); + + } elseif ($method === 'delete') { + + $input = $this->request->getRawInput(); + $id = $input['pk'] ?? null; + + if (empty($id)) { + return $this->respond([ + 'status' => false, + 'code' => 404, + 'message' => 'No ID provided for deletion' + ], 200); + } + + $update_status = $vehicleTypeModel->where('id', $id)->set(['is_active' => 0])->update(); + + if ($update_status) { + return $this->respond([ + 'status' => true, + 'code' => 200, + 'message' => 'Data removed successfully', + 'pk' => $id + ], 200); + } else { + return $this->respond([ + 'status' => false, + 'code' => 400, + 'message' => 'Failed to remove data', + 'pk' => $id + ], 200); + } + } + } + + public function rtoMaster() + { + $rtoModel = new RTOModel(); + $method = $this->request->getMethod(); + $data['tab_name'] = 'RTO'; + $data['page_name'] = 'RTO'; + + if ($method === 'post') { + + $id = $this->request->getPost('pk') ?? null; + $data = $this->request->getPost(); + + if (empty($id)) { + $update_status = $rtoModel->insert($data); + } else { + $update_status = $rtoModel->where('id', $id)->set($data)->update(); + } + + if ($update_status) { + return $this->respond([ + 'status' => true, + 'code' => 200, + 'message' => 'RTO Master updated successfully', + 'data' => $data + ], 200); + } else { + return $this->respond([ + 'status' => false, + 'code' => 400, + 'message' => 'Failed to update', + 'data' => $data + ], 200); + } + + } elseif ($method === 'get') { + + $id = $this->request->getGet('pk') ?? null; + + if (!empty($id)) { + $data = $rtoModel->where('is_active', 1)->where('id', $id)->findAll(); + if (!empty($data)) { + return $this->respond(['status' => true, 'code' => 200, 'data' => $data], 200); + } else { + return $this->respond(['status' => false, 'code' => 400, 'message' => 'No data found'], 200); + } + } + + $data = $rtoModel->where('is_active', 1)->findAll(); + return $this->loadLayout('rto_master_list', ['data' => $data]); + + } elseif ($method === 'delete') { + + $input = $this->request->getRawInput(); + $id = $input['pk'] ?? null; + + if (empty($id)) { + return $this->respond([ + 'status' => false, + 'code' => 404, + 'message' => 'No ID provided for deletion' + ], 200); + } + + $update_status = $rtoModel->where('id', $id)->set(['is_active' => 0])->update(); + + if ($update_status) { + return $this->respond([ + 'status' => true, + 'code' => 200, + 'message' => 'Data removed successfully', + 'pk' => $id + ], 200); + } else { + return $this->respond([ + 'status' => false, + 'code' => 400, + 'message' => 'Failed to remove data', + 'pk' => $id + ], 200); + } + } } } \ No newline at end of file diff --git a/app/Models/RTOModel.php b/app/Models/RTOModel.php new file mode 100644 index 00000000..6f5abcab --- /dev/null +++ b/app/Models/RTOModel.php @@ -0,0 +1,57 @@ + Users +
  • + Nhance Branch +
  • +
  • + Vehicle Type +
  • +
  • + RTO +
  • diff --git a/app/Views/nhance_branch_list.php b/app/Views/nhance_branch_list.php index 97660071..f3655ec8 100644 --- a/app/Views/nhance_branch_list.php +++ b/app/Views/nhance_branch_list.php @@ -14,25 +14,43 @@ S.No. Branch Name + Action + $row) { ?> - +    + + + + No data available + + @@ -43,14 +61,15 @@ +
    + + +
    +