208 lines
8.8 KiB
PHP
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 = " ";
|
|
$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);
|