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

131 lines
4.8 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);
include('log_entry.php') ?>
<?php
// Connect to mysqli database
$page = 1; // The current page
$sortname = 'med_issue_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');
if ($qtype ==='date_of_issue') {
$searchSql = ($qtype != '' && $query != '') ? "where date_format(date(date_of_issue),'%Y-%m-%d')=str_to_date('$query','%d/%m/%Y')" : '';
}else $searchSql = ($qtype != '' && $query != '') ? $searchSql= "where upper($qtype) like upper('%$query%')" : '';
$sortSql = "order by $sortname $sortorder";
// Get total count of records
$sql_med_issue = "select count(*) from direct_medicine_issue_log $searchSql";
$result = @mysqli_query($conn, $sql_med_issue);
$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_med_issue_report = "select * from direct_medicine_issue_log a left join direct_medicine_issue_log_details x on a.issue_log_id=x.issue_log_id left join medicine_issue_point b on a.issue_point_id = b.point_id left join tbl_items c on x.item_id = c.item_id $searchSql";
// echo $sql_med_issue_report;
error_log("Sql: " . $sql_med_issue_report);
$results_report = @mysqli_query($conn, $sql_med_issue_report);
$count = ($page - 1) * $rp + 1;
while ($row_report = mysqli_fetch_assoc($results_report)) {
$id = $row_report['issue_log_id'];
// echo $sql_vaccine;
// echo $access_level;
$sql_issue_items = "select * from direct_medicine_issue_log_details where issue_log_id='" . $row_report['issue_log_id'] . "'";
error_log("Query direct_medicine_issue_log_details:" . $sql_issue_items);
$results_issue_items = mysqli_query($conn, $sql_issue_items);
$item_desc = "";
while ($row_issue_items = mysqli_fetch_assoc($results_issue_items)) {
if ($row_report['approval_status'] == '') {
$approval_status = "<span class='red'><b>Pending approval</b></span>";
} elseif ($row_report['approval_status'] == 'A') {
$approval_status = "<span class='green'><b>Approved</b></span>";
} elseif ($row_report['approval_status'] == 'R') {
$approval_status = "<span class='blue'><b>Rejected</b></span>";
}
$item_desc .= ' <p> ' . getItemWithFormName($row_issue_items['item_id']) . ' <b> Qty: ' . $row_issue_items['issue_qty'] . ' ' . getItemUnitName($row_issue_items['item_id']) . '</b></p>';
}
// echo $id;
error_log("id: " . $id);
$view_link = "";
$edit_link = "";
$delete_link = "";
$links = "";
if ($row_report['approval_status'] == 'A') {
if ($hasReadAccess) {
$view_link = "<a href=\"#\"class=\"green\" onclick=\"open_direct_medicine_issue_report('" . $id . "','V');\"><i class=\"ace-icon fa fa-search-plus bigger-130\"></i></a>";
}
}
if ($row_report['approval_status'] == '' || $row_report['approval_status'] == 'R') {
if ($hasWriteAccess) {
$edit_link = "<a href=\"#\" class=\"blue\" onclick=\"open_direct_medicine_issue_report('" . $id . "','E');\"><i class=\"ace-icon fa fa-pencil bigger-130\"></i></a>";
}
}
if ($hasExecuteAccess) {
$delete_link = "<a href=\"#\" class=\"blue\" onclick=\"delete_direct_medicine_issue_report('" . $id . "');\"><i class=\"ace-icon fa fa-trash-o bigger-130\"></i></a>";
}
$space = "&nbsp;&nbsp;&nbsp;";
$links = $assign_link . $space . $view_link . $space . $edit_link . $space . $delete_link;
$issue_dt = date_format(date_create($row_report['date_of_issue']), "d-M-Y ");
$data['rows'][] = array(
'issue_log_id' => $row_report['issue_log_id'],
'cell' => array(
$links,
$count++,
getFieldFromTable('type_name', 'medicine_issue_point', 'point_id', $row_report['issue_point_id']),
$issue_dt,
$item_desc,
$approval_status,
$row_report['comments'],
)
);
}
echo json_encode($data);
?>