Merge branch 'main' into zakaria
gas
This commit is contained in:
commit
86046bdff7
@ -72,12 +72,15 @@ class Filters extends BaseFilters
|
|||||||
'before' => [
|
'before' => [
|
||||||
'role' => [ 'except' => [
|
'role' => [ 'except' => [
|
||||||
'auth/*', 'setup', 'api/*'
|
'auth/*', 'setup', 'api/*'
|
||||||
]]
|
]],
|
||||||
// 'honeypot',
|
// 'honeypot',
|
||||||
// 'csrf',
|
// 'csrf',
|
||||||
// 'invalidchars',
|
// 'invalidchars',
|
||||||
],
|
],
|
||||||
'after' => [
|
'after' => [
|
||||||
|
'toolbar' => [
|
||||||
|
'except' => ['api/*', 'prints/*', 'prints/result_test/*'],
|
||||||
|
],
|
||||||
// 'honeypot',
|
// 'honeypot',
|
||||||
// 'secureheaders',
|
// 'secureheaders',
|
||||||
],
|
],
|
||||||
|
|||||||
@ -23,7 +23,7 @@ $routes->get('/', 'Auth::redirects');
|
|||||||
$routes->get('changePass/', 'Auth::changePass');
|
$routes->get('changePass/', 'Auth::changePass');
|
||||||
|
|
||||||
// API - Dashboard
|
// API - Dashboard
|
||||||
$routes->get('/api/dashboard/index', 'API_Dashboard::index');
|
$routes->POST('/api/dashboard/index', 'API_Dashboard::index');
|
||||||
|
|
||||||
// API - Tubes
|
// API - Tubes
|
||||||
$routes->get('/tubes/collect/(:any)/(:any)', 'API_Tubes::collect/$1/$2');
|
$routes->get('/tubes/collect/(:any)/(:any)', 'API_Tubes::collect/$1/$2');
|
||||||
@ -51,12 +51,17 @@ $routes->POST('api/dictTests/save', 'API_DictTests::save');
|
|||||||
$routes->get('api/dictTests/index', 'API_DictTests::index');
|
$routes->get('api/dictTests/index', 'API_DictTests::index');
|
||||||
$routes->get('api/dictTests/detail/(:any)', 'API_DictTests::detail/$1');
|
$routes->get('api/dictTests/detail/(:any)', 'API_DictTests::detail/$1');
|
||||||
|
|
||||||
// API - DictTests
|
// API - DictMappings
|
||||||
$routes->get('api/dictMappings/index', 'API_DictMappings::index');
|
$routes->get('api/dictMappings/index', 'API_DictMappings::index');
|
||||||
$routes->POST('api/dictMappings/saveSingle', 'API_DictMappings::saveSingle');
|
$routes->POST('api/dictMappings/saveSingle', 'API_DictMappings::saveSingle');
|
||||||
$routes->POST('api/dictMappings/saveProfile', 'API_DictMappings::saveProfile');
|
$routes->POST('api/dictMappings/saveProfile', 'API_DictMappings::saveProfile');
|
||||||
$routes->get('api/dictMappings/detail/(:any)', 'API_DictMappings::detail/$1');
|
$routes->get('api/dictMappings/detail/(:any)', 'API_DictMappings::detail/$1');
|
||||||
|
|
||||||
|
// API - DictChapters
|
||||||
|
$routes->get('api/dictChapters/index', 'API_DictChapters::index');
|
||||||
|
$routes->POST('api/dictChapters/save', 'API_DictChapters::save');
|
||||||
|
$routes->get('api/dictChapters/detail/(:any)', 'API_DictChapters::detail/$1');
|
||||||
|
|
||||||
// admin
|
// admin
|
||||||
$routes->group('admin', ['filter' => 'role:admin'], static function ($routes) {
|
$routes->group('admin', ['filter' => 'role:admin'], static function ($routes) {
|
||||||
$routes->get('', 'AdminController::index');
|
$routes->get('', 'AdminController::index');
|
||||||
@ -64,6 +69,7 @@ $routes->group('admin', ['filter' => 'role:admin'], static function ($routes) {
|
|||||||
$routes->get('userroles/', 'AdminController::userroles_index');
|
$routes->get('userroles/', 'AdminController::userroles_index');
|
||||||
$routes->get('users/', 'AdminController::users_index');
|
$routes->get('users/', 'AdminController::users_index');
|
||||||
$routes->get('dictTests/', 'AdminController::dictTests_index');
|
$routes->get('dictTests/', 'AdminController::dictTests_index');
|
||||||
|
$routes->get('dictChapters/', 'AdminController::dictChapters_index');
|
||||||
$routes->get('dictMappings/', 'AdminController::dictMappings_index');
|
$routes->get('dictMappings/', 'AdminController::dictMappings_index');
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -80,6 +86,6 @@ $routes->group('fo', ['filter' => 'role:fo'], static function ($routes) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
// Printers
|
// Printers
|
||||||
$routes->get('/prints/single_sample/(:any)/(:any)', 'PrinterController::printSingleSampleBarcode/$1/$2');
|
$routes->get('prints/single_sample/(:any)/(:any)', 'PrinterController::printSingleSampleBarcode/$1/$2');
|
||||||
$routes->get('/prints/all_sample', 'PrinterController::printAllSampleBarcode');
|
$routes->get('prints/all_sample', 'PrinterController::printAllSampleBarcode');
|
||||||
$routes->get('/prints/result_test/(:any)', 'PrinterController::printResultTest/$1');
|
$routes->get('prints/result_test/(:any)', 'PrinterController::printResultTest/$1');
|
||||||
@ -119,4 +119,5 @@ class Toolbar extends BaseConfig
|
|||||||
public array $watchedExtensions = [
|
public array $watchedExtensions = [
|
||||||
'php', 'css', 'js', 'html', 'svg', 'json', 'env',
|
'php', 'css', 'js', 'html', 'svg', 'json', 'env',
|
||||||
];
|
];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -8,6 +8,8 @@ class API_Dashboard extends ResourceController {
|
|||||||
|
|
||||||
public function index() {
|
public function index() {
|
||||||
$db = \Config\Database::connect();
|
$db = \Config\Database::connect();
|
||||||
|
$date1 = $this->request->getPost('date1');
|
||||||
|
$date2 = $this->request->getPost('date2');
|
||||||
$sql = "select sr.COLLECTIONDATE, sr.SP_ACCESSNUMBER, sr.HOSTORDERNUMBER, p.PATNUMBER, p.NAME,
|
$sql = "select sr.COLLECTIONDATE, sr.SP_ACCESSNUMBER, sr.HOSTORDERNUMBER, p.PATNUMBER, p.NAME,
|
||||||
TESTS=stuff(( select ', '+'('+T.SP_TESTCODE+')' from
|
TESTS=stuff(( select ', '+'('+T.SP_TESTCODE+')' from
|
||||||
( select T.SP_TESTCODE from SP_TESTS T
|
( select T.SP_TESTCODE from SP_TESTS T
|
||||||
@ -49,7 +51,7 @@ end STATS
|
|||||||
from SP_REQUESTS sr
|
from SP_REQUESTS sr
|
||||||
left join PATIENTS p on p.PATID=sr.PATID
|
left join PATIENTS p on p.PATID=sr.PATID
|
||||||
left join REQUESTS r on r.ACCESSNUMBER=sr.SP_ACCESSNUMBER
|
left join REQUESTS r on r.ACCESSNUMBER=sr.SP_ACCESSNUMBER
|
||||||
where sr.COLLECTIONDATE between '2024-11-13 00:00' and '2024-11-21 23:59'
|
where sr.COLLECTIONDATE between '$date1 00:00' and '$date2 23:59'
|
||||||
order by sr.COLLECTIONDATE desc";
|
order by sr.COLLECTIONDATE desc";
|
||||||
$query = $db->query($sql);
|
$query = $db->query($sql);
|
||||||
$results = $query->getResultArray();
|
$results = $query->getResultArray();
|
||||||
|
|||||||
57
app/Controllers/API_DictChapters.php
Normal file
57
app/Controllers/API_DictChapters.php
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
<?php
|
||||||
|
namespace App\Controllers;
|
||||||
|
|
||||||
|
use CodeIgniter\RESTful\ResourceController;
|
||||||
|
|
||||||
|
class API_DictChapters extends ResourceController {
|
||||||
|
protected $format = 'json';
|
||||||
|
|
||||||
|
public function index() {
|
||||||
|
$db = \Config\Database::connect();
|
||||||
|
$sql = "select dc.CHAPCODE, dc.SHORTTEXT, cdc.TEXT1, cdc.TEXT2 from DICT_CHAPTERS dc
|
||||||
|
left join cmod.dbo.CM_DICT_CHAPTERS cdc on dc.CHAPCODE=cdc.CHAPCODE";
|
||||||
|
$query = $db->query($sql);
|
||||||
|
$results = $query->getResultArray();
|
||||||
|
$data['dictChapters'] = $results;
|
||||||
|
|
||||||
|
return $this->respond($data, 200);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function detail($chapcode) {
|
||||||
|
$data = array();
|
||||||
|
$db = \Config\Database::connect();
|
||||||
|
$sql = "select dc.CHAPCODE, dc.SHORTTEXT, cdc.TEXT1, cdc.TEXT2 from DICT_CHAPTERS dc
|
||||||
|
left join cmod.dbo.CM_DICT_CHAPTERS cdc on dc.CHAPCODE=cdc.CHAPCODE
|
||||||
|
where dc.CHAPCODE='$chapcode'";
|
||||||
|
$query = $db->query($sql);
|
||||||
|
$results = $query->getResultArray();
|
||||||
|
if(isset($results[0])) { $data = $results[0]; }
|
||||||
|
return $this->respond($data, 200);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function save() {
|
||||||
|
$chapcode = $this->request->getPost('chapcode');
|
||||||
|
$text1 = $this->request->getPost('text1');
|
||||||
|
$text2 = $this->request->getPost('text2');
|
||||||
|
|
||||||
|
$db = \Config\Database::connect();
|
||||||
|
$sql = "MERGE INTO cmod.dbo.CM_DICT_CHAPTERS AS t
|
||||||
|
USING ( VALUES ('$chapcode', '$text1', '$text2')
|
||||||
|
) AS s (CHAPCODE, TEXT1, TEXT2) on t.CHAPCODE=s.CHAPCODE
|
||||||
|
WHEN NOT MATCHED BY TARGET THEN
|
||||||
|
INSERT (CHAPCODE, TEXT1, TEXT2)
|
||||||
|
VALUES (s.CHAPCODE, s.TEXT1, s.TEXT2)
|
||||||
|
WHEN MATCHED THEN
|
||||||
|
UPDATE set TEXT1=s.TEXT1, TEXT2=s.TEXT2;";
|
||||||
|
//echo "<pre>$sql</pre>";
|
||||||
|
if( $db->query($sql) ) {
|
||||||
|
return $this->respond(['message' => 'Save Success'],201);
|
||||||
|
} else {
|
||||||
|
$response = [
|
||||||
|
'errors' => $db->errors(),
|
||||||
|
'message' => 'Invalid Inputs'
|
||||||
|
];
|
||||||
|
return $this->fail($response , 409);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -61,8 +61,14 @@ class API_DictTests extends ResourceController {
|
|||||||
$refftext = $this->request->getPost('refftext');
|
$refftext = $this->request->getPost('refftext');
|
||||||
|
|
||||||
$db = \Config\Database::connect();
|
$db = \Config\Database::connect();
|
||||||
$sql = "INSERT INTO cmod.dbo.CM_DICT_TESTS (TESTCODE, TEXT1, TEXT2, REFFTEXT, LOGDATE ) VALUES ('$testcode', '$text1', '$text2', '$refftext' GETDATE())";
|
$sql = "MERGE INTO cmod.dbo.CM_DICT_TESTS AS t
|
||||||
$sql = "UPDATE cmod.dbo.CM_DICT_TESTS set TEXT1='$text1', TEXT2='$text2', REFFTEXT='$refftext', LOGDATE=GETDATE() where TESTCODE='$testcode'";
|
USING ( VALUES ('$testcode', '$text1', '$text2', '$unit', '$refftext')
|
||||||
|
) AS s (TESTCODE, TEXT1, TEXT2, UNIT, REFFTEXT) on t.TESTCODE=s.TESTCODE
|
||||||
|
WHEN NOT MATCHED BY TARGET THEN
|
||||||
|
INSERT (TESTCODE, TEXT1, TEXT2, UNIT, REFFTEXT, LOGDATE)
|
||||||
|
VALUES (s.TESTCODE, s.TEXT1, s.TEXT2, s.UNIT, s.REFFTEXT, GETDATE())
|
||||||
|
WHEN MATCHED THEN
|
||||||
|
UPDATE set TEXT1=s.TEXT1, TEXT2=s.TEXT2, UNIT=s.UNIT, REFFTEXT=s.REFFTEXT;";
|
||||||
|
|
||||||
if( $db->query($sql) ) {
|
if( $db->query($sql) ) {
|
||||||
return $this->respond(['message' => 'Save Success'],201);
|
return $this->respond(['message' => 'Save Success'],201);
|
||||||
|
|||||||
@ -59,6 +59,10 @@ class AdminController extends BaseController {
|
|||||||
return view('admin/dictTests_index');
|
return view('admin/dictTests_index');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function dictChapters_index() {
|
||||||
|
return view('admin/dictChapters_index');
|
||||||
|
}
|
||||||
|
|
||||||
public function dictMappings_index() {
|
public function dictMappings_index() {
|
||||||
$db = \Config\Database::connect();
|
$db = \Config\Database::connect();
|
||||||
$sql = "select TESTCODE from DICT_TESTS where ENDVALIDDATE is null";
|
$sql = "select TESTCODE from DICT_TESTS where ENDVALIDDATE is null";
|
||||||
|
|||||||
@ -244,7 +244,7 @@ P1
|
|||||||
$headPage = "
|
$headPage = "
|
||||||
<div id='page'>
|
<div id='page'>
|
||||||
<div id='pagetop' style='height:0.01cm'> </div>
|
<div id='pagetop' style='height:0.01cm'> </div>
|
||||||
<img src='http://cmod.id/assets/img/padma-header.png' class='img' />
|
<img src='".base_url()."assets/img/padma-header.png' class='img' />
|
||||||
|
|
||||||
<div id='dinfo'>
|
<div id='dinfo'>
|
||||||
|
|
||||||
@ -415,7 +415,7 @@ P1
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function printResultTest($access) {
|
public function printResultTest($access) {
|
||||||
|
|
||||||
$data_mentah = [
|
$data_mentah = [
|
||||||
[
|
[
|
||||||
"chapter_eng" => "IMUNOLOGY 4 PANEL",
|
"chapter_eng" => "IMUNOLOGY 4 PANEL",
|
||||||
|
|||||||
@ -13,6 +13,7 @@
|
|||||||
|
|
||||||
<div class="card border-0">
|
<div class="card border-0">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
|
Date : <input class='date1' type='date' value=''> - <input class='date2' type='date'> <button onclick='index()'>search</button> <br/>
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table id="myTable" class="table table-hover">
|
<table id="myTable" class="table table-hover">
|
||||||
<thead>
|
<thead>
|
||||||
@ -43,13 +44,21 @@
|
|||||||
|
|
||||||
<?= $this->section('script') ?>
|
<?= $this->section('script') ?>
|
||||||
<script>
|
<script>
|
||||||
|
let curDate = new Date().toJSON().slice(0, 10);
|
||||||
|
console.log(curDate);
|
||||||
|
$('.date1').val(curDate);
|
||||||
|
$('.date2').val(curDate);
|
||||||
|
|
||||||
index();
|
index();
|
||||||
function index() {
|
function index() {
|
||||||
let url = '<?=base_url('');?>api/dashboard/index';
|
let url = '<?=base_url('');?>api/dashboard/index';
|
||||||
|
date1 = $('.date1').val();
|
||||||
|
date2 = $('.date2').val();
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: url,
|
url: url,
|
||||||
method: 'GET',
|
method: 'POST',
|
||||||
success: function(response) {
|
data : {date1:date1, date2:date2},
|
||||||
|
success: function(response) {
|
||||||
/*
|
/*
|
||||||
// counter
|
// counter
|
||||||
*/
|
*/
|
||||||
@ -79,6 +88,7 @@ function index() {
|
|||||||
/*
|
/*
|
||||||
// table
|
// table
|
||||||
*/
|
*/
|
||||||
|
$("#myTable").DataTable().destroy();
|
||||||
$("#table-body").html("");
|
$("#table-body").html("");
|
||||||
var data = response['data'];
|
var data = response['data'];
|
||||||
for (var i = 0; i < data.length; i++) {
|
for (var i = 0; i < data.length; i++) {
|
||||||
|
|||||||
131
app/Views/admin/dictChapters_index.php
Normal file
131
app/Views/admin/dictChapters_index.php
Normal file
@ -0,0 +1,131 @@
|
|||||||
|
<?= $this->extend('admin/layout/main.php') ?>
|
||||||
|
|
||||||
|
<?= $this->section('content') ?>
|
||||||
|
<div class="card border-0 m-1">
|
||||||
|
<div class="card-body">
|
||||||
|
<div class='card-title'>Dictionary Chapters</div>
|
||||||
|
<div class="table-responsive">
|
||||||
|
<table id="myTable" class="table">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Chapter code</th>
|
||||||
|
<th>Shorttext</th>
|
||||||
|
<th>Text</th>
|
||||||
|
<th>Action</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody id='table-body'>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="modal fade" id="modal_crud" aria-hidden="true" tabindex="-1">
|
||||||
|
<div class="modal-dialog modal-lg modal-dialog-centered modal-dialog-scrollable">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<h1 class="modal-title fs-5" id="exampleModalToggleLabel">Edit Chapter</h1>
|
||||||
|
<button type="button" class="btn-close" data-bs-dismiss="modal" ></button>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body" style='background-color:#F4F6FF'>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-12">
|
||||||
|
<table class="table table-sm table-borderless">
|
||||||
|
<tr class="align-middle"> <th>Chaptercode</th> <th>:</th> <td id='chapcode'></td> </tr>
|
||||||
|
<tr class="align-middle"> <th>Shorttext</th> <th>:</th> <td id='chaptext'></td> </tr>
|
||||||
|
<tr class="align-middle"> <th>Text 1</th> <th>:</th> <td><textarea class='form-control' id='text1'/></textarea></td> </tr>
|
||||||
|
<tr class="align-middle"> <th>Text 2</th> <th>:</th> <td><textarea class='form-control' id='text2'/></textarea></td> </tr>
|
||||||
|
</table>
|
||||||
|
<button class='btn btn-sm btn-primary' onclick='save()'>Save</button>
|
||||||
|
<button class='btn btn-sm btn-secondary' data-bs-dismiss="modal">Cancel</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<?= $this->endSection() ?>
|
||||||
|
|
||||||
|
<?= $this->section('script') ?>
|
||||||
|
<script>
|
||||||
|
index();
|
||||||
|
function index() {
|
||||||
|
let url = '<?=base_url('');?>api/dictChapters/index';
|
||||||
|
$.ajax({
|
||||||
|
url: url,
|
||||||
|
method: 'GET',
|
||||||
|
success: function(response) {
|
||||||
|
$("#myTable").DataTable().destroy();
|
||||||
|
$("#table-body").html("");
|
||||||
|
var data = response['dictChapters'];
|
||||||
|
for (var i = 0; i < data.length; i++) {
|
||||||
|
chapcode = data[i].CHAPCODE;
|
||||||
|
shorttext = data[i].SHORTTEXT;
|
||||||
|
text1 = '';
|
||||||
|
text2 = '';
|
||||||
|
if(data[i].TEXT1 != null) { text1 = data[i].TEXT1; }
|
||||||
|
if(data[i].TEXT2 != null) { text2 = data[i].TEXT2; }
|
||||||
|
let editBtn = '<button class="btn btn-sm btn-success" ' + ' onclick="edit(\'' + chapcode + '\')">Edit' + '</button> ';
|
||||||
|
let datarow = '<tr class="align-middle">' +
|
||||||
|
'<td>' + chapcode + '</td>' + '<td>' + shorttext + '</td> <td> <pre class="m-0">' + text1 + '<hr/>' + text2 + '</pre> </td>' +
|
||||||
|
'<td>' + editBtn + '</td>' +
|
||||||
|
'</tr>';
|
||||||
|
$("#table-body").append(datarow);
|
||||||
|
}
|
||||||
|
$("#myTable").DataTable({
|
||||||
|
"pageLength" : 25,
|
||||||
|
});
|
||||||
|
},
|
||||||
|
error: function(response) { console.log(response.responseJSON); }
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function edit(chapcode) {
|
||||||
|
let url = '<?=base_url('');?>api/dictChapters/detail/'+chapcode;
|
||||||
|
$("#chapcode").html('');
|
||||||
|
$("#chaptext").html('');
|
||||||
|
$.ajax({
|
||||||
|
url: url,
|
||||||
|
method: "GET",
|
||||||
|
success: function(response) {
|
||||||
|
let data = response;
|
||||||
|
$("#chapcode").html(data.CHAPCODE);
|
||||||
|
$("#chaptext").html(data.SHORTTEXT);
|
||||||
|
$("#text1").val(data.TEXT1);
|
||||||
|
$("#text2").val(data.TEXT2);
|
||||||
|
$("#modal_crud").modal('show');
|
||||||
|
},
|
||||||
|
error: function(response) {
|
||||||
|
console.log(response.responseJSON)
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function save() {
|
||||||
|
let url = '<?=base_url('');?>api/dictChapters/save';
|
||||||
|
var chapcode = $("#chapcode").html();
|
||||||
|
var text1 = $("#text1").val();
|
||||||
|
var text2 = $("#text2").val();
|
||||||
|
let data = { chapcode: chapcode, text1:text1, text2:text2 };
|
||||||
|
$.ajax({
|
||||||
|
url: url,
|
||||||
|
method: "POST",
|
||||||
|
data: data,
|
||||||
|
success: function(response) {
|
||||||
|
$("#chapcode").val('');
|
||||||
|
$("#text1").val('');
|
||||||
|
$("#text2").val('');
|
||||||
|
$("#modal_crud").modal('hide');
|
||||||
|
index();
|
||||||
|
},
|
||||||
|
error: function(response) {
|
||||||
|
console.log(response.responseJSON)
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<?= $this->endSection() ?>
|
||||||
@ -7,7 +7,8 @@
|
|||||||
<a class="nav-link" href="<?=base_url();?>changePass/"><div class="sb-nav-link-icon"><i class="bi bi-key"></i></div>Change Password</a>
|
<a class="nav-link" href="<?=base_url();?>changePass/"><div class="sb-nav-link-icon"><i class="bi bi-key"></i></div>Change Password</a>
|
||||||
<div class="sb-sidenav-menu-heading">Administration</div>
|
<div class="sb-sidenav-menu-heading">Administration</div>
|
||||||
<a class="nav-link" href="<?=base_url();?>admin/dictMappings/"> <div class="sb-nav-link-icon"><i class="bi bi-diagram-2"></i></div> Dict. Mapping Order </a>
|
<a class="nav-link" href="<?=base_url();?>admin/dictMappings/"> <div class="sb-nav-link-icon"><i class="bi bi-diagram-2"></i></div> Dict. Mapping Order </a>
|
||||||
<a class="nav-link" href="<?=base_url();?>admin/dictTests/"> <div class="sb-nav-link-icon"><i class="bi bi-journal-album"></i></div> Dict. Test </a>
|
<a class="nav-link" href="<?=base_url();?>admin/dictChapters/"> <div class="sb-nav-link-icon"><i class="bi bi-journal-medical"></i></div> Dict. Chapter</a>
|
||||||
|
<a class="nav-link" href="<?=base_url();?>admin/dictTests/"> <div class="sb-nav-link-icon"><i class="bi bi-file-medical"></i></div> Dict. Test </a>
|
||||||
<a class="nav-link" href="<?=base_url();?>admin/users/"> <div class="sb-nav-link-icon"><i class="bi bi-person-circle"></i></div> Users </a>
|
<a class="nav-link" href="<?=base_url();?>admin/users/"> <div class="sb-nav-link-icon"><i class="bi bi-person-circle"></i></div> Users </a>
|
||||||
<a class="nav-link" href="<?=base_url();?>admin/userroles/"> <div class="sb-nav-link-icon"><i class="bi bi-person-lock"></i></div> User Roles </a>
|
<a class="nav-link" href="<?=base_url();?>admin/userroles/"> <div class="sb-nav-link-icon"><i class="bi bi-person-lock"></i></div> User Roles </a>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -41,7 +41,7 @@ function index() {
|
|||||||
let url = '<?=base_url('');?>api/dashboard/index';
|
let url = '<?=base_url('');?>api/dashboard/index';
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: url,
|
url: url,
|
||||||
method: 'GET',
|
method: 'POST',
|
||||||
success: function(response) {
|
success: function(response) {
|
||||||
/*
|
/*
|
||||||
// counter
|
// counter
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
<?= $this->extend('user/layout/main.php') ?>
|
<?= $this->extend('admin/layout/main.php') ?>
|
||||||
|
|
||||||
<?= $this->section('content') ?>
|
<?= $this->section('content') ?>
|
||||||
|
|
||||||
@ -7,6 +7,7 @@
|
|||||||
|
|
||||||
<div class="card border-0">
|
<div class="card border-0">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
|
Date : <input class='date1' type='date' value=''> - <input class='date2' type='date'> <button onclick='index()'>search</button> <br/>
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table id="myTable" class="table">
|
<table id="myTable" class="table">
|
||||||
<thead>
|
<thead>
|
||||||
@ -17,6 +18,7 @@
|
|||||||
<th>Hosp</th>
|
<th>Hosp</th>
|
||||||
<th>Test</th>
|
<th>Test</th>
|
||||||
<th>Status</th>
|
<th>Status</th>
|
||||||
|
<th></th>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody id="table-body">
|
<tbody id="table-body">
|
||||||
</tbody>
|
</tbody>
|
||||||
@ -36,13 +38,21 @@
|
|||||||
|
|
||||||
<?= $this->section('script') ?>
|
<?= $this->section('script') ?>
|
||||||
<script>
|
<script>
|
||||||
|
let curDate = new Date().toJSON().slice(0, 10);
|
||||||
|
console.log(curDate);
|
||||||
|
$('.date1').val(curDate);
|
||||||
|
$('.date2').val(curDate);
|
||||||
|
|
||||||
index();
|
index();
|
||||||
function index() {
|
function index() {
|
||||||
let url = '<?=base_url('');?>api/dashboard/index';
|
let url = '<?=base_url('');?>api/dashboard/index';
|
||||||
|
date1 = $('.date1').val();
|
||||||
|
date2 = $('.date2').val();
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: url,
|
url: url,
|
||||||
method: 'GET',
|
method: 'POST',
|
||||||
success: function(response) {
|
data : {date1:date1, date2:date2},
|
||||||
|
success: function(response) {
|
||||||
/*
|
/*
|
||||||
// counter
|
// counter
|
||||||
*/
|
*/
|
||||||
@ -72,6 +82,7 @@ function index() {
|
|||||||
/*
|
/*
|
||||||
// table
|
// table
|
||||||
*/
|
*/
|
||||||
|
$("#myTable").DataTable().destroy();
|
||||||
$("#table-body").html("");
|
$("#table-body").html("");
|
||||||
var data = response['data'];
|
var data = response['data'];
|
||||||
for (var i = 0; i < data.length; i++) {
|
for (var i = 0; i < data.length; i++) {
|
||||||
@ -117,7 +128,8 @@ function index() {
|
|||||||
}
|
}
|
||||||
let datarow = '<tr class="align-middle" ' + datafilter + ' >' +
|
let datarow = '<tr class="align-middle" ' + datafilter + ' >' +
|
||||||
'<td>' + colldate + '</td> <td>' + patnumber + '</td> <td>' + accessnumber + '</td> <td>' + patname + '</td> <td>' + hon + '</td> <td>' + tests + '</td>' +
|
'<td>' + colldate + '</td> <td>' + patnumber + '</td> <td>' + accessnumber + '</td> <td>' + patname + '</td> <td>' + hon + '</td> <td>' + tests + '</td>' +
|
||||||
"<td role='button' class='"+bgcolor+" text-center align-middle' onclick='viewAccess("+accessnumber+")'>"+stattext+"</td>" + '</tr>';
|
"<td role='button' class='"+bgcolor+" text-center align-middle' onclick='viewAccess("+accessnumber+")'>"+stattext+"</td>" +
|
||||||
|
"<td role='button' class='text-center align-middle' onclick='resultPdfAccess("+accessnumber+")'> <i class='bi bi-filetype-pdf'></i> </td>" +'</tr>';
|
||||||
$("#table-body").append(datarow);
|
$("#table-body").append(datarow);
|
||||||
}
|
}
|
||||||
$('#myTable').DataTable();
|
$('#myTable').DataTable();
|
||||||
@ -164,10 +176,14 @@ function index() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function viewAccess(access) {
|
function viewAccess(access) {
|
||||||
let url = '<?=base_url();?>fo/dashboard/viewAccess/'+access;
|
let url = '<?=base_url();?>admin/dashboard/viewAccess/'+access;
|
||||||
$('.modal-content').load(url, function(){
|
$('.modal-content').load(url, function(){
|
||||||
$('#modal').modal('show');
|
$('#modal').modal('show');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
function resultPdfAccess(access) {
|
||||||
|
let url = '<?=base_url();?>prints/result_test/'+access;
|
||||||
|
window.open(url, '_blank');
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
<?= $this->endSection() ?>
|
<?= $this->endSection() ?>
|
||||||
@ -5,10 +5,8 @@
|
|||||||
<link rel='stylesheet' href='<?=base_url();?>assets/css/pdf.css' />
|
<link rel='stylesheet' href='<?=base_url();?>assets/css/pdf.css' />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body style='-webkit-print-color-adjust:exact;'>
|
<body style='-webkit-print-color-adjust:exact;'>
|
||||||
|
|
||||||
<?php echo $data; ?>
|
<?php echo $data; ?>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
@ -1,4 +1,4 @@
|
|||||||
<?= $this->extend('user/layout/main.php') ?>
|
<?= $this->extend('admin/layout/main.php') ?>
|
||||||
|
|
||||||
<?= $this->section('content') ?>
|
<?= $this->section('content') ?>
|
||||||
|
|
||||||
@ -7,6 +7,7 @@
|
|||||||
|
|
||||||
<div class="card border-0">
|
<div class="card border-0">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
|
Date : <input class='date1' type='date' value=''> - <input class='date2' type='date'> <button onclick='index()'>search</button> <br/>
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table id="myTable" class="table">
|
<table id="myTable" class="table">
|
||||||
<thead>
|
<thead>
|
||||||
@ -17,6 +18,7 @@
|
|||||||
<th>Hosp</th>
|
<th>Hosp</th>
|
||||||
<th>Test</th>
|
<th>Test</th>
|
||||||
<th>Status</th>
|
<th>Status</th>
|
||||||
|
<th></th>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody id="table-body">
|
<tbody id="table-body">
|
||||||
</tbody>
|
</tbody>
|
||||||
@ -36,13 +38,21 @@
|
|||||||
|
|
||||||
<?= $this->section('script') ?>
|
<?= $this->section('script') ?>
|
||||||
<script>
|
<script>
|
||||||
|
let curDate = new Date().toJSON().slice(0, 10);
|
||||||
|
console.log(curDate);
|
||||||
|
$('.date1').val(curDate);
|
||||||
|
$('.date2').val(curDate);
|
||||||
|
|
||||||
index();
|
index();
|
||||||
function index() {
|
function index() {
|
||||||
let url = '<?=base_url('');?>api/dashboard/index';
|
let url = '<?=base_url('');?>api/dashboard/index';
|
||||||
|
date1 = $('.date1').val();
|
||||||
|
date2 = $('.date2').val();
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: url,
|
url: url,
|
||||||
method: 'GET',
|
method: 'POST',
|
||||||
success: function(response) {
|
data : {date1:date1, date2:date2},
|
||||||
|
success: function(response) {
|
||||||
/*
|
/*
|
||||||
// counter
|
// counter
|
||||||
*/
|
*/
|
||||||
@ -72,6 +82,7 @@ function index() {
|
|||||||
/*
|
/*
|
||||||
// table
|
// table
|
||||||
*/
|
*/
|
||||||
|
$("#myTable").DataTable().destroy();
|
||||||
$("#table-body").html("");
|
$("#table-body").html("");
|
||||||
var data = response['data'];
|
var data = response['data'];
|
||||||
for (var i = 0; i < data.length; i++) {
|
for (var i = 0; i < data.length; i++) {
|
||||||
@ -117,7 +128,8 @@ function index() {
|
|||||||
}
|
}
|
||||||
let datarow = '<tr class="align-middle" ' + datafilter + ' >' +
|
let datarow = '<tr class="align-middle" ' + datafilter + ' >' +
|
||||||
'<td>' + colldate + '</td> <td>' + patnumber + '</td> <td>' + accessnumber + '</td> <td>' + patname + '</td> <td>' + hon + '</td> <td>' + tests + '</td>' +
|
'<td>' + colldate + '</td> <td>' + patnumber + '</td> <td>' + accessnumber + '</td> <td>' + patname + '</td> <td>' + hon + '</td> <td>' + tests + '</td>' +
|
||||||
"<td role='button' class='"+bgcolor+" text-center align-middle' onclick='viewAccess("+accessnumber+")'>"+stattext+"</td>" + '</tr>';
|
"<td role='button' class='"+bgcolor+" text-center align-middle' onclick='viewAccess("+accessnumber+")'>"+stattext+"</td>" +
|
||||||
|
"<td role='button' class='text-center align-middle' onclick='resultPdfAccess("+accessnumber+")'> <i class='bi bi-filetype-pdf'></i> </td>" +'</tr>';
|
||||||
$("#table-body").append(datarow);
|
$("#table-body").append(datarow);
|
||||||
}
|
}
|
||||||
$('#myTable').DataTable();
|
$('#myTable').DataTable();
|
||||||
@ -164,10 +176,14 @@ function index() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function viewAccess(access) {
|
function viewAccess(access) {
|
||||||
let url = '<?=base_url();?>user/dashboard/viewAccess/'+access;
|
let url = '<?=base_url();?>admin/dashboard/viewAccess/'+access;
|
||||||
$('.modal-content').load(url, function(){
|
$('.modal-content').load(url, function(){
|
||||||
$('#modal').modal('show');
|
$('#modal').modal('show');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
function resultPdfAccess(access) {
|
||||||
|
let url = '<?=base_url();?>prints/result_test/'+access;
|
||||||
|
window.open(url, '_blank');
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
<?= $this->endSection() ?>
|
<?= $this->endSection() ?>
|
||||||
Loading…
x
Reference in New Issue
Block a user