You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

67 lines
2.0 KiB
PHP

<?php
session_start();
if($_SESSION['validUser'] !== TRUE)
{
header("location: ./index.php");
exit();
}
if(isset($_POST['nonota']) && isset($_POST['tglretur']) && isset($_POST['nik']) && isset($_POST['idretur']))
{
$harray = array();
require_once("../db_login.inc.php");
$tgl_retur = substr($_POST['tglretur'],6,4)."-".substr($_POST['tglretur'],3,2)."-".substr($_POST['tglretur'],0,2);
$id_retur = $_POST['idretur'];
$hasil = 0;
$mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE);
if(!mysqli_connect_errno())
{
// isi table transfer
$stmt = $mysqli->prepare("UPDATE m_retur_beli SET tgl_retur = ?, validasi = '1' WHERE id_retur = ?");
$stmt->bind_param("si",$tgl_retur, $id_retur);
$stmt->execute();
if($stmt->affected_rows > 0)
$hasil = 1;
else $hasil = 0;
$stmt->close();
// ambil barang yang akan diupdate stok nya.
$barang = array();
$dataBarang = $mysqli->query("SELECT dr.jumlah, dr.nomor_barang, br.id_gabungan
FROM d_retur_beli dr, m_retur_beli mr, barang br
WHERE dr.id_retur = mr.id_retur
AND mr.id_retur = $id_retur
AND mr.validasi = '1'
AND dr.kd_barang = br.kode_barang");
$jumBarang = $dataBarang->num_rows;
if($jumBarang > 0)
{
$idx = 0;
while($db = $dataBarang->fetch_array(MYSQLI_ASSOC))
{
$barang[$idx] = array('id_gabungan' => $db['id_gabungan'], 'jumlah' => $db['jumlah'], 'nomor' => $db['nomor_barang']);
$idx++;
}
/* tutup hasil query */
$dataBarang->close();
}
// update stok
for($i=0; $i<$jumBarang; $i++)
{
// update stok barang
$stmt = $mysqli->prepare("UPDATE no_barang SET stok = stok-? WHERE id_gabungan = ? AND nomor = ?");
$stmt->bind_param("iss",$barang[$i]['jumlah'], $barang[$i]['id_gabungan'], $barang[$i]['nomor']);
$stmt->execute();
if($stmt->affected_rows > 0)
$hasil = 1;
else
$hasil = 0;
$stmt->close();
}
}
$harray = array('hasil' => $hasil);
echo json_encode($harray);
}