csrtechnew.ohctech.in/view_approved_indents_script.php
2025-08-29 16:30:39 +05:30

265 lines
11 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 MySQL database
$page = 1; // The current page
$sortname = 'indent_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'];
$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%')" : '';
$role_code=$_SESSION['RoleCode'];
if($role_code == 'VTIH'){
$searchSql = ($qtype != '' && $query != '') ? " where upper($qtype) like upper('%$query%') AND role_type = 'VTI' " : "WHERE role_type = 'VTI'";
}else if($role_code == 'CPU' || $role_code == 'AHEAD'){
$searchSql = ($qtype != '' && $query != '') ? " where upper($qtype) like upper('%$query%') AND role_type = 'CSR' " : "WHERE role_type = 'CSR'";
}
// Get total count of records
// $searchSql = preg_replace('/and/', 'where', $searchSql, 1);
/*$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);
$sql = "select count(*) from indent_master $searchSql $sortSql";
error_log("check_sql : ".$sql);
// 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();
$sql1 = "select * from indent_master ";
$sql_export = $sql1;
$sql1 .= " $searchSql $sortSql $limitSql ";
$sql_export .= " $searchSql $sortSql ";
//echo $sql1;
$results = mysqli_query($conn, $sql1);
//echo $results;
//echo mysqli_error($results);
$count = ($page - 1) * $rp + 1;
//echo $sql_ailment;
//echo $access_level;
while ($row1 = mysqli_fetch_assoc($results)) {
$space = "&nbsp;&nbsp;&nbsp;";
$id = $row1['indent_id'];
$pos='';
$grn='';
//echo $Department_id;
$view_link = "";
$edit_link = "";
$delete_link = "";
$pdf_link='';
$status_update_link = "";
$links = "";
$location =getTableFieldValue('ohc_type','ohc_type_name','ohc_type_id ',$row1['ohc_type_id']);
if ($hasExecuteAccess) {
//echo "shubham";
$pdf_link="<a href=\"#\" class=\"blue\" onclick=\"open_indent_items_pdf('" . $id . "');\">" . $row1['indent_ref_no'] . "</a>";
$email_link = $space . "<a id='appointment_id_" . $id . "' href=\"#\" class=\"blue\" onclick=\"open_item('" . $id . "','" . $appointment_type . "','" . $dept_email . "',this);\"><i class=\"fa fa-envelope\" style=\"font-size: 15px;\"></i></a>";
// $delete_link = "<a href=\"#\"class=\"red\" onclick=\"delete_indent('" . $id . "','E');\"><i class=\"ace-icon fa fa-trash bigger-130\"></i></a>";
}
$app_rem1 = $row1['approval_remarks1'];
$app_rem2 = $row1['approval_remarks2'];
$indent_ref_no = "<a href=\"#\" class=\"blue\" onclick=\"open_indent_items_pdf('" . $id . "');\">" . $row1['indent_ref_no'] . "</a>";
$total_price=0;
$item_desc = "";
$item_qty = "";
$sup_doc="";
$sup_not_approved_item=0;
$items_status=array();
$sql_sup = "select indent_doc_id,indent_doc_des from indent_doc where indent_id='" . $row1['indent_id'] . "'";
error_log("indent po_sql" . $sql_sup);
$result_sup = mysqli_query($conn, $sql_sup);
while ($row_sup = mysqli_fetch_assoc($result_sup)) {
$title_doc=$row_sup['indent_doc_des'];
$sup_doc.= "<a target=\"_blank\" title=\"$title_doc\" href='getSupDocLink.php?id=" . $row_sup['indent_doc_id'] . "' class=\"red\"><i class=\"ace-icon fa fa-file-pdf-o bigger-130\"></i></a>". $space ;
}
$sql_q = "select * from indent_items where indent_id='" . $row1['indent_id'] . "'";
error_log("indent sql" . $sql_q);
$result = mysqli_query($conn, $sql_q);
while ($row2 = mysqli_fetch_assoc($result)) {
array_push($items_status,$row2['status']);
// $item_desc = $item_desc . ' <p> ' . getItemWithFormName($row2['item_id']) . '</p>';
// $item_unit_id = getTableFieldValue('tbl_items', 'unit_id', 'item_id', $row2['item_id']);
// $item_unit = getTableFieldValue(' unit_master', 'unit_name', 'unit_id', $item_unit_id);
// $item_qty = $item_qty . ' <p> ' . $row2['indent_qty'] . ' ' . $item_unit . '</p>';
$item_qty=$row2['indent_qty'];
$item_id=$row2['item_id'];
$rate=getTableFieldValue('item_rate','item_rate','item_id',$item_id);
$unit=getTableFieldValue('item_rate','unit','item_id',$item_id);
if($unit==0 || $unit==''){
$ratePerUnit=0;
}
else{ $ratePerUnit=round($rate/$unit,2);}
//error_log($ratePerUnit);
$total_price+=($ratePerUnit*$item_qty);
if($row2['status']=='APPROVED_VENDOR_RATE'){
$sup_not_approved_item++;
}
}
$sql_po_q = "select DISTINCT(item_po_no) from indent_items where indent_id='" . $row1['indent_id'] . "'";
error_log("indent po_sql" . $sql_po_q);
$po_result = mysqli_query($conn, $sql_po_q);
$new_po_no = getFieldFromTable('po_no','po_master','indent_id',$row1['indent_id']);
while ($po_row2 = mysqli_fetch_assoc($po_result)) {
$po_report = "<a href=\"#\" class=\"green\" onclick=\"open_po_items_pdf('".$new_po_no."');\">" . $new_po_no . "</a>";
$pos.=$po_report . $space ;
}
$sql_grn_q = "select DISTINCT(item_grn_no) from grn_master where indent_id='" . $row1['indent_id'] . "' ";
error_log("indent grn_sql" . $sql_grn_q);
$grn_result = mysqli_query($conn, $sql_grn_q);
$new_grn_no = getFieldFromTable('item_grn_no','grn_master','indent_id',$row1['indent_id']);
while ($grn_row2 = mysqli_fetch_assoc($grn_result)) {
$grn_report= "<a class=\"green\" onclick=\"open_grn_items_pdf('" . $new_grn_no . "');\">" . $new_grn_no . "</a>";
$grn.=$grn_report . $space ;
}
$items_status=array_unique($items_status);
$fit = "";
if(count($items_status)==1){
if ($items_status == 'REJECTED') {
$fit = "<span class='lighter red'>REJECTED</i></span>";
} else if($items_status[0] == 'APPROVED_LEVEL_1') {
$fit .= "<span class='green'>Administrative Head Approved</i></span>";
}else if($items_status[0] == 'APPROVED_LEVEL_2') {
$fit .= "<span class='green'>Commercial Purchase/HOD Approved</i></span>";
}else if($items_status[0] == 'PENDING_RATE') {
$fit .= "<span class='green'> PENDING RFQ </i></span>";
}else if($items_status[0] == 'APPROVED_VENDOR_RATE') {
$fit .= "<span class='green'>RFQ CREATED By VENDOR</i></span>";
}else if($items_status[0] == 'APPROVED_VENDOR_RATE' && $sup_not_approved_item!=0){
$fit .= "<span class='green'>QUOTATION CREATED </i></span>";
}else if($items_status[0] == 'SUP_APPROVED' && $sup_not_approved_item==0){
$fit .= "<span class='green'> SENT TO HEAD SUPERVISOR </i></span>";
}else{
if($row1['status'] == 'PENDING') {
$fit .= "<span class='red'>Pending</i></span>";
}else if($row1['status'] == 'APPROVED_LEVEL_1') {
$fit .= "<span class='green'>Admistrative Approved</i></span>";
}else if($row1['status'] == 'APPROVED_LEVEL_2') {
$fit .= "<span class='green'>Commercial Purchase/HOD Approved</i></span>";
}else if($row1['status'] == 'APPROVED_LEVEL_3') {
$fit .= "<span class='green'>Commercial Purchase/HOD Approved/VTI HEAD Approved</i></span>";
} else if($row1['status'] == 'PENDING_RATE') {
$fit .= "<span class='green'> PENDING RFQ </i></span>";
}else if($row1['status'] == 'APPROVED_VENDOR_RATE') {
$fit .= "<span class='green'>RFQ CREATED By VENDOR</i></span>";
}else if($row1['status'] == 'APPROVED_VENDOR_RATE' && $sup_not_approved_item!=0){
$fit .= "<span class='green'>QUOTATION CREATED </i></span>";
}else if($row1['status'] == 'SUP_APPROVED' && $sup_not_approved_item==0){
$fit .= "<span class='green'> SENT TO HEAD SUPERVISOR </i></span>";
}
// $fit .= "<span class='green'>".$row1['status']."</i></span>";
}
}else{
for($s=0;$s<count($items_status);$s++){
if ($items_status[$s] == 'REJECTED') {
$fit = "<span class='lighter red'>Some Are REJECTED</i></span>". $space;
} else if($items_status[$s] == 'APPROVED_LEVEL_1') {
$fit .= "<span class='green'>Some Are Administrative Head Approved</i></span>". $space;
}else if($items_status[$s] == 'APPROVED_LEVEL_2') {
$fit .= "<span class='green'>Some Are Commercial Purchase/HOD Approved</i></span>". $space;
}else if($items_status[$s] == 'PENDING_RATE') {
$fit .= "<span class='green'>Some Are PENDING RFQ </i></span>". $space;
}else if($items_status[$s] == 'APPROVED_VENDOR_RATE') {
$fit .= "<span class='green'>Some Are RFQ CREATED By VENDOR</i></span>. $space";
}else if($items_status[$s] == 'APPROVED_VENDOR_RATE' && $sup_not_approved_item!=0){
$fit .= "<span class='green'>Some Are QUOTATION CREATED </i></span>". $space;
}else if($items_status[$s] == 'SUP_APPROVED' && $sup_not_approved_item==0){
$fit .= "<span class='green'>Some Are SENT TO HEAD SUPERVISOR </i></span>". $space;
}else{
$fit .= "<span class='green'> Some Are".$row1['status']."</i></span>". $space;
}
}
}
$links = $delete_link . $space .$email_link . $space.$sup_doc . $space;
$status = $fit;
$data['rows'][] = array(
'id' => $row1['indent_id'],
'cell' => array($links, $count++, $indent_ref_no,$location,$pos,$grn , date_format(date_create($row1['indent_date']), "d-M-Y "), round($total_price,2), $status, $row1['remarks'], $app_rem1, $app_rem2,)
);
}
$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);