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){ $this->db_inventory->trans_start(); $this->db_inventory->trans_strict(FALSE); $arr_inserted = array(); foreach ($datas as $k => $v) { $sql ="SELECT * FROM mutasibranchtobranch WHERE MutasiBranchToBranchBranchOldID = ? LIMIT 1"; $qry = $this->db_inventory->query([$v['MutasiBranchToBranchBranchID']]); //echo $this->db_inventory->last_query(); if(!$qry){ echo $this->db_inventory->last_query(); exit; } //print_r($qry->row_array()); if(!$qry->row_array()){ $arr_insert_mutation = $v; unset($arr_insert_mutation['branch_ip']); unset($arr_insert_mutation['MutasiBranchToBranchBranchID']); $arr_insert_mutation['MutasiBranchToBranchBranchIsSend'] = 'Y'; $arr_insert_mutation['MutasiBranchToBranchBranchOldID'] = $v['MutasiBranchToBranchBranchID']; $arr_insert_mutation['MutasiBranchToBranchBranchLastUpdated'] = date("Y-m-d H:i:s"); // $qry = $this->db_inventory->insert('mutasibranchtobranch', $arr_insert_mutation); $sql = $this->db_inventory->insert_string('mutasibranchtobranch', $arr_insert_mutation) . ' ON DUPLICATE KEY UPDATE MutasiBranchToBranchBranchOldID = MutasiBranchToBranchBranchOldID'; $qry = $this->db_inventory->query($sql); if(!$qry){ echo $this->db_inventory->last_query(); exit; } $this->mutasi_transit($v); } array_push($arr_inserted,$v['MutasiBranchToBranchBranchID']); } $this->db_inventory->trans_complete(); $result = array( "records" => $arr_inserted); $this->sys_ok($result); } } catch (Exception $exc) { $message = $exc->getMessage(); $this->sys_error($message); } } function mutasi_transit($data){ //print_r($mutasi); $mutasi = $this->objToArray(json_decode($data['MutasiBranchToBranchBranchJSON'])); //print_r($arr_insert_mutasi); $details = $mutasi['details']; foreach($details as $key => $value){ $stock_details = $value['details']; foreach ($stock_details as $k => $v) { $arr_transit_detail = array(); $arr_transit_detail['MutasiTransitDetailMutasiBranchToBranchBranchID'] = $data['MutasiBranchToBranchBranchID']; $arr_transit_detail['MutasiTransitDetailMutasiID'] = $mutasi['MutasiID']; $arr_transit_detail['MutasiTransitDetailMutasiNumber'] = $mutasi['MutasiNumber']; $arr_transit_detail['MutasiTransitDetailFromCompanyAddressID'] = $mutasi['MutasiFromCompanyAddressID']; $arr_transit_detail['MutasiTransitDetailToCompanyAddressID'] = $mutasi['MutasiToCompanyAddressID']; $arr_transit_detail['MutasiTransitDetailExpeditionName'] = $mutasi['expedition_name']; $arr_transit_detail['MutasiTransitDetailExpeditionStaff'] = $mutasi['expedition_staff']; $arr_transit_detail['MutasiTransitDetailIsSend'] = 'Y'; $arr_transit_detail['MutasiTransitDetailMutasiDetailStockID'] = $v['MutasiDetailStockID']; $arr_transit_detail['MutasiTransitDetailMutasiDetailID'] = $v['MutasiDetailStockID']; $arr_transit_detail['MutasiTransitDetailMutasiRequestReceiveID'] = $value['MutasiDetailAddtionalMutasiRequestReceiveID']; $arr_transit_detail['MutasiTransitDetailMutasiRequestDetailID'] = $value['MutasiDetailAddtionalRequestDetailID']; $arr_transit_detail['MutasiTransitDetailMutasiTransitID'] = $value['MutasiDetailAddtionalRequestDetailID']; $arr_transit_detail['MutasiTransitDetailItemID'] = $v['MutasiDetailStockItemID']; $arr_transit_detail['MutasiTransitDetailItemUnitID'] = $v['MutasiDetailStockItemUnitID']; $arr_transit_detail['MutasiTransitDetailQty'] = $v['MutasiDetailStockQty']; $arr_transit_detail['MutasiTransitDetailBatchNo'] = $v['MutasiDetailStockBatchNo']; $arr_transit_detail['MutasiTransitDetailStockNumber'] = $v['MutasiDetailStockStockNumber']; $arr_transit_detail['MutasiTransitDetailED'] = $v['MutasiDetailStockED']; $arr_transit_detail['MutasiTransitDetailUserID'] = 10000; $arr_transit_detail['MutasiTransitDetailCreated'] = date("Y-m-d H:i:s"); $arr_transit_detail['MutasiTransitDetailLastUpdated'] = date("Y-m-d H:i:s"); $qry = $this->db_inventory->insert('mutasitransitdetail', $arr_transit_detail); //echo $this->db_inventory->last_query(); if(!$qry){ echo $this->db_inventory->last_query(); exit; } } } $sql = "UPDATE mutasisetupbranch SET MutasiSetupBranchIsCreated = 'Y' WHERE MutasiSetupBranchID = ? "; $qry = $this->db_inventory->query($sql, array($id)); if(!$qry){ echo $this->db_inventory->last_query(); exit; } return true; } 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; } }