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

184 lines
8.7 KiB
PHP

<?php
error_reporting(E_ERROR | E_PARSE);
include ('includes/config/config.php');
include ('includes/functions.php');
$noOfRows = $_POST ['count_items'];
// $noOfRows=$noOfRows-1;
// echo $noOfRows;
$stock_issue_id = $_POST ['stock_issue_id'];
//echo $stock_issue_id;
// $procurement_refno = $_POST['ref_no'];
// echo $procurement_refno;
$remarks = $_POST ['remarks'];
$issue_date = $_POST ['issue_date'];
// echo $procurement_id;
$initquery = "";
$data = array ();
$data['approval_status']=$_POST['approval_status'];
$rolecode = $_SESSION ['RoleCode'];
$endquery = "";
$isuue_ref_no = "";
$isOhcSpecific = getConfigKey("IS_OHC_SPECIFIC");
error_log("IS NOTICE OHC SPECFIC-> " . $isOhcSpecific);
$AndOhcFilter = "";
$WhereOhcFilter = "";
$CommaOhcFilter = "";
if ($isOhcSpecific == "TRUE") {
$AndOhcFilter = "and issue_ohc_type_id ='" . $_SESSION['current_ohcttype'] . "' ";
$WhereOhcFilter = "where issue_ohc_type_id = '" . $_SESSION['current_ohcttype'] . "' ";
$CommaOhcFilter = "issue_ohc_type_id = '" . $_SESSION['current_ohcttype'] . "' ";
}
begin();
if (! empty ( $stock_issue_id )) {
// update case
$initquery = "update stock_issue set ";
$endquery = " where stock_issue_id = '" . $stock_issue_id . "' and issue_ohc_type_id ='" . $_SESSION['current_ohcttype'] . "' ";
$data['stock_issue_id']=$stock_issue_id;
} else {
// insert case
$month=date('n');
$year = date ( 'Y' );
if ($month > 3) {
$year = $year;
} else {
$year = $year - 1;
}
$query_issue__ref_no = "select max( CAST(substring(issue_ref_no,locate('-',issue_ref_no)+1,length(issue_ref_no)-(5+locate('-',issue_ref_no))) as UNSIGNED) ) from stock_issue where issue_ref_no like '%$year%' and issue_ohc_type_id ='" . $_SESSION['current_ohcttype'] . "' ";
$result_issue_ref_no = @mysqli_query($conn,$query_issue__ref_no );
$row_isuue_ref_no = mysqli_fetch_row ( $result_issue_ref_no );
$isuue_ref_no = 'ISS-' . ($row_isuue_ref_no [0] + 1) . '-' . $year;
/*
* if(mysqli_num_rows($result_issue_ref_no) > 0){
* $row_isuue_ref_no = mysqli_fetch_row($result_issue_ref_no);
*
*
* $isuue_ref_no = 'ISS-'.($isuue_ref_no[0]+1).'-'.$year;
*
*
* }else{
* $isuue_ref_no = 'ISS-1-'.$year;
*
* }
*/
$initquery = "INSERT INTO stock_issue set issue_ref_no='$isuue_ref_no' , issue_ohc_type_id = '" . $_SESSION['current_ohcttype'] . "' ,";
}
if ($rolecode == 'DOC') {
// $query = $initquery . " remarks='" . $remarks . "', ohc_location_id='".$_POST['ohc_loc']."',status='".$_POST['approval_status']."', req_id='" . $_POST ['requisition_id'] . "', issue_date = STR_TO_DATE('" . $issue_date . "','%d/%m/%Y') ,approving_doc_emp_id='" . $_SESSION['logged_user_empid'] . "',modified_by = '" . $_SESSION ['user_id'] . "',issue_ohc_type_id='".$_SESSION['current_ohcttype']."' $endquery ";
$query = $initquery . " remarks='" . $remarks . "', ohc_location_id='".$_POST['ohc_loc']."',status='".$_POST['approval_status']."', req_id='" . $_POST ['requisition_id'] . "', issue_date = STR_TO_DATE('" . $issue_date . "','%d/%m/%Y') ,approving_doc_emp_id='" . $_SESSION['logged_user_empid'] . "',modified_by = '" . $_SESSION ['user_id'] . "' $endquery ";
}else{
// $query = $initquery . " remarks='" . $remarks . "', ohc_location_id='".$_POST['ohc_loc']."',status='".$_POST['approval_status']."', req_id='" . $_POST ['requisition_id'] . "', issue_date = STR_TO_DATE('" . $issue_date . "','%d/%m/%Y') ,stock_issue_emp_id = '" . $_SESSION['logged_user_empid'] . "',modified_by = '" . $_SESSION ['user_id'] . "',issue_ohc_type_id='".$_SESSION['current_ohcttype']."' $endquery ";
$query = $initquery . " remarks='" . $remarks . "', ohc_location_id='".$_POST['ohc_loc']."',status='".$_POST['approval_status']."', req_id='" . $_POST ['requisition_id'] . "', issue_date = STR_TO_DATE('" . $issue_date . "','%d/%m/%Y') ,stock_issue_emp_id = '" . $_SESSION['logged_user_empid'] . "',modified_by = '" . $_SESSION ['user_id'] . "' $endquery ";
}
//echo $query;
error_log("xxx".$query);
if (! $result = @mysqli_query($conn,$query )) {
error_log("Error saving stock issue:".mysqli_error($conn).": Query Failing: ".$query);
rollback();
exit(error_log(mysqli_error($conn)));
} else {
if (empty ( $_POST ['stock_issue_id'] )) {
// insert case when procuremnt id is not available but needed for saving into the child table
$query = "select stock_issue_id from stock_issue where issue_ref_no= '$isuue_ref_no' and issue_ohc_type_id = '" . $_SESSION['current_ohcttype'] . "' ";
//echo $query;
if (! $result = @mysqli_query($conn,$query )) {
error_log("stock issue no result found: Query Failing: ".$query);
// rollback();
//exit(error_log(mysqli_error($conn)));
} else {
if (mysqli_num_rows ( $result ) > 0) {
while ( $row = mysqli_fetch_assoc ( $result ) ) {
$data = $row;
$stock_issue_id = $row ['stock_issue_id'];
}
}
}
}
if (! empty ( $stock_issue_id )) {
/*
* $current_stock_level_procurement_items_query="select item_id,qty from requisition_items where req_id='".req_id."' ";
* $results_procuerment_items=mysqli_query($conn,$current_stock_level_procurement_items_query);
* echo $current_stock_level_procurement_items_query;
* while($rows_procurement_items=mysqli_fetch_assoc($results_procuerment_items)){
* $current_stock_level_items_qty= getTableFieldValue('tbl_items','current_stock_level','item_id',$rows_procurement_items['item_id']);
* $current_stock_level_items_qty=$current_stock_level_items_qty-$rows_procurement_items['qty'];
* echo current_stock_level_items_qty;
* $current_stock_query="update tbl_items set current_stock_level='".$current_stock_level_items_qty."' where item_id='".$rows_procurement_items['item_id']."' ";
* echo $current_stock_query;
* mysqli_query($conn,$current_stock_query);
*
* }
*/
}
resetStockAtStoreLevelForStore($stock_issue_id,$_SESSION['current_ohcttype']);
// clear existing entries into the child table
$query_del = " delete from stock_issue_items where stock_issue_id = '" . $stock_issue_id . "' and issue_ohc_type_id = '" . $_SESSION['current_ohcttype'] . "' ";
// echo $query_del;
if (!$result_del = @mysqli_query($conn,$query_del )) {
rollback();
exit(error_log(mysqli_error($conn)));
}
for($i = 0; $i < $noOfRows; $i ++) {
// echo $i;
/*$current_stock__query="select stock_qty from item_stock where item_id=${"item_id$i"} and item_batch_no='".${"item_batch_no$i"}."' ";
$results_stock__query=mysqli_query($conn,$current_stock__query);
$row_stocks = mysqli_fetch_row ( $results_stock__query );
//$stock_qty = getTableFieldValue ( 'item_stock', 'stock_qty', 'item_id', ${"item_id$i"}, 'item_batch_no',$item_batch_no));
$stock_qty = floatval ( $row_stocks[0] ) - (floatval ( ${"issue_qty$i"} )-floatval ( ${"old_issue_qty$i"} ));
// echo $current_stock_level;
$current_stock_query = "update item_stock set stock_qty='" . $stock_qty . "' where item_id='${"item_id$i"}' and item_batch_no='${"item_batch_no$i"}' ";
// echo $current_stock_query;
mysqli_query($conn,$current_stock_query );*/
/*
* $current_stock_level= getTableFieldValue('tbl_items','current_stock_level','item_id',${"item_id$i"});
* $current_stock_level=$current_stock_level+${"item_qty$i"};
* //echo $current_stock_level;
* $current_stock_query="update tbl_items set current_stock_level='".$current_stock_level."' where item_id='${"item_id$i"}' ";
* echo $current_stock_query;
* mysqli_query($conn,$current_stock_query);
*/
if(isset(${"issue_qty$i"}) && ${"issue_qty$i"}!=null && ${"issue_qty$i"}!='' && ${"issue_qty$i"}>0){
// $batch_ref_no=${"item_id$i"}.'_'.${"batch$i"};
if($_POST['approval_status']!='R'){
//$stock_qty = floatval ( $row_stocks[0] )+ floatval ( ${"issue_qty$i"} );
updateStockAtStoreLevel(${"item_id$i"},${"item_batch_no$i"},${"issue_qty$i"},$_SESSION['current_ohcttype']);
}
$query1 = "insert into stock_issue_items set stock_issue_id='$stock_issue_id',req_item_id='" . ${"req_item_id$i"} . "',item_batch_no='" . ${"item_batch_no$i"} . "', req_id='" . $_POST ['requisition_id'] . "', item_id ='" . ${"item_id$i"} . "',req_qty='".${"requisition_qty$i"}."',issue_qty = '" . ${"issue_qty$i"} . "',issue_ohc_type_id='".$_SESSION['current_ohcttype']."' ";
if (!$result1 = @mysqli_query($conn,$query1)) {
error_log ("Exception saving stock_issue_items:".mysqli_error($conn)." failing query:".$query1);
rollback();
exit(mysqli_error($conn));
}
}
// $item_stock_query="select current_stock_level from tbl_items where item_id='".${"item_id$i"}."'";
}
}
commit();
if ($data == null) {
$data ['status'] = 200;
$data ['message'] = "Data not found!";
}
echo json_encode ( $data );