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

208 lines
8.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);
// Connect to mysqli database
$page = 1; // The current page
$sortname = 'req_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
//echo $menu_key=$_REQUEST['pagekey'];
$menu_key = '210';
$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 != '') ? "where upper($qtype) like upper('%$query%')" : '';
if ($searchSql != '') {
if ($qtype == 'req_ref_no') {
$searchSql = " and req_id in (select req_id from requisition where req_ref_no like '%" . trim($query) . "%')";
//echo $searchSql;
}
if ($qtype == 'req_date') {
$searchSql = " and date_format(date(req_date),'%Y-%m-%d')=str_to_date('$query','%d/%m/%Y') ";
//echo $searchSql;
}
if ($qtype == 'ohc_location') {
$searchSql = " and ohc_location_id in (select ohc_type_id from ohc_type where ohc_type_name like '%$query%') ";
//echo $searchSql;
}
if ($qtype == 'item_code') {
$searchSql = "and req_id in (select req_id from requisition_items where item_id in ( select item_id from tbl_items where item_code like '%" . trim($query) . "%')) ";
//echo $searchSql;
}
if ($qtype == 'item_desc') {
$searchSql = "and req_id in (select req_id from requisition_items where item_id in ( select item_id from tbl_items where item_name like '%" . trim($query) . "%')) ";
//echo $searchSql;
}
}
$ohc_type = $_SESSION['current_ohcttype'];
/*$user_id=$_SESSION['user_id'];
$ohc_type=getTableFieldValue('tbl_users','ohc_type','user_id',$user_id);*/
// Get total count of records
//$searchSql=preg_replace('/and/', 'where', $searchSql, 1);
if ($ohc_type != null && $ohc_type != '')
$sql = "select count(*) from requisition where (status='Y' or status='R' or status='C') and (ohc_location_id='" . $_SESSION['current_ohcttype'] . "' or ohc_location_id in (select ohc_type_id from ohc_type where primary_ohc_id =$ohc_type ) ) $searchSql $sortSql";
else
$sql = "select count(*) from requisition where (status='Y' or status='R' or status='C') $searchSql $sortSql";
//echo $sql;
$result = mysqli_query($conn, $sql);
//echo $result;
$row = mysqli_fetch_array($result);
$total = $row[0];
if (!isset($rp)) {
$rp = 10;
}
// 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 ($ohc_type != null && $ohc_type != '') {
$sql1 = "select req_id, req_ref_no,req_date,remarks,ohc_location_id,status from requisition where (status='Y' or status='R' or status='C') and (ohc_location_id='" . $_SESSION['current_ohcttype'] . "' or ohc_location_id in (select ohc_type_id from ohc_type where primary_ohc_id =$ohc_type ) ) ";
} else {
$sql1 = "select req_id, req_ref_no,req_date,remarks,ohc_location_id,status from requisition where (status='Y' or status='R' or status='C')";
}
$sql_export = $sql1;
$sql1 .= " $searchSql $sortSql $limitSql ";
$sql_export .= " $searchSql $sortSql ";
//echo $sql1;
$results = mysqli_query($conn, $sql1);
//echo $results;
//echo mysqli_error($conn$results);
$count = ($page - 1) * $rp + 1;
//echo $sql_ailment;
//echo $access_level;
while ($row1 = mysqli_fetch_assoc($results)) {
$id = $row1['req_id'];
//echo $Department_id;
$view_link = "";
$edit_link = "";
$delete_link = "";
$status_update_link = "";
$links = "";
if ($hasReadAccess) {
//echo "shubham";
$view_link = "<a href=\"#\"class=\"green\" onclick=\"open_requisition('" . $id . "','V');\"><i class=\"ace-icon fa fa-search-plus bigger-130\"></i></a>";
}
// if($hasWriteAccess)
// {
// $edit_link="<a href=\"#\" class=\"blue\" onclick=\"open_requisition('".$id."','E');\"><i class=\"ace-icon fa fa-pencil bigger-130\"></i></a>";
// }
$sql_stock_issue = "select status from stock_issue where req_id='" . $id . "'";
$result_sql_stock_issue = mysqli_query($conn, $sql_stock_issue);
$record_result_sql_stock_issue = mysqli_fetch_assoc($result_sql_stock_issue);
if ($hasWriteAccess && $record_result_sql_stock_issue['status'] != 'N') {
$status_update_link = "<a href=\"#\" class=\"red\" onclick=\"mark_completed_item_stock('" . $id . "');\"><i class=\"ace-icon fa fa-check-circle bigger-130\"></i></a>";
}
$sql_pending_query = "select count(*) from requisition_items where req_id='" . $id . "'";
$result_sql_query = mysqli_query($conn, $sql_pending_query);
$num_row_result = mysqli_fetch_array($result_sql_query);
$num_row = $num_row_result[0];
error_log("count:" . $num_row);
$sql_pending_query2 = "select count(*) from stock_issue_items where req_id='" . $id . "'";
$result_sql_query2 = mysqli_query($conn, $sql_pending_query2);
$num_row_result2 = mysqli_fetch_array($result_sql_query2);
$num_row2 = $num_row_result2[0];
error_log("count:" . $num_row2);
if ($num_row > $num_row2) {
$status_update_link = "<a href=\"#\" class=\"red\" onclick=\"mark_completed_item_stock('" . $id . "');\"><i class=\"ace-icon fa fa-check-circle bigger-130\"></i></a>";
} else {
$status_update_link = "";
}
if ($record_result_sql_stock_issue['status'] == 'R') {
$status_update_link = "<a href=\"#\" class=\"red\" onclick=\"mark_completed_item_stock('" . $id . "');\"><i class=\"ace-icon fa fa-check-circle bigger-130\"></i></a>";
}
if ($record_result_sql_stock_issue['status'] == 'N') {
$status_update_link = "";
}
if ($row1['status'] == 'C') {
$status_update_link = "";
}
$item_desc = "";
//$item_qty="";
$sql_req_items = "select * from requisition_items where req_id='" . $row1['req_id'] . "'";
$results_req_items = mysqli_query($conn, $sql_req_items);
while ($row_req_items = mysqli_fetch_assoc($results_req_items)) {
$item_desc = $item_desc . ' <p> ' . getItemWithFormName($row_req_items['item_id']) . " ";
//$item_desc = $item_desc.getTableFieldValue('tbl_items','item_name','item_id',$row_req_items['item_id'])."<br/>";
$item_unit_id = getTableFieldValue('tbl_items', 'unit_id', 'item_id', $row_req_items['item_id']);
$item_unit = getTableFieldValue(' unit_master', 'unit_name', 'unit_id', $item_unit_id);
$item_desc = $item_desc . '<b> Qty: ' . $row_req_items['qty'] . ' ' . $item_unit . '</b>';
$item_desc = $item_desc . "</p>";
}
$space = "&nbsp;&nbsp;&nbsp;";
$links = $view_link . $space . $edit_link . $space . $status_update_link . $space;
$data['rows'][] = array(
'id' => $row1['req_id'],
'cell' => array($count++, $row1['req_ref_no'], date_format(date_create($row1['req_date']), "d-M-Y "), getTableFieldValue('ohc_type', 'ohc_type_name', 'ohc_type_id', $row1['ohc_location_id']), $item_desc, $row1['status'] == 'Y' ? 'Approved' : ($row1['status'] == 'N' ? 'Not Approved' : ($row1['status'] == 'C' ? 'Marked Completed' : 'Rejected')), $row1['remarks'], $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);