gdc_cmod/app/Config/Routes.php
mahdahar b29f807295 Refactor: Remove V2 namespace and consolidate role-based architecture
- Moved all V2 controllers (Lab, Requests, Samples, Users) to App\Controllers
- Removed deprecated role controllers (Admin, Doctor, Analyst, CustomerService)
- Simplified routes by removing /v2 prefix
- Added AGENTS.md with project conventions and TODO.md with task tracking
- Updated README.md with RBAC documentation
- Fixed hardcoded dates, status color mappings, and duplicate database calls
2026-01-19 10:55:10 +07:00

49 lines
2.0 KiB
PHP

<?php
use CodeIgniter\Router\RouteCollection;
$routes->set404Override(function() {
$response = service('response');
$response->setStatusCode(404);
echo view('errors/notfound');
});
$routes->get('/unauthorized', 'ErrorPage::unauthorized');
$routes->get('/', 'Home::index');
$routes->get('/login', 'Auth::loginPage', ['filter' => 'guest']);
$routes->post('/login', 'Auth::login', ['filter' => 'guest']);
$routes->get('/logout', 'Auth::logout');
$routes->patch('/setPassword', 'Auth::setPassword');
$routes->get('label/coll/(:any)', 'Label::coll/$1');
$routes->get('label/dispatch/(:any)/(:any)', 'Label::dispatch/$1/$2');
$routes->get('label/all/(:any)', 'Label::print_all/$1');
$routes->group('admin', ['filter' => 'role:1'], function($routes) {
$routes->get('', 'Admin::index');
$routes->get('users', 'Admin::users');
$routes->get('api/users', 'Users::index');
$routes->post('api/users', 'Users::create');
$routes->patch('api/users/(:any)', 'Users::update/$1');
$routes->delete('api/users/(:any)', 'Users::delete/$1');
$routes->get('api/requests', 'Requests::index');
$routes->post('api/requests/validate/(:any)', 'Requests::val/$1');
$routes->delete('api/requests/validate/(:any)', 'Requests::unval/$1');
$routes->post('api/samples/collect/(:any)', 'Samples::collect/$1');
$routes->delete('api/samples/collect/(:any)', 'Samples::uncollect/$1');
$routes->delete('api/samples/receive/(:any)', 'Samples::unreceive/$1');
$routes->get('api/samples/(:any)', 'Samples::show/$1');
});
$routes->group('lab', ['filter' => 'role:2'], function($routes) {
$routes->get('', 'Lab::index');
$routes->get('api/requests', 'Requests::index');
$routes->post('api/requests/validate/(:any)', 'Requests::val/$1');
$routes->delete('api/requests/validate/(:any)', 'Requests::unval/$1');
$routes->post('api/samples/collect/(:any)', 'Samples::collect/$1');
$routes->get('api/samples/(:any)', 'Samples::show/$1');
});
$routes->get('/dummypage', 'Home::dummyPage');