148 lines
6.6 KiB
PHP
148 lines
6.6 KiB
PHP
<?php
|
|
class Downloadfrombranch extends MY_Controller
|
|
{
|
|
var $db;
|
|
function __construct()
|
|
{
|
|
parent::__construct();
|
|
$this->db_inventory = $this->load->database("inventory", true);
|
|
$this->db_inventory_log = $this->load->database('inventory_log', true);
|
|
|
|
}
|
|
|
|
function download_data()
|
|
{
|
|
try {
|
|
header("Content-Type:application/json");
|
|
$datas = json_decode(file_get_contents('php://input'), true);
|
|
//echo json_encode($datas);
|
|
if($datas){
|
|
|
|
$arr_inserted = array();
|
|
foreach ($datas as $k => $v) {
|
|
$sql ="SELECT * FROM mutasirequestrespon WHERE MutasiRequestResponOldID = ? LIMIT 1";
|
|
$qry = $this->db_inventory->query([$v['MutasiRequestResponID']]);
|
|
//echo $this->db_inventory->last_query();
|
|
if(!$qry){
|
|
//echo $this->db_inventory->last_query();
|
|
exit;
|
|
}
|
|
|
|
if(!$qry->row_array()){
|
|
$this->db_inventory->trans_start();
|
|
$this->db_inventory->trans_strict(FALSE);
|
|
|
|
$id = $v['MutasiRequestResponID'];
|
|
unset($v['branch_ip']);
|
|
unset($v['MutasiRequestResponID']);
|
|
$v['MutasiRequestResponIsUploaded'] = 'Y';
|
|
$v['MutasiRequestResponOldID'] = $id;
|
|
$v['MutasiRequestResponCreated'] = date("Y-m-d H:i:s");
|
|
$v['MutasiRequestResponLastUpdated'] = date("Y-m-d H:i:s");
|
|
|
|
$qry = $this->db_inventory->insert('mutasirequestrespon', $v);
|
|
if(!$qry){
|
|
$this->sys_error_db("insert mutasirequestrespon error", $this->db_inventory->last_query());
|
|
exit;
|
|
}
|
|
|
|
$sql = "UPDATE mutasirequestreceive SET
|
|
MutasiRequestReceiveReceiveQty = ?,
|
|
MutasiRequestReceiveStatus = ?
|
|
WHERE
|
|
MutasiRequestReceiveID = ?";
|
|
$qry = $this->db_inventory->query($sql,
|
|
array(
|
|
$v['MutasiRequestResponReceive'],
|
|
$v['MutasiRequestResponStatus'],
|
|
$v['MutasiRequestResponMutasiRequestReceiveID']
|
|
)
|
|
);
|
|
|
|
if(!$qry){
|
|
$this->sys_error_db("update mutasirequestreceive error", $this->db_inventory->last_query());
|
|
exit;
|
|
}
|
|
|
|
$arr_request_status = array(
|
|
'MutasiRequestReceiveStatusMutasiRequestReceiveID' => $v['MutasiRequestResponMutasiRequestReceiveID'],
|
|
'MutasiRequestReceiveStatusStatus' => $v['MutasiRequestResponStatus'],
|
|
'MutasiRequestReceiveStatusJSON' => json_encode($v),
|
|
'MutasiRequestReceiveStatusCreated' => date("Y-m-d H:i:s"),
|
|
'MutasiRequestReceiveStatusUserID' => 10000
|
|
);
|
|
|
|
$qry = $this->db_inventory->insert('mutasirequestreceive_status', $arr_request_status);
|
|
if(!$qry){
|
|
$this->sys_error_db("insert mutasirequestreceive_status error", $this->db_inventory->last_query());
|
|
exit;
|
|
}
|
|
|
|
$data_update_mutasidetailstock = array('MutasiDetailStockReceiveQty' => $v['MutasiRequestResponReceive']);
|
|
$this->db_inventory->where('MutasiDetailStockID', $v['MutasiRequestResponMutasiDetailStockID']);
|
|
$this->db_inventory->update('mutasidetailstock', $data_update_mutasidetailstock);
|
|
|
|
$sql = "UPDATE mutasidetail
|
|
SET MutasiDetailReceiveQty = MutasiDetailReceiveQty + {$v['MutasiRequestResponReceive']}
|
|
WHERE
|
|
MutasiDetailID = ?";
|
|
$qry = $this->db_inventory->query($sql,
|
|
array(
|
|
$v['MutasiRequestResponMutasiDetailID']
|
|
)
|
|
);
|
|
|
|
if(!$qry){
|
|
$this->sys_error_db("update mutasidetail error", $this->db_inventory->last_query());
|
|
exit;
|
|
}
|
|
|
|
$sql = "SELECT COUNT(*) as x_count
|
|
FROM mutasidetail
|
|
WHERE
|
|
( MutasiDetailQty = 0 OR MutasiDetailQty <> MutasiDetailReceiveQty ) AND
|
|
MutasiDetailIsActive = 'Y' AND MutasiDetailMutasiID = ? ";
|
|
$qry = $this->db_inventory->query($sql,
|
|
array(
|
|
$v['MutasiRequestResponMutasiID']
|
|
)
|
|
);
|
|
|
|
if(!$qry){
|
|
$this->sys_error_db("update mutasidetail error", $this->db_inventory->last_query());
|
|
exit;
|
|
}
|
|
|
|
$status_mutasi = 'P';
|
|
$not_done = $qry->row()->x_count;
|
|
if($not_done == 0)
|
|
$status_mutasi = 'D';
|
|
|
|
$data_update_mutasi = array('MutasiStatus' => $status_mutasi);
|
|
$this->db_inventory->where('MutasiID', $v['MutasiRequestResponMutasiID']);
|
|
$this->db_inventory->update('mutasi', $data_update_mutasi);
|
|
|
|
|
|
$this->db_inventory->trans_complete();
|
|
|
|
array_push($arr_inserted,$id);
|
|
|
|
}
|
|
|
|
|
|
}
|
|
//print_r($arr_inserted);
|
|
$result = array( "records" => $arr_inserted);
|
|
$this->sys_ok($result);
|
|
}
|
|
|
|
|
|
|
|
} catch (Exception $exc) {
|
|
$message = $exc->getMessage();
|
|
$this->sys_error($message);
|
|
}
|
|
}
|
|
|
|
}
|