124 lines
4.9 KiB
PHP
124 lines
4.9 KiB
PHP
<?php
|
|
include('includes/config/config.php');
|
|
include('includes/auth/auth.php');
|
|
include('includes/functions.php');
|
|
include('access.php');
|
|
error_reporting(E_ERROR | E_PARSE);
|
|
?>
|
|
<?php
|
|
|
|
// Connect to mysqli database
|
|
$page = 1; // The current page
|
|
$sortname = 'result_id'; // Sort column
|
|
$sortorder = 'asc'; // Sort order
|
|
$qtype = ''; // Search column
|
|
$query = ''; // Search string
|
|
// Get posted data
|
|
if (isset($_POST['page'])) {
|
|
$page = mysqli_real_escape_string($conn, $_POST['page']);
|
|
}
|
|
if (isset($_POST['sortname'])) {
|
|
$sortname = mysqli_real_escape_string($conn, $_POST['sortname']);
|
|
}
|
|
if (isset($_POST['sortorder'])) {
|
|
$sortorder = mysqli_real_escape_string($conn, $_POST['sortorder']);
|
|
}
|
|
if (isset($_POST['qtype'])) {
|
|
$qtype = mysqli_real_escape_string($conn, $_POST['qtype']);
|
|
}
|
|
if (isset($_POST['query'])) {
|
|
$query = mysqli_real_escape_string($conn, $_POST['query']);
|
|
}
|
|
if (isset($_POST['rp'])) {
|
|
$rp = mysqli_real_escape_string($conn, $_POST['rp']);
|
|
}
|
|
// Setup sort and search SQL using posted data
|
|
$hasReadAccess = isAccessible($_SESSION['RoleId'], $menu_key, 'R');
|
|
$hasWriteAccess = isAccessible($_SESSION['RoleId'], $menu_key, 'W');
|
|
$hasExecuteAccess = isAccessible($_SESSION['RoleId'], $menu_key, 'E');
|
|
|
|
$sortSql = "order by $sortname $sortorder";
|
|
|
|
$accession_number_sql = "";
|
|
if ($qtype == 'emp_code') {
|
|
|
|
$patient_id = getFieldFromTable('id', 'patient_master', 'emp_code', trim($query));
|
|
|
|
$searchSql = ($qtype != '' && $query != '') ? " where patient_id ='" . $patient_id . "'" : '';
|
|
} else if ($qtype == 'accession_number') {
|
|
$searchSql = ($qtype != '' && $query != '') ? " where upper($qtype) = '" . trim($query) . "'" : '';
|
|
} else {
|
|
$searchSql = ($qtype != '' && $query != '') ? " where upper($qtype) like upper('%$query%')" : '';
|
|
}
|
|
// Get total count of records
|
|
|
|
|
|
$sql = "select count(*) from device_result where accession_number in (select accession_number from device_order $searchSql) and online_testcode in (select online_testcode from device_order $searchSql) ";
|
|
$result = mysqli_query($conn, $sql);
|
|
$row = mysqli_fetch_array($result);
|
|
$total = $row[0];
|
|
// Setup paging
|
|
if (!isset($rp)) {
|
|
$rp = 10;
|
|
}
|
|
$pageStart = ($page - 1) * $rp;
|
|
$limitSql = "limit $pageStart, $rp";
|
|
// Return JSON data
|
|
$data = array();
|
|
$data['page'] = $page;
|
|
$data['total'] = $total;
|
|
$data['rows'] = array();
|
|
$sql_device_result = "select * from device_result where accession_number in (select accession_number from device_order $searchSql) and online_testcode in (select online_testcode from device_order $searchSql) $sortSql $limitSql";
|
|
error_log("sql " . $sql_device_result);
|
|
$results_device_result = mysqli_query($conn, $sql_device_result);
|
|
$count = ($page - 1) * $rp + 1;
|
|
|
|
// echo $sql_device_result;
|
|
// echo $access_level;
|
|
|
|
while ($row_device_result = mysqli_fetch_assoc($results_device_result)) {
|
|
|
|
$device_result_id = $row_device_result['result_id'];
|
|
// echo $device_result_id;
|
|
$view_link = "";
|
|
$edit_link = "";
|
|
$delete_link = "";
|
|
$links = "";
|
|
// if ($hasReadAccess) {
|
|
// $view_link = "<a href=\"#\"class=\"grey\" onclick=\"open_device_result('" . $device_result_id . "','V');\"><i class=\"ace-icon fa fa-eye bigger-130\"></i></a>";
|
|
// }
|
|
|
|
if ($hasWriteAccess) {
|
|
$edit_link = "<a href=\"#\" class=\"blue\" onclick=\"edit_device_result('" . $device_result_id . "','" . $row_device_result['online_testcode'] . "','" . $row_device_result['test_result'] . "','" . $row_device_result['accession_number'] . "');\"><i class=\"ace-icon fa fa-edit bigger-130\"></i></a>";
|
|
}
|
|
if ($hasExecuteAccess) {
|
|
$delete_link = "<a href=\"#\" class=\"red\" onclick=\"delete_data('" . $device_result_id . "','" . $row_device_result['online_testcode'] . "','" . $row_device_result['test_result'] . "','" . $row_device_result['accession_number'] . "');\"><i class=\"ace-icon fa fa-trash-o bigger-130\"></i></a>";
|
|
}
|
|
$space = " ";
|
|
$links = $assign_link . $space . $view_link . $space . $edit_link . $space . $delete_link;
|
|
|
|
$patient_id = getFieldFromTable('patient_id', 'device_order', 'accession_number', $row_device_result['accession_number']);
|
|
|
|
error_log("patient id " . $patient_id);
|
|
|
|
$checkbox = "<input type='checkbox' value='" . $device_result_id . "' id='check_" . $count . "' class='checkbox' />";
|
|
|
|
$data['rows'][] = array(
|
|
'id' => $row_device_result['id'],
|
|
'cell' => array(
|
|
$checkbox,
|
|
$count++,
|
|
$row_device_result['accession_number'],
|
|
$row_device_result['online_testcode'],
|
|
getFieldFromTable('patient_name', 'patient_master', 'id', $patient_id),
|
|
getFieldFromTable('emp_code', 'patient_master', 'id', $patient_id),
|
|
$row_device_result['test_result'],
|
|
// $row_device_result['sampletype'],
|
|
$row_device_result['device_name'],
|
|
$row_device_result['insert_datetime'],
|
|
$links
|
|
)
|
|
);
|
|
}
|
|
echo json_encode($data);
|
|
?>
|