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 = "
+
+
+
+
+
+ | # |
+ Code |
+ Name |
+ Action |
+
+
+
+ ";
+ $i = 1;
+ foreach ($userroles as $qdata) {
+ $userrolecode = $qdata['USERROLECODE'];
+ $userrolename = $qdata['USERROLENAME'];
+ $data.= "
+
+ | $i |
+ $userrolecode |
+ $userrolename |
+
+
+
+ |
+
";
+ $i++;
+ }
+ $data .= "
+
+
+
";
+ 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 @@
Dictionary Test
Users
+
User Roles