ESH/billing_script.php
2024-10-23 18:28:06 +05:30

110 lines
4.0 KiB
PHP

<?php
include('includes/config/config.php');
include('includes/auth/auth.php');
include('includes/functions.php');
include('access.php');
include('log_entry.php');
error_reporting(E_ERROR | E_PARSE);
?>
<?php
// Connect to MySQL database
$page = 1; // The current page
$sortname = 'bill_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";
$searchSql = ($qtype != '' && $query != '') ? "and upper($qtype) like upper('%$query%')" : '';
// Get total count of records
$sql = "select count(*)from bill_master $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_bill = "select b.*, e.patient_name FROM bill_master b left join patient_master e on b.patient_id=e.id where b.patient_id is not null $searchSql $sortSql $limitSql";
error_log($sql_bill);
//echo $sql_medicine;
$results_bill = mysqli_query($conn, $sql_bill);
$count = ($page - 1) * $rp + 1;
//echo $sql_ailment;
//echo $access_level;
while ($row_bill = mysqli_fetch_assoc($results_bill)) {
//extract $row_medicine;
$bill_id = $row_bill['bill_id'];
$row_bill['client_name'] = getFieldFromTable('client_name', 'client_master', 'client_id', $row_bill['client_id']);
// error_log(getFieldFromTable('client_name','client_master','client_id',$row_bill['client_id']));
//echo $ailment_id;
$view_link = "";
$edit_link = "";
$delete_link = "";
$pdf_link = "";
$links = "";
if ($hasReadAccess) {
//"shubham";
$view_link = "<a href=\"#\"class=\"green\" onclick=\"open_bill('" . $bill_id . "','V');\"><i class=\"ace-icon fa fa-search-plus bigger-130\"></i></a>";
$pdf_link = "<a href=\"#\" class=\"red\" onclick=\"exporttopdf_common('" . $bill_id . "');\"><i class=\"fa fa-file-pdf-o\"></i></a>";
}
if ($hasWriteAccess) {
$edit_link = "<a href=\"#\" class=\"blue\" onclick=\"open_bill('" . $bill_id . "','E');\"><i class=\"ace-icon fa fa-pencil bigger-130\"></i></a>";
}
if ($hasExecuteAccess) {
$delete_link = "<a href=\"#\" class=\"blue\" onclick=\"delete_bill('" . $bill_id . "');\"><i class=\"ace-icon fa fa-trash-o bigger-130\"></i></a>";
}
$space = "&nbsp;&nbsp;&nbsp;";
$links = $space . $view_link . $space . $edit_link . $space . $delete_link . $space . $pdf_link;
$discount_voucher = getFieldFromTable('voucher_name', 'voucher_master', 'voucher_id', $row_bill['discount_voucher']);
if ($row_bill['amount_pending_company'] == '0' || $row_bill['amount_paid_patient'] == $row_bill['final_bill_amount']) {
$bill_status = "PAID";
} else {
$bill_status = "PARTIALLY PAID";
}
$data['rows'][] = array(
'id' => $row_bill['bill_id'],
'cell' => array($links, $count++, $row_bill['bill_no'], date_format(date_create($row_bill['bill_date']), "d-M-Y "), $row_bill['patient_name'], $row_bill['final_bill_amount'])
);
}
echo json_encode($data);
?>