Files
2026-04-15 15:23:57 +07:00

170 lines
8.6 KiB
PHP

<?php
class Downloadfrombranch1 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 get_param_z()
{
$body_z = file_get_contents("php://input");
$body = gzuncompress($body_z);
return json_decode($body, true);
}
function reply($resp)
{
echo json_encode($resp);
}
function reply_gz($resp)
{
//echo json_encode($resp);
echo gzcompress(json_encode($resp));
}
function download_data()
{
try {
header("Content-Type:application/json");
// $datas = json_decode(file_get_contents('php://input'), true);
$datas = $this->get_param_z();
//print_r($datas);
if ($datas) {
$arr_inserted = array();
foreach ($datas as $k => $v) {
//print_r($v);
$sql = "SELECT * FROM mutasirequest_upload WHERE MutasiRequestUploadOldID = ? LIMIT 1";
$qry = $this->db_inventory->query([$v['MutasiRequestUploadID']]);
//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['MutasiRequestUploadID'];
unset($v['branch_ip']);
unset($v['MutasiRequestUploadID']);
$v['MutasiRequestUploadIsSent'] = 'Y';
$v['MutasiRequestUploadOldID'] = $id;
$v['MutasiRequestUploadCreated'] = date("Y-m-d H:i:s");
// $qry = $this->db_inventory->insert('mutasirequest_upload', $v);
//echo $this->db_inventory->last_query();
$sql = $this->db_inventory->insert_string('mutasirequest_upload', $v) . ' ON DUPLICATE KEY UPDATE MutasiRequestUploadOldID = MutasiRequestUploadOldID';
$qry = $this->db_inventory->query($sql);
if (!$qry) {
$this->sys_error_db("insert mutasirequest_upload error", $this->db_inventory->last_query());
exit;
}
$data_upload = $this->objToArray(json_decode($v['MutasiRequestUploadJSON']));
// print_r("last insert id");
// print_r($this->db_inventory->insert_id());
//print_r($data_upload['details']);
// if ($data_upload) {
if($data_upload && intval($this->db_inventory->insert_id()) != 0) {
if (count($data_upload['details']) > 0) {
foreach ($data_upload['details'] as $key => $value) {
$numbering = '';
$sql = "SELECT `fn_numbering`('R') as numbering";
$qry = $this->db_inventory->query($sql);
if ($qry) {
$numbering = $qry->row()->numbering;
} else {
$this->sys_error_db("get numbering error", $this->db_inventory->last_query());
exit;
}
$array_request_detail = array();
$array_request_detail['MutasiRequestReceiveNumber'] = $numbering;
$array_request_detail['MutasiRequestReceiveCompanyAddressID'] = $v['MutasiRequestUploadFromCompanyAddressID'];
$array_request_detail['MutasiRequestReceiveMutasiRequestNumber'] = $data_upload['MutasiRequestNumber'];
$array_request_detail['MutasiRequestReceiveEstimatedDelivery'] = $data_upload['MutasiRequestEstimatedDelivery'];
$array_request_detail['MutasiRequestReceiveMutasiRequestDetailID'] = $value['MutasiRequestDetailID'];
$array_request_detail['MutasiRequestReceiveDate'] = date("Y-m-d");
$array_request_detail['MutasiRequestReceiveNote'] = $data_upload['MutasiRequestNote'];
$array_request_detail['MutasiRequestReceiveSentAt'] = date("Y-m-d H:i:s");
$array_request_detail['MutasiRequestReceiveSenderUsername'] = $v['MutasiRequestUploadUsername'];
$array_request_detail['MutasiRequestReceiveRequestQty'] = $value['MutasiRequestDetailQty'];
$array_request_detail['MutasiRequestReceiveItemID'] = $value['MutasiRequestDetailItemID'];
$array_request_detail['MutasiRequestReceiveItemUnitID'] = $value['MutasiRequestDetailItemUnitID'];
$array_request_detail['MutasiRequestReceiveCreated'] = date("Y-m-d H:i:s");
$array_request_detail['MutasiRequestReceiveLastUpdated'] = date("Y-m-d H:i:s");
$array_request_detail['MutasiRequestReceiveUserID'] = 220688;
// $qry = $this->db_inventory->insert_string('mutasirequestreceive', $array_request_detail) . ' ON DUPLICATE KEY UPDATE MutasiRequestReceiveMutasiRequestDetailID = MutasiRequestReceiveMutasiRequestDetailID';
$qry = $this->db_inventory->insert('mutasirequestreceive', $array_request_detail);
if (!$qry) {
$this->sys_error_db("insert mutasirequestreceive error", $this->db_inventory->last_query());
// print_r($this->db_inventory->last_query());
// $this->sys_error_db("insert mutasirequestreceive error", $this->db_inventory->error()['message']);
exit;
}
// if (intval($this->db_inventory->insert_id()) == 0) {
// continue;
// }
$array_request_status = array();
$array_request_status['MutasiRequestReceiveStatusMutasiRequestReceiveID'] = $this->db_inventory->insert_id();
$array_request_status['MutasiRequestReceiveStatusStatus'] = 'N';
$array_request_status['MutasiRequestReceiveStatusCreated'] = date("Y-m-d");
$array_request_status['MutasiRequestReceiveStatusUserID'] = 220688;
$qry = $this->db_inventory->insert('mutasirequestreceive_status', $array_request_status);
//echo $this->db_inventory->last_query();
if (!$qry) {
$this->sys_error_db("insert mutasirequestreceive_status error", $this->db_inventory->last_query());
exit;
}
}
}
}
$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);
}
}
protected function objToArray($obj)
{
// Not an object or array
if (!is_object($obj) && !is_array($obj)) {
return $obj;
}
// Parse array
foreach ($obj as $key => $value) {
$arr[$key] = $this->objToArray($value);
}
// Return parsed array
return $arr;
}
}