diff --git a/app/Config/Routes.php b/app/Config/Routes.php index d31edf7..83da432 100644 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -63,12 +63,12 @@ $routes->POST('api/dictChapters/save', 'API_DictChapters::save'); $routes->get('api/dictChapters/detail/(:any)', 'API_DictChapters::detail/$1'); // API - Orders -$routes->POST('api/orders/index', 'API_Orders::index'); -$routes->POST('api/orders/save', 'API_Orders::save'); -$routes->get('api/orders/detail/(:any)', 'API_Orders::detail/$1'); -$routes->get('api/orders/patSearch/(:any)', 'API_Orders::patSearch/$1'); -$routes->get('api/orders/patDetail/(:any)', 'API_Orders::patDetail/$1'); -$routes->POST('api/orders/patSave', 'API_Orders::patSave'); +$routes->POST('api/orders/index', 'API_HISOrders::index'); +$routes->POST('api/orders/save', 'API_HISOrders::save'); +$routes->get('api/orders/detail/(:any)', 'API_HISOrders::detail/$1'); +$routes->get('api/patients/search/(:any)', 'API_HISPatients::search/$1'); +$routes->get('api/patients/detail/(:any)', 'API_HISPatients::detail/$1'); +$routes->POST('api/patients/save', 'API_HISPatients::save'); // admin $routes->group('admin', ['filter' => 'role:admin'], static function ($routes) { @@ -77,6 +77,7 @@ $routes->group('admin', ['filter' => 'role:admin'], static function ($routes) { $routes->get('orders/', 'AdminController::orders_index'); $routes->get('orders/create/', 'AdminController::orders_update/0'); $routes->get('orders/update/(:any)', 'AdminController::orders_update/$1'); + $routes->get('patients/', 'AdminController::patients_index'); $routes->get('userroles/', 'AdminController::userroles_index'); $routes->get('users/', 'AdminController::users_index'); $routes->get('dictTests/', 'AdminController::dictTests_index'); diff --git a/app/Controllers/API_Orders.php b/app/Controllers/API_HISOrders.php similarity index 98% rename from app/Controllers/API_Orders.php rename to app/Controllers/API_HISOrders.php index ff76195..64ceccf 100644 --- a/app/Controllers/API_Orders.php +++ b/app/Controllers/API_HISOrders.php @@ -3,7 +3,7 @@ namespace App\Controllers; use CodeIgniter\RESTful\ResourceController; -class API_Orders extends ResourceController { +class API_HISOrders extends ResourceController { protected $format = 'json'; public function index() { diff --git a/app/Controllers/API_HISPatients.php b/app/Controllers/API_HISPatients.php new file mode 100644 index 0000000..c06cba7 --- /dev/null +++ b/app/Controllers/API_HISPatients.php @@ -0,0 +1,68 @@ +request->getPost('date1'); + $date2 = $this->request->getPost('date2'); + $sql = "select o.VISITNUMBER, o.VISITDATE, o.PAYERNAME, o.TREATDOC, p.PATNUMBER, p.SEX, p.PATNAME, + TESTS=stuff(( select ', '+t.HISCODE from + ( select t.HISCODE from cmod.dbo.CM_HIS_TESTS t + where t.ORDERID=o.ORDERID + ) as T + for xml path('')),1,1,'') + from cmod.dbo.CM_HIS_ORDERS o + left join cmod.dbo.CM_HIS_PATIENTS p on p.PATID=o.PATID"; + $query = $db->query($sql); + $results = $query->getResultArray(); + $data['data'] = $results; + return $this->respond($data,200); + } + + public function search($patnumber) { + $db = \Config\Database::connect(); + $sql = "select * from cmod.dbo.CM_HIS_PATIENTS where PATNUMBER like '%$patnumber%'"; + $query = $db->query($sql); + $results = $query->getResultArray(); + $data['patients'] = $results; + return $this->respond($data,200); + } + + public function detail($patnumber) { + $db = \Config\Database::connect(); + $sql = "select * from cmod.dbo.CM_HIS_PATIENTS where PATNUMBER='$patnumber'"; + $query = $db->query($sql); + $results = $query->getResultArray(); + $data['patient'] = $results[0]; + return $this->respond($data,200); + } + + public function save() { + $db = \Config\Database::connect(); + $patid = $this->request->getPost('patid'); + $patnumber = $this->request->getPost('patnumber'); + $patname = $this->request->getPost('patname'); + $sex = $this->request->getPost('sex'); + $birthdate = $this->request->getPost('birthdate'); + $address = $this->request->getPost('address'); + $phone = $this->request->getPost('phone'); + if($patid == 0) { + $sql = "INSERT INTO cmod.dbo.CM_HIS_PATIENTS (PATNUMBER, PATNAME, SEX, BIRTHDATE, ADDRESS, PHONE) + VALUES ('$patnumber', '$patname', '$sex', '$birthdate', '$address','$phone')"; + } else { + $sql = "update cmod.dbo.CM_HIS_PATIENTS set PATNUMBER='$patnumber', PATNAME='$patname', + SEX='$sex', BIRTHDATE='$birthdate', ADDRESS='$address', PHONE='$phone' Where PATID='$patid'"; + } + $query = $db->query($sql); + if($patid == 0 ) { $patid = $db->insertID(); } + $data['patid'] = $patid; + $data['patnumber'] = $patnumber; + $data['sql'] = $sql; + return $this->respond($data , 200); + } +} diff --git a/app/Controllers/AdminController.php b/app/Controllers/AdminController.php index fb64c25..23f361c 100644 --- a/app/Controllers/AdminController.php +++ b/app/Controllers/AdminController.php @@ -105,4 +105,8 @@ class AdminController extends BaseController { $data['orderid'] = $orderid; return view('orders_update', $data); } + + public function patients_index() { + return view('patients_index'); + } } diff --git a/app/Views/admin/dictMappings_index.php b/app/Views/admin/dictMappings_index.php index f49b6be..28c6d55 100644 --- a/app/Views/admin/dictMappings_index.php +++ b/app/Views/admin/dictMappings_index.php @@ -80,12 +80,14 @@ foreach($tests as $data) {
LIS Code
| LIS Code | : | \n";$j++; } ?> |
\n";$j++; } ?> |
+ \n";$j++; } ?> |
+ \n";$j++; } ?> |
|---|