csrtechnew.ohctech.in/patient_appointment_script.php
2025-04-14 13:28:09 +05:30

160 lines
6.2 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 = 'date'; // Sort column
$sortorder = 'desc'; // 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']);
}
$hasReadAccess = isAccessible($_SESSION['RoleId'], $menu_key, 'R');
$hasWriteAccess = isAccessible($_SESSION['RoleId'], $menu_key, 'W');
$hasExecuteAccess = isAccessible($_SESSION['RoleId'], $menu_key, 'E');
// Setup sort and search SQL using posted data
$sortSql = "order by $sortname $sortorder";
if ($qtype == 'patient_name' || $qtype == 'emp_code') {
$searchSql = ($qtype != '' && $query != '') ? "and upper($qtype) like upper('%" . trim($query) . "%')" : '';
}
// $searchSql = ($qtype != '' && $query != '') ? "where upper($qtype) like upper('%".trim($query)."%')" : '';
$searchSql = preg_replace('/and/', 'and', $searchSql, 1);
// Get total count of records
// if($_SESSION['RoleCode']=='RCP'){
$sql = "SELECT count(*) from appointment_details a inner join patient_master p on p.id = a.emp_id WHERE a.ohc_type_id= '" . $_SESSION['current_ohcttype'] . "' $searchSql";
// }else if($_SESSION['RoleCode']=='DOC'){
// $sql = "SELECT count(*) from appointment_details a inner join patient_master p on p.id = a.emp_id WHERE a.ohc_type_id= '".$_SESSION['current_ohcttype']."' and a.status='DRP' or a.status='DRA' $searchSql";
// }
error_log($sql . "sql");
if ($qtype == 'date') {
$searchSql = " and ($qtype)=str_to_date('$query','%d/%m/%Y') ";
// $searchSql = " and date_format(date(appointment_date),'%Y-%m-%d')=str_to_date('$query','%d-%m-%Y') ";
} else if ($qtype == 'appointment_date_between') {
$dates = explode("-", $query);
// $qtype=" due_date between ";
$searchSql = " and date(date) between str_to_date('" . trim($dates[0]) . "','%d/%m/%Y') and str_to_date('" . trim($dates[1]) . "','%d/%m/%Y') ";
}
$result = mysqli_query($conn, $sql);
$row = mysqli_fetch_array($result);
$total = $row[0];
// Setup paging SQL
//$rp=1;
$pageStart = ($page - 1) * $rp;
$limitSql = "limit $pageStart, $rp";
// Return JSON data
$data = array();
$data['page'] = $page;
$data['total'] = $total;
$data['rows'] = array();
// if($_SESSION['RoleCode']=='RCP'){
$sql1 = "SELECT a.*,p.patient_name,p.emp_code,p.dob,p.grade_id FROM appointment_details a inner join patient_master p on p.id = a.emp_id WHERE a.ohc_type_id= '" . $_SESSION['current_ohcttype'] . "' ";
// }else if($_SESSION['RoleCode']=='DOC'){
// $sql1 = "SELECT a.*,p.patient_name FROM appointment_details a inner join patient_master p on p.id = a.emp_id WHERE a.ohc_type_id= '".$_SESSION['current_ohcttype']."' and a.status='DRP' or a.status='DRA' ";
// }
$sql_export = $sql1;
$sql1 .= " $searchSql $sortSql $limitSql";
$sql_export .= " $searchSql $sortSql ";
error_log($sql1);
$results_section = mysqli_query($conn, $sql1);
$count = ($page - 1) * $rp + 1;
//echo $sql_ailment;
//echo $access_level;
while ($row1 = mysqli_fetch_assoc($results_section)) {
$city_id = $row1['id'];
//echo $Department_id;
$view_link = "";
$edit_link = "";
$delete_link = "";
$links = "";
if ($hasReadAccess)
// {
// //echo "shubham";
// $view_link="<a href=\"#\"class=\"green\" onclick=\"open_section('".$city_id."','V');\"><i class=\"ace-icon fa fa-search-plus bigger-130\"></i></a>";
// }
if ($hasWriteAccess) {
$edit_link = "<a href=\"#\" class=\"blue\" onclick=\"open_section('" . $city_id . "','E');\"><i class=\"ace-icon fa fa-pencil bigger-130\"></i></a>";
}
if ($hasExecuteAccess) {
$delete_link = "<a href=\"#\" class=\"red\" onclick=\"delete_section('" . $city_id . "');\"><i class=\"ace-icon fa fa-trash-o bigger-130\"></i></a>";
}
$date_time = date_format(date_create($row1['date']), "d-m-Y ");
$time_app = getCommaSeperatedValuesForInClause("select concat(TIME_FORMAT(slot, '%h:%i %p'),'-',TIME_FORMAT(slot_end, '%h:%i %p')) as slot from appoinment_slots ", "slot_id", $row1['time']);
if ($row1['app_type'] == 'FIT') {
$row1['app_type'] = 'Sickness/Fitness';
} else if ($row1['app_type'] == 'MED') {
$row1['app_type'] = 'Annual Medical Checkup';
}
$patient_name = getTableFieldValue('patient_master', 'patient_name', 'id', $row1['emp_id']);
$doctor_name = getTableFieldValue('patient_master', 'patient_name', 'id', $row1['doctor_id']);
if ($row1['status'] == 'BOOKED') {
$status = "<p> <font color=red>Pending</font> </p>";
} else if ($row1['status'] == 'DRP') {
$status = "<p> <font color=red>Pending</font> </p>";
} else if ($row1['status'] == 'DRA') {
$status = "<p> <font color=green>Completed</font> </p>";
} else if ($row1['status'] == 'CANCELLED') {
$status = "<p> <font color=red>Cancelled</font> </p>";
}
$space = "&nbsp;&nbsp;&nbsp;";
$links = $assign_link . $space . $view_link . $space . $edit_link . $space . $delete_link;
$data['rows'][] = array(
'id' => $row1['city_id'],
'cell' => array(
$count++, $date_time, $time_app, $patient_name,
$row1['emp_code'],
isset($row1['dob']) ? date_diff(date_create($row1['dob']), date_create('today'))->y : "Not Available",
getTableFieldValue('grade_master', 'grade_name', 'grade_id', "'" . $row1['grade_id'] . "'"),
$doctor_name, $row1['app_type'], $status, $links
)
);
}
$data['rows'][] = array(
'id' => $row['filterkey'],
'cell' => array('', "<input type=hidden name='filterkey' id='filterkey' value=\"" . base64_encode($sql_export) . "\">", "<input type=hidden name=paramlist id=paramlist value=\"" . base64_encode($paramlist) . "\">", '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '')
);
echo json_encode($data);
?>