2024-10-16 19:18:52 +05:30
< ? php
include ( 'includes/config/config.php' );
include ( 'includes/functions.php' );
include ( 'log_entry.php' );
error_log ( " Start Printing Request Attributes " );
$requestStr = " " ;
foreach ( $_REQUEST as $key => $value ) {
$requestStr .= $key . " : " . $value . " \n " ;
error_log ( $key . " : " . $value . " <br /> \r \n " );
}
error_log ( " End Printing Request Attributes " );
save_log ( $requestStr , 'Procurement' , 'SAVE' , 'save_procurement.php' );
$noOfRows = $_POST [ 'count_items' ];
begin ();
//echo $noOfRows;
$procurement_id = $_POST [ 'procurement_id' ];
$procurement_refno = $_POST [ 'ref_no' ];
//echo $procurement_refno;
$remarks = $_POST [ 'remarks' ];
$procurement_date = $_POST [ 'procurement_date' ];
$supplier = $_POST [ 'supplier' ];
$invoice_no = $_POST [ 'invoice_no' ];
$ohc_id = $_SESSION [ 'current_ohcttype' ];
// echo $procurement_id;
$initquery = " " ;
//$data = array();
$endquery = " " ;
if ( ! empty ( $procurement_id )) {
//update case
$initquery = " update procurement set " ;
$endquery = " where procurement_id = ' " . $procurement_id . " ' and ohc_type_id=' " . $ohc_id . " ' " ;
} else {
//insert case
$procurement_refno = creatingProcurementNo ();
$initquery = " INSERT INTO procurement set ohc_type_id=' " . $ohc_id . " ', " ;
}
$query = $initquery . " procurement_refno = ' " . strtoupper ( $procurement_refno ) . " ',supplier=' " . $supplier . " ',invoice_no=' " . $invoice_no . " ',remarks=' " . $remarks . " ', procurement_date = STR_TO_DATE(' " . $procurement_date . " ','%d/%m/%Y') ,modified_by = ' " . $_SESSION [ 'user_id' ] . " ' $endquery " ;
echo $query ;
error_log ( " query: " . $query );
if ( ! $result = @ mysqli_query ( $conn , $query )) {
rollback ();
header ( 'HTTP/1.1 500 Internal Server Error' );
echo json_encode ( die ( 'failed!' . mysqli_error ( $conn )));
} else {
if ( empty ( $_POST [ 'procurement_id' ])) {
//insert case when procuremnt id is not available but needed for saving into the child table
$query = " select max(procurement_id) as procurement_id from procurement where procurement_refno= ' " . strtoupper ( $procurement_refno ) . " ' and ohc_type_id = ' " . $ohc_id . " ' " ;
//echo $query;
if ( ! $result = @ mysqli_query ( $conn , $query )) {
rollback ();
header ( 'HTTP/1.1 500 Internal Server Error' );
echo json_encode ( die ( 'failed!' . mysqli_error ( $conn )));
} else {
if ( mysqli_num_rows ( $result ) > 0 ) {
while ( $row = mysqli_fetch_assoc ( $result )) {
$data = $row ;
$procurement_id = $row [ 'procurement_id' ];
}
}
}
}
if ( ! empty ( $procurement_id )) {
$current_stock_level_procurement_items_query = " select item_id,qty,batch from procurement_items where procurement_id=' " . $procurement_id . " ' and ohc_type_id = ' " . $ohc_id . " ' " ;
$results_procuerment_items = mysqli_query ( $conn , $current_stock_level_procurement_items_query );
error_log ( " current store level for proc " . $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']);
$stock_qty = getTableFieldValue ( 'item_stock' , 'stock_qty' , 'item_id' , $rows_procurement_items [ 'item_id' ], 'item_batch_no' , " ' " . $rows_procurement_items [ 'batch' ] . " ' " );
$current_stock_level_items_qty = $stock_qty - $rows_procurement_items [ 'qty' ];
//echo current_stock_level_items_qty;
$current_stock_query = " update item_stock set stock_qty=' " . $current_stock_level_items_qty . " ' where item_id=' " . $rows_procurement_items [ 'item_id' ] . " ' and item_batch_no=' " . $rows_procurement_items [ 'batch' ] . " ' and ohc_type_id = ' " . $ohc_id . " ' " ;
//$current_stock_query="update tbl_items set current_stock_level='".$current_stock_level_items_qty."' where item_id='".$rows_procurement_items['item_id']."' ";
error_log ( " current stock update query in edit " . $current_stock_query );
if ( !@ mysqli_query ( $conn , $current_stock_query )) {
rollback ();
header ( 'HTTP/1.1 500 Internal Server Error' );
echo json_encode ( die ( 'failed!' . mysqli_error ( $conn )));
}
}
//echo $stock_qty;
/* if ( $stock_qty != null && $stock_qty != " " ){
$stock_qty = $stock_qty - $ { " item_qty $i " };
$current_stock_query = " update item_stock set stock_qty=' " . $stock_qty . " ' where item_id=' ${ "item_id$i" } ' and item_batch_no=' ${ "batch$i" } ' " ;
}
mysqli_query ( $conn , $current_stock_query ); */
}
//clear existing entries into the child table
$query_del = " delete from procurement_items where procurement_id = ' " . $procurement_id . " ' and ohc_type_id = ' " . $ohc_id . " ' " ;
error_log ( " delete query for pro: " . $query_del );
$result_del = @ mysqli_query ( $conn , $query_del );
for ( $i = 0 ; $i < $noOfRows ; $i ++ ) {
//echo $i;
if ( isset ( $ { " item_id $i " }) && $ { " item_id $i " } != 0 ){
if ( isset ( $ { " item_qty $i " }) && $ { " item_qty $i " } != null && $ { " item_qty $i " } != '' && $ { " item_qty $i " } > 0 ) {
/* $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 ); */
$stock_qty = getTableFieldValue ( 'item_stock' , 'stock_qty' , 'item_id' , $ { " item_id $i " }, 'item_batch_no' , " ' " . $ { " batch $i " } . " ' " );
//echo $stock_qty;
if ( $stock_qty != null && $stock_qty != " " ) {
$stock_qty = $stock_qty + $ { " item_qty $i " };
error_log ( " to update stock that is present in stock " . $stock_qty );
$current_stock_query = " update item_stock set stock_qty=' " . $stock_qty . " ' where item_id=' ${ "item_id$i" } ' and item_batch_no=' ${ "batch$i" } ' and ohc_type_id = ' " . $ohc_id . " ' " ;
error_log ( " to update stock query " . $current_stock_query );
} else {
$stock_qty = $stock_qty + $ { " item_qty $i " };
error_log ( " to insert first time in stock " . $stock_qty );
$current_stock_query = $current_stock_query = " insert into item_stock set stock_qty=' " . $stock_qty . " ' , item_id=' ${ "item_id$i" } ' , item_batch_no=' ${ "batch$i"}',mrp='${"mrp$i"}',discount='${"discount$i"}',net_value='${"net_value$i" } ',expiry_date=' " . $ { " expiry_date $i " } . " ', ohc_type_id = ' " . $ohc_id . " ' " ;
error_log ( " to insert stock query " . $current_stock_query );
}
//echo $current_stock_level;
//echo $current_stock_query;
if ( !@ mysqli_query ( $conn , $current_stock_query )) {
error_log ( " mysql error: " . mysqli_error ( $conn ));
error_log ( " mysqli error des: " . mysqli_error ( $conn ));
rollback ();
header ( 'HTTP/1.1 500 Internal Server Error' );
echo json_encode ( die ( 'failed!' . mysqli_error ( $conn )));
}
$query1 = " insert into procurement_items set procurement_id=' $procurement_id ', item_id =' " . $ { " item_id $i " } . " ',qty = ' " . $ { " item_qty $i " } . " ',batch =' " . $ { " batch $i " } . " ',per_unit_rate=' ${ "per_unit_rate$i"}',tax='${"tax$i"}',net_value='${"net_value$i" } ',expiry=' " . $ { " expiry_date $i " } . " ',remarks=' " . $ { " remarks $i " } . " ' ,modified_by = ' " . $_SESSION [ 'user_id' ] . " ', ohc_type_id = ' " . $ohc_id . " ' " ;
if ( ! $result1 = @ mysqli_query ( $conn , $query1 )) {
error_log ( " item insert query in pro items " . $query1 );
error_log ( " mysql error insert pro: " . mysqli_errno ( $conn ));
error_log ( " mysqli error des insert pro: " . mysqli_error ( $conn ));
rollback ();
header ( 'HTTP/1.1 500 Internal Server Error' );
echo json_encode ( die ( 'failed!' . mysqli_error ( $conn )));
}
if ( ! empty ( $_POST [ 'ind_id' ])) {
$change_indent_status = " update indent_items set status='COMPLETED' where indent_id=' " . $_POST [ 'ind_id' ] . " ' and item_grn_no=' " . $_POST [ 'ind_item_grn_no' ] . " ' and item_id=' " . $ { " item_id $i " } . " ' and ohc_type_id=' " . $ohc_id . " ' " ;
error_log ( " change_indent_status " . $change_indent_status );
if ( ! $result = @ mysqli_query ( $conn , $change_indent_status )) {
rollback ();
header ( 'HTTP/1.1 500 Internal Server Error' );
echo json_encode ( die ( 'failed!' . mysqli_error ( $conn )));
}
$change_grn_status = " update grn_items set status='COMPLETED' where indent_id=' " . $_POST [ 'ind_id' ] . " ' and item_grn_no=' " . $_POST [ 'ind_item_grn_no' ] . " ' and item_id=' " . $ { " item_id $i " } . " ' " ;
error_log ( " change_grn_item_status " . $change_grn_status );
if ( ! $result = @ mysqli_query ( $conn , $change_grn_status )) {
rollback ();
header ( 'HTTP/1.1 500 Internal Server Error' );
echo json_encode ( die ( 'failed!' . mysqli_error ( $conn )));
}
//$item_stock_query="select current_stock_level from tbl_items where item_id='".${"item_id$i"}."'";
$approved = 0 ;
$sql_approved = " select count(*) as items from indent_items where indent_id=' " . $_POST [ 'ind_id' ] . " ' and status != 'COMPLETED' and ohc_type_id = ' " . $ohc_id . " ' " ;
error_log ( 'approved' . $sql_approved );
if ( ! $result_approved = @ mysqli_query ( $conn , $sql_approved )) {
2024-11-02 18:03:13 +05:30
die ( mysqli_error ( $conn ));
2024-10-16 19:18:52 +05:30
}
$row_approved = mysqli_fetch_array ( $result_approved );
$unapproved = $row_approved [ 'items' ];
if ( $unapproved == 0 ) {
$sql = " update indent_master set status='COMPLETED' where indent_id=' " . $_POST [ 'ind_id' ] . " ' and ohc_type_id = ' " . $ohc_id . " ' " ;
error_log ( " sql " . $sql );
if ( ! $result = @ mysqli_query ( $conn , $sql )) {
2024-11-02 18:03:13 +05:30
die ( mysqli_error ( $conn ));
2024-10-16 19:18:52 +05:30
} else {
$data = " success " ;
}
}
}
}
}
////grn master status update
// $approved_grn = 0;
// $sql_approved_grn = "select count(*) as items from grn_items where indent_id='" . $_POST['ind_id'] . "' and status != 'COMPLETED' and item_grn_no='" . $_POST['ind_item_grn_no'] . "' ";
// error_log('approved' . $sql_approved_grn);
// if (!$result_approved_grn = @mysqli_query($conn, $sql_approved_grn)) {
2024-11-02 18:03:13 +05:30
// die(mysqli_error($conn));
2024-10-16 19:18:52 +05:30
// }
// $row_approved_grn = mysqli_fetch_array($result_approved_grn);
// $unapproved_grn = $row_approved_grn['items'];
// if ($unapproved_grn == 0) {
// $sql_grn = "update grn_master set status='COMPLETED' where indent_id='" . $_POST['ind_id'] . "' and item_grn_no='" . $_POST['ind_item_grn_no'] . "'";
// error_log("sql " . $sql_grn);
// if (!$result_grn = @mysqli_query($conn, $sql_grn)) {
2024-11-02 18:03:13 +05:30
// die(mysqli_error($conn));
2024-10-16 19:18:52 +05:30
// } else {
// $data = "success";
// }
// }
}
}
commit ();
//echo json_encode($data);