db_inventory = $this->load->database("inventory", true); $this->db_inventory_log = $this->load->database('inventory_log', true); $this->db_onex = 'one_aditya'; } function get_terms(){ try{ if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $prm = $this->sys_input; $id = 0; if(isset($prm['id']) && intval($prm) > 0){ $id = $prm['id']; $sql = "SELECT SupplierPaymentTermsID as id, SupplierPaymentTermsCode as code, SupplierPaymentTermsName as name, SupplierPaymentTermsDescription as description, DATE_FORMAT(SupplierPaymentTermsStartDate,'%d-%m-%Y') as start_date, DATE_FORMAT(SupplierPaymentTermsEndDate,'%d-%m-%Y') as end_date FROM supplierpaymentterms WHERE SupplierPaymentTermsSupplierID = ? AND SupplierPaymentTermsIsActive = 'Y'"; $query = $this->db_inventory->query($sql,$id); if ($query) { $rows = $query->result_array(); $result = array("records" => $rows); $this->sys_ok($result); } else { $this->sys_error_db("supplierpaymentterms rows",$this->db_inventory); exit; } } else{ $this->sys_error("Invalid Param ID"); exit; } } catch (Exception $exc) { $message = $exc->getMessage(); $this->sys_error($message); } } function get_stock(){ try{ if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $prm = $this->sys_input; $sql = "SELECT StockID as idx, ItemID as item_id, ItemName as item_name, ItemUnitID as unit_id, ItemUnitName as unit_name, WarehouseName as warehouse_name, SUM(StockQty) as qty FROM stock JOIN mutasirequestreceive ON MutasiRequestReceiveItemID = StockItemID AND MutasiRequestReceiveStatus NOT IN('N','D','C') AND MutasiRequestReceiveIsActive = 'Y' JOIN item ON MutasiRequestReceiveItemID = ItemID AND StockItemID = ItemID JOIN itemunit ON StockItemUnitID = ItemUnitID JOIN warehouse ON StockWarehouseID = WarehouseID AND WarehouseIsOffice = 'Y' GROUP BY StockWarehouseID, StockItemID, StockItemUnitID "; $query = $this->db_inventory->query($sql); if ($query) { $rows = $query->result_array(); $result = array("records" => $rows); $this->sys_ok($result); } else { $this->sys_error_db("stock rows",$this->db_inventory); exit; } } catch (Exception $exc) { $message = $exc->getMessage(); $this->sys_error($message); } } function get_stock_branch(){ try{ if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $prm = $this->sys_input; $sql = "SELECT StockItemID as item_id, StockItemUnitID as unit_id FROM stock JOIN mutasirequestreceive ON MutasiRequestReceiveItemID = StockItemID AND MutasiRequestReceiveStatus NOT IN('N','D','C') AND MutasiRequestReceiveIsActive = 'Y' JOIN item ON MutasiRequestReceiveItemID = ItemID AND StockItemID = ItemID JOIN itemunit ON StockItemUnitID = ItemUnitID JOIN warehouse ON StockWarehouseID = WarehouseID AND WarehouseIsOffice = 'Y' GROUP BY StockWarehouseID, StockItemID "; $query = $this->db_inventory->query($sql); if ($query) { $rows = $query->result_array(); $items = []; $units = []; foreach ($rows as $key => $value) { array_push($items,$value['item_id']); array_push($units,$value['unit_id']); } $string_items = join(",",array_unique($items)); $string_units = join(",",array_unique($units)); $config['hostname'] = $prm['branch_ip']; $config['username'] = 'root'; $config['password'] = 'sasone102938'; $config['database'] = 'one_inventory'; $config['dbdriver'] = 'mysqli'; $config['autoinit'] = FALSE; $config['dbprefix'] = ''; $config['pconnect'] = FALSE; $config['db_debug'] = TRUE; $config['cache_on'] = FALSE; $config['cachedir'] = ''; $config['char_set'] = 'utf8'; $config['dbcollat'] = 'utf8_general_ci'; $db_to = $this->load->database($config,TRUE); //if(!$db_to) //echo "error connection ".$v['branch_ip']; $connected = $db_to->initialize(); if (!$connected) { $db_to = $this->load->database($config,TRUE); } //print_r($db_to); $sql = "SELECT StockID as idx,ItemID as item_id, ItemName as item_name, ItemUnitID as unit_id, ItemUnitName as unit_name, WarehouseName as warehouse_name, SUM(StockQty) as qty FROM stock JOIN item ON StockItemID = ItemID AND ItemID IN ({$string_items}) JOIN itemunit ON StockItemUnitID = ItemUnitID AND ItemUnitID IN ({$string_units}) JOIN warehouse ON StockWarehouseID = WarehouseID AND WarehouseIsOffice = 'Y' WHERE StockQty > 0 GROUP BY StockWarehouseID, StockItemID, StockItemUnitID "; //echo $sql; $query = $db_to->query($sql); if ($query) { $rows = $query->result_array(); $result = array("records" => $rows); $this->sys_ok($result); } else { $this->sys_error_db("stock rows", $db_to->last_query()); exit; } } else { $this->sys_error_db("stock rows",$this->db_inventory); exit; } } catch (Exception $exc) { $message = $exc->getMessage(); $this->sys_error($message); } } function get_term_detail(){ try{ if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $prm = $this->sys_input; $id = 0; if(isset($prm['id']) && intval($prm) > 0){ $id = $prm['id']; $sql = "SELECT SupplierPaymentTermsDetailID as id, SupplierPaymentTermsDetailItemID as item_id, ItemName as item_name, CONCAT(ItemName,' : ',ItemUnitName) as itemunit_name, SupplierPaymentTermsDetailItemUnitID as unit_id, ItemUnitName as unit_name, 0 as qty, 'N' as is_exist, SupplierPaymentTermsDetailPrice as price, SupplierPaymentTermsDetailDiscount as discount_percent, SupplierPaymentTermsDetailDiscountRp as discount_rp, SupplierPaymentTermsDetailTotal as total, 'N' as selected FROM supplierpaymenttermsdetail JOIN item ON SupplierPaymentTermsDetailItemID = ItemID AND ItemIsActive = 'Y' JOIN itemunit ON SupplierPaymentTermsDetailItemUnitID = ItemUnitID AND ItemUnitIsActive = 'Y' WHERE SupplierPaymentTermsSupplierPaymentTermsID = ? AND SupplierPaymentTermsDetailIsActive = 'Y'"; $query = $this->db_inventory->query($sql,$id); if ($query) { $rows = $query->result_array(); if($rows && count($rows) > 0){ foreach ($rows as $key => $value) { $rows[$key]['selected'] = false; } } $result = array("records" => $rows); $this->sys_ok($result); } else { $this->sys_error_db("supplierpaymenttermsdetail rows",$this->db_inventory); exit; } } else{ $this->sys_error("Invalid Param ID"); exit; } } catch (Exception $exc) { $message = $exc->getMessage(); $this->sys_error($message); } } function get_branches(){ try{ if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $sql = "SELECT CompanyID as id, CompanyName as name, M_BranchID as branch_id, M_BranchName as branch_name, M_BranchIPAddress as branch_ip FROM company JOIN $this->db_onex.m_branch ON CompanyM_BranchID = M_BranchID WHERE CompanyIsActive = 'Y' AND CompanyIsCenter = 'N'"; $query = $this->db_inventory->query($sql); if ($query) { $rows = $query->result_array(); $result = array("records" => $rows); $this->sys_ok($result); } else { $this->sys_error_db("expedition rows",$this->db_inventory); exit; } } catch (Exception $exc) { $message = $exc->getMessage(); $this->sys_error($message); } } }