diff --git a/app/Config/Routes.php b/app/Config/Routes.php index 4ccb451..d6d4027 100644 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -17,6 +17,12 @@ $routes->get('/tubes/unreceive/(:any)/(:any)', 'Tubes::unreceive/$1/$2'); $routes->get('/tubes/unreceiveAll/(:any)', 'Tubes::unreceiveAll/$1'); $routes->post('/tubes/comment/(:any)/(:any)', 'Tubes::comment/$1/$2'); +// Userroles +$routes->get('/userroles/', 'Userroles::index'); +$routes->get('/userroles/fetchAll', 'Userroles::fetchAll'); +$routes->match(['get','post'],'/userroles/create', 'Userroles::edit/0'); +$routes->match(['get','post'],'/userroles/edit/(:any)', 'Userroles::edit/$1'); + // Users $routes->get('/users/', 'Users::index'); $routes->match(['get','post'], '/users/editRole/(:any)', 'Users::editRole/$1'); diff --git a/app/Controllers/Userroles.php b/app/Controllers/Userroles.php new file mode 100644 index 0000000..a9ba93b --- /dev/null +++ b/app/Controllers/Userroles.php @@ -0,0 +1,92 @@ +query($sql); + $results = $query->getResultArray(); + $userroles = $results; + + $data = " + +
+ + + + + + + + + + + "; + $i = 1; + foreach ($userroles as $qdata) { + $userrolecode = $qdata['USERROLECODE']; + $userrolename = $qdata['USERROLENAME']; + $data.= " + + + + + + + "; + $i++; + } + $data .= " + +
#CodeNameAction
$i$userrolecode$userrolename + +
+
"; + return $this->response->setJSON([ + 'error' => false, + 'message' => $data + ]); + } + + public function edit($userrolecode) { + $db = \Config\Database::connect(); + $data = array(); + $data['userrolecode'] = $userrolecode; + if ($this->request->getMethod() == 'POST') { + $request = service('request'); + $jsonData = $request->getJSON(); + $quserrolecode = $jsonData->userrolecode; + $quserrolename = $jsonData->userrolename; + if($userrolecode == 0) { $sql = "INSERT INTO cmod.dbo.CM_USERROLES(USERROLECODE, USERROLENAME, CREATEDATE) VALUES ('$quserrolecode', '$quserrolename', GETDATE())"; } + else { $sql = "UPDATE cmod.dbo.CM_USERROLES set USERROLENAME='$quserrolename' where USERROLECODE='$quserrolecode'"; } + $query = $db->query($sql); + } + if ($this->request->getMethod() == 'POST') { + $quserrolecode = $this->input->post('userrolecode'); + $quserrolename = $this->input->post('userrolename'); + if($userrolecode == 0) { + $sql = "INSERT INTO cmod.dbo.CM_USERROLES(USERROLECODE, USERROLENAME, CREATEDATE) VALUES ('$userrolecode','$userrolename', GETDATE())"; + $query = $db->query($sql); + } else { + $sql = "update cmod.dbo.CM_USERROLES set USERROLENAME='$userrolename' where USERROLECODE='$userrolecode'"; + $query = $db->query($sql); + } + } else { + if($userrolecode != 0) { + $sql = "select * from cmod.dbo.CM_USERROLES where USERROLECODE='$userrolecode'"; + $query = $db->query($sql); + $results = $query->getResultArray(); + $data['userrolename'] = $results[0]['USERROLENAME']; + } + return view('userroles_edit', $data); + } + } + +} diff --git a/app/Controllers/Users.php b/app/Controllers/Users.php index bf60459..c90b61f 100644 --- a/app/Controllers/Users.php +++ b/app/Controllers/Users.php @@ -3,24 +3,17 @@ namespace App\Controllers; class Users extends BaseController { - - public function __construct() { - $this->userrole = array( - "0" => "superuser", - "1" => "analyst", - "2" => "phlebotomist" - ); - } public function index(): string { $db = \Config\Database::connect(); - $sql = "select u.USERID, u.USERNAME, u1.USERROLEID from cmod.dbo.CM_USERS u1 + $sql = "select u.USERID, u.USERNAME, u1.USERROLECODE from cmod.dbo.CM_USERS u1 full join USERS u on u.USERID=u1.USERID where ( u.LOCKEDACCOUNT is null or u.LOCKEDACCOUNT=0 )"; $query = $db->query($sql); $results = $query->getResultArray(); $data['users'] = $results; + $data['userrole'] = $this->userrole; return view('users_index', $data); } @@ -28,18 +21,18 @@ class Users extends BaseController { if ($this->request->getMethod() == 'POST') { $request = service('request'); $jsonData = $request->getJSON(); - $userroleid = $jsonData->userroleid; + $userrolecode = $jsonData->userrolecode; $db = \Config\Database::connect(); $sql = "if (not exists (select * from cmod.dbo.CM_USERS where USERID='$userid')) BEGIN - INSERT INTO cmod.dbo.CM_USERS(USERID, USERROLEID, CREATEDATE) VALUES - ('$userid','$userroleid', GETDATE()) + INSERT INTO cmod.dbo.CM_USERS(USERID, USERROLECODE, CREATEDATE) VALUES + ('$userid','$userrolecode', GETDATE()) END ELSE BEGIN - UPDATE cmod.dbo.CM_USERS set USERROLEID='$userroleid' where USERID='$userid' + UPDATE cmod.dbo.CM_USERS set USERROLECODE='$userrolecode' where USERID='$userid' END"; $query = $db->query($sql); } else { $db = \Config\Database::connect(); - $sql = "select u.USERID, u.USERNAME, u1.USERROLEID from cmod.dbo.CM_USERS u1 + $sql = "select u.USERID, u.USERNAME, u1.USERROLECODE from cmod.dbo.CM_USERS u1 full join USERS u on u.USERID=u1.USERID where u.USERID='$userid'"; $query = $db->query($sql); diff --git a/app/Views/layouts/sidebar.php b/app/Views/layouts/sidebar.php index b244bbe..aea854f 100644 --- a/app/Views/layouts/sidebar.php +++ b/app/Views/layouts/sidebar.php @@ -5,6 +5,7 @@
Administration
Dictionary Test Users + User Roles