8 Commits

Author SHA1 Message Date
752c372c2f add: updateApprovalPO api in purchase order aset 2026-07-09 11:09:44 +07:00
7e88cf247b add: getDaftarAttachment api for purchase order asset 2026-07-09 10:34:26 +07:00
7af9fb2ca4 add: uploadAttachment api 2026-07-09 10:27:50 +07:00
77fc97e964 add: getDataKontrakPoAset api 2026-07-09 10:16:03 +07:00
834f23f26e add: getDaftarPoAset api 2026-07-09 10:11:28 +07:00
dc88589c78 add: deletePoAsset api 2026-07-09 10:04:43 +07:00
3871a680dd add: editPoAsset api 2026-07-09 09:54:26 +07:00
9c87e9ce25 add: createPoAsset api 2026-07-09 09:39:11 +07:00
4 changed files with 281 additions and 330 deletions

View File

@@ -236,6 +236,17 @@ Content-Type: application/json
"poID": 1 "poID": 1
} }
###
// update approval PO — verifikasi manager (level 1)
POST https://{{host}}/mockup/purchase/order/PurchaseOrderAset/updateApprovalPO/
Content-Type: application/json
{
"token": {{token}},
"poID": 1,
"approvelevel": "1"
}
### ###
// get data kontrak po asset // get data kontrak po asset
POST https://{{host}}/mockup/purchase/order/PurchaseOrderAset/getDataKontrakPoAset/ POST https://{{host}}/mockup/purchase/order/PurchaseOrderAset/getDataKontrakPoAset/

View File

@@ -1,10 +1,8 @@
<?php <?php
class PurchaseOrderAset extends MY_Controller class PurchaseOrderAset extends MY_Controller {
{
var $db; var $db;
public function index() public function index() {
{
echo "Purchase Order Aset API"; echo "Purchase Order Aset API";
} }
@@ -14,45 +12,40 @@ class PurchaseOrderAset extends MY_Controller
} }
## QUERY ## ## QUERY ##
public function getListSupplier() public function getListSupplier() {
{
try { try {
if (!$this->isLogin) { if (!$this->isLogin) {
throw new Exception('Invalid token'); $this->sys_error("invalid token");
exit;
} }
$sql = "SELECT $sql = "SELECT
SupplierID, SupplierID,
SupplierName SupplierName
FROM supplier FROM supplier
WHERE SupplierIsActive = 'Y'"; WHERE SupplierIsActive = 'Y'";
$que = $this->db->query($sql, []); $que = $this->db->query($sql, []);
if (!$que) { if (!$que) {
throw new Exception('failed to query list supplier', 1); $this->sys_error_db("[Error] get data supplier");
exit;
} }
$data = $que->result_array(); $data = $que->result_array();
$this->sys_ok($data); $this->sys_ok($data);
} catch (Exception $exc) { } catch (Exception $exc) {
$msg = '[Error] ' . $exc->getMessage(); $this->sys_error($exc->getMessage());
$code = $exc->getCode();
if ($code == 0) {
$this->sys_error($msg);
} else {
$this->sys_error_db($msg);
}
exit;
} }
} }
public function getListCabang() public function getListCabang() {
{
try { try {
if (!$this->isLogin) { if (!$this->isLogin) {
throw new Exception('Invalid token'); $this->sys_error("invalid token");
exit;
} }
$user = $this->sys_user; $user = $this->sys_user;
$sql = "SELECT $sql = "SELECT
M_BranchID, M_BranchID,
M_BranchCode, M_BranchCode,
@@ -62,28 +55,22 @@ class PurchaseOrderAset extends MY_Controller
AND M_BranchS_RegionalID = ?"; AND M_BranchS_RegionalID = ?";
$que = $this->db->query($sql, [$user['S_RegionalID']]); $que = $this->db->query($sql, [$user['S_RegionalID']]);
if (!$que) { if (!$que) {
throw new Exception('failed to query list cabang', 1); $this->sys_error_db("[Error] failed get list cabang");
exit;
} }
$data = $que->result_array();
$data = $que->result_array();
$this->sys_ok($data); $this->sys_ok($data);
} catch (Exception $exc) { } catch (Exception $exc) {
$msg = '[Error] ' . $exc->getMessage(); $this->sys_error($exc->getMessage());
$code = $exc->getCode();
if ($code == 0) {
$this->sys_error($msg);
} else {
$this->sys_error_db($msg);
}
exit;
} }
} }
public function searchRequestAset() public function searchRequestAset() {
{
try { try {
if (!$this->isLogin) { if (!$this->isLogin) {
throw new Exception('Invalid token'); $this->sys_error("invalid token");
exit;
} }
$para = $this->sys_input; $para = $this->sys_input;
@@ -100,70 +87,67 @@ class PurchaseOrderAset extends MY_Controller
} }
$sql = "SELECT $sql = "SELECT
PurchaseRequestID, PurchaseRequestID,
PurchaseRequestNumber, PurchaseRequestNumber,
PurchaseRequestDetailID, PurchaseRequestDetailID,
PurchaseRequestFlagID, PurchaseRequestFlagID,
PurchaseRequestFlagM_BranchCode AS BranchCode, PurchaseRequestFlagM_BranchCode AS BranchCode,
PurchaseRequestItemCategoryID AS ItemCategoryID, PurchaseRequestItemCategoryID AS ItemCategoryID,
PurchaseRequestFlagQtyRest - PurchaseRequestFlagQtyProses AS UnprocessFlagQty, PurchaseRequestFlagQtyRest - PurchaseRequestFlagQtyProses AS UnprocessFlagQty,
PurchaseRequestDetailQty AS RequestQty, PurchaseRequestDetailQty AS RequestQty,
PurchaseRequestDetailQty AS OriginalQty, PurchaseRequestDetailQty AS OriginalQty,
M_BranchName, M_BranchName,
M_ItemID, M_ItemID,
M_ItemCode, M_ItemCode,
M_ItemDesc, M_ItemDesc,
ItemUnitID, ItemUnitID,
ItemUnitName, ItemUnitName,
SupplierPricePrice as SupplierPrice SupplierPricePrice as SupplierPrice
FROM purchase_request FROM purchase_request
JOIN purchase_request_detail ON PurchaseRequestDetailPurchaseRequestID = PurchaseRequestID JOIN purchase_request_detail ON PurchaseRequestDetailPurchaseRequestID = PurchaseRequestID
AND PurchaseRequestDetailIsActive = 'Y' AND PurchaseRequestDetailIsActive = 'Y'
AND PurchaseRequestM_BranchCode = ? AND PurchaseRequestM_BranchCode = ?
AND PurchaseRequestItemCategoryID = '3' -- id category item asset AND PurchaseRequestItemCategoryID = '3' -- id category item asset
AND PurchaseRequestNumber LIKE ? AND PurchaseRequestNumber LIKE ?
JOIN purchase_request_flag ON PurchaseRequestFlagPurchaseRequestDetailID = PurchaseRequestDetailID JOIN purchase_request_flag ON PurchaseRequestFlagPurchaseRequestDetailID = PurchaseRequestDetailID
AND PurchaseRequestFlagStatus = 'PO' AND PurchaseRequestFlagStatus = 'PO'
AND PurchaseRequestFlagIsActive = 'Y' AND PurchaseRequestFlagIsActive = 'Y'
JOIN m_item ON M_ItemID = PurchaseRequestDetailM_ItemID JOIN m_item ON M_ItemID = PurchaseRequestDetailM_ItemID
JOIN itemunit ON ItemUnitID = PurchaseRequestDetailItemUnitID JOIN itemunit ON ItemUnitID = PurchaseRequestDetailItemUnitID
JOIN supplier_price ON SupplierPriceSupplierID = ? JOIN supplier_price ON SupplierPriceSupplierID = ?
AND SupplierPriceM_ItemID = M_ItemID AND SupplierPriceM_ItemID = M_ItemID
AND SupplierPriceItemUnitID = ItemUnitID AND SupplierPriceItemUnitID = ItemUnitID
AND SupplierPriceIsActive = 'Y' AND SupplierPriceIsActive = 'Y'
JOIN m_branch ON M_BranchCode = PurchaseRequestFlagM_BranchCode JOIN m_branch ON M_BranchCode = PurchaseRequestFlagM_BranchCode
AND M_BranchIsActive = 'Y' AND M_BranchIsActive = 'Y'
WHERE NOT EXISTS ( WHERE NOT EXISTS (
SELECT 1 SELECT 1
FROM purchase_order_detail FROM purchase_order_detail
JOIN purchase_order ON PurchaseOrderDetailPurchaseOrderID = PurchaseOrderID JOIN purchase_order ON PurchaseOrderDetailPurchaseOrderID = PurchaseOrderID
AND PurchaseOrderStatus = 'Approved' AND PurchaseOrderStatus = 'Approved'
AND PurchaseOrderIsActive = 'Y' AND PurchaseOrderIsActive = 'Y'
AND PurchaseOrderDetailIsActive = 'Y' AND PurchaseOrderDetailIsActive = 'Y'
WHERE PurchaseOrderDetailPurchaseRequestDetailID = PurchaseRequestDetailID WHERE PurchaseOrderDetailPurchaseRequestDetailID = PurchaseRequestDetailID
)"; )";
$sql_data = $sql . " LIMIT ? OFFSET ? "; $sql_data = $sql . " LIMIT ? OFFSET ? ";
$que_data = $this->db->query($sql_data, [ $que_data = $this->db->query($sql_data, [
$para['branchcode'], $para['branchcode'], $keyword, $para['supplierID'],
$keyword, $limit, $offset
$para['supplierID'],
$limit,
$offset
]); ]);
if (!$que_data) { if (!$que_data) {
throw new Exception('failed to query data request order aset', 1); $this->sys_error_db("[Error] get daftar request data");
exit;
} }
$data = $que_data->result_array(); $data = $que_data->result_array();
$sql_total = "SELECT COUNT(*) AS total FROM ($sql) AS x"; $sql_total = "SELECT COUNT(*) AS total FROM ($sql) AS x";
$que_total = $this->db->query($sql_total, [ $que_total = $this->db->query($sql_total, [
$para['branchcode'], $para['branchcode'], $keyword, $para['supplierID']
$keyword,
$para['supplierID']
]); ]);
if (!$que_total) { if (!$que_total) {
throw new Exception('failed to query total request order aset', 1); $this->sys_error_db("[Error] get total request aset");
exit;
} }
$total = $que_total->row_array()['total']; $total = $que_total->row_array()['total'];
@@ -174,14 +158,7 @@ class PurchaseOrderAset extends MY_Controller
$this->sys_ok($out); $this->sys_ok($out);
} catch (Exception $exc) { } catch (Exception $exc) {
$msg = '[Error] ' . $exc->getMessage(); $this->sys_error($exc->getMessage());
$code = $exc->getCode();
if ($code == 0) {
$this->sys_error($msg);
} else {
$this->sys_error_db($msg);
}
exit;
} }
} }
@@ -1125,33 +1102,91 @@ class PurchaseOrderAset extends MY_Controller
} }
} }
public function updateApprovalPO() {
try {
if (!$this->isLogin) {
$this->sys_error("invalid token");
exit;
}
$this->db->trans_begin();
$para = $this->sys_input;
$user = $this->sys_user;
$approvelevel = $para['approvelevel'];
/* request purchase order */
if ($approvelevel == '0') {
$sql = "UPDATE purchase_order SET
PurchaseOrderStatus = 'Pending',
PurchaseOrderLastUpdated = NOW()
WHERE PurchaseOrderID = ?
AND PurchaseOrderIsActive = 'Y'";
$que = $this->db->query($sql, [$para['poID']]);
if (!$que) {
$this->db->trans_rollback();
$this->sys_error_db("[Error] failed update table purchase order request");
exit;
}
}
/* verifikasi oleh manager */
if ($approvelevel == '1') {
$sql = "UPDATE purchase_order SET
PurchaseOrderApprovedManagerUserID = ?,
PurchaseOrderLastUpdated = NOW()
WHERE PurchaseOrderID = ?
AND PurchaseOrderIsActive = 'Y'";
$que = $this->db->query($sql, [$user['M_UserID'], $para['poID']]);
if (!$que) {
$this->db->trans_rollback();
$this->sys_error_db("[Error] failed update table purchase order verif");
exit;
}
}
/* approval oleh kepala regional */
if ($approvelevel == '2') {
$sql = "UPDATE purchase_order SET
PurchaseOrderStatus = 'Approved',
PurchaseOrderLastUpdated = NOW(),
PurchaseOrderApprovedUserID = ?
WHERE PurchaseOrderID = ?
AND PurchaseOrderIsActive = 'Y'";
$que = $this->db->query($sql, [$user['M_UserID'], $para['poID']]);
if (!$que) {
$this->db->trans_rollback();
$this->sys_error_db("[Error] failed update table purchase order approve");
exit;
}
}
$this->db->trans_commit();
$this->sys_ok("[Success] success update status PO Asset");
} catch (Exception $exc) {
$msg = $exc->getMessage();
$this->sys_error($msg);
}
}
public function getUserApproveLevel() { public function getUserApproveLevel() {
try { try {
if (!$this->isLogin) { if (!$this->isLogin) {
throw new Exception('Invalid token'); $this->sys_error("invalid token");
exit;
} }
$user = $this->sys_user; $user = $this->sys_user;
$sql = "SELECT M_UserM_ApproveLevelID $sql = "SELECT M_UserM_ApproveLevelID FROM m_user
FROM m_user WHERE M_UserIsActive = 'Y' AND M_UserID = ? ";
WHERE M_UserIsActive = 'Y'
AND M_UserID = ? ";
$que = $this->db->query($sql, [$user['M_UserID']]); $que = $this->db->query($sql, [$user['M_UserID']]);
if (!$que) { if (!$que) {
throw new Exception('failed to query approval level', 1); $this->sys_error_db("[Error] failed get approval level user");
exit;
} }
$data = $que->row_array(); $data = $que->row_array();
$this->sys_ok($data); $this->sys_ok($data);
} catch (Exception $exc) { } catch (Exception $exc) {
$msg = '[Error] ' . $exc->getMessage(); $this->sys_error($exc->getMessage());
$code = $exc->getCode();
if ($code == 0) {
$this->sys_error($msg);
} else {
$this->sys_error_db($msg);
}
exit;
} }
} }

View File

@@ -1514,23 +1514,23 @@ class ReceiveItemPoInventaris extends MY_Controller
# GET DATA RO # # GET DATA RO #
$json_ro_before = $this->getDataROPO($ROID); $json_ro_before = $this->getDataROPO($ROID);
$sql_ro = "SELECT $sql_ro = "SELECT
receive_order_po.*, receive_order_po.*,
DATE_FORMAT(ReceiveOrderPoIDate, '%d-%m-%Y') AS formatedDate, DATE_FORMAT(ReceiveOrderPoIDate, '%d-%m-%Y') AS formatedDate,
CASE CASE
WHEN WarehouseType = 'B' WHEN WarehouseType = 'B'
THEN CONCAT(WarehouseCode,' ', WarehouseName, ' - ', M_BranchName) THEN CONCAT(WarehouseCode,' ', WarehouseName, ' - ', M_BranchName)
WHEN WarehouseType = 'R' WHEN WarehouseType = 'R'
THEN CONCAT(WarehouseCode,' ', WarehouseName, ' - ', S_RegionalName) THEN CONCAT(WarehouseCode,' ', WarehouseName, ' - ', S_RegionalName)
ELSE '' ELSE ''
END WarehouseName, END WarehouseName,
WarehouseID WarehouseID
FROM receive_order_po FROM receive_order_po
JOIN warehouse ON ReceiveOrderPoWarehouseID = WarehouseID JOIN warehouse ON ReceiveOrderPoWarehouseID = WarehouseID
JOIN s_regional ON WarehouseS_RegionalID = S_RegionalID JOIN s_regional ON WarehouseS_RegionalID = S_RegionalID
AND S_RegionalIsActive = 'Y' AND S_RegionalIsActive = 'Y'
LEFT JOIN m_branch ON WarehouseM_BranchID = M_BranchID LEFT JOIN m_branch ON WarehouseM_BranchID = M_BranchID
AND M_BranchIsActive = 'Y' AND M_BranchIsActive = 'Y'
WHERE ReceiveOrderPoID = ?"; WHERE ReceiveOrderPoID = ?";
$que_ro = $this->db->query($sql_ro, [$ROID]); $que_ro = $this->db->query($sql_ro, [$ROID]);
if (!$que_ro) { if (!$que_ro) {
$this->db->trans_rollback(); $this->db->trans_rollback();
@@ -1545,23 +1545,23 @@ class ReceiveItemPoInventaris extends MY_Controller
} }
$sql_detail_ro = "SELECT $sql_detail_ro = "SELECT
receive_order_po_detail.*, receive_order_po_detail.*,
PurchaseOrderID, PurchaseOrderID,
PurchaseOrderNumber, PurchaseOrderNumber,
PurchaseOrderTaxPercentPph, PurchaseOrderTaxPercentPph,
PurchaseOrderTaxPercentPpn, PurchaseOrderTaxPercentPpn,
PurchaseOrderSummaryDiscountAmount as DiscountPerItem, PurchaseOrderSummaryDiscountAmount as DiscountPerItem,
PurchaseOrderSummaryQty as QtyAllPO, PurchaseOrderSummaryQty as QtyAllPO,
PurchaseOrderSummaryTotal as TotalAllPO, PurchaseOrderSummaryTotal as TotalAllPO,
PurchaseOrderDiscountPercent AS DiscPOPercent, PurchaseOrderDiscountPercent AS DiscPOPercent,
PurchaseOrderDiscountAmount AS DiscPORupiah PurchaseOrderDiscountAmount AS DiscPORupiah
FROM receive_order_po_detail FROM receive_order_po_detail
JOIN purchase_order ON ReceiveOrderPoDetailPurchaseOrderID = PurchaseOrderID JOIN purchase_order ON ReceiveOrderPoDetailPurchaseOrderID = PurchaseOrderID
JOIN purchase_order_summary ON ReceiveOrderPoDetailPurchaseOrderSummaryID = PurchaseOrderSummaryID JOIN purchase_order_summary ON ReceiveOrderPoDetailPurchaseOrderSummaryID = PurchaseOrderSummaryID
AND PurchaseOrderSummaryIsActive = 'Y' AND PurchaseOrderSummaryIsActive = 'Y'
WHERE ReceiveOrderPoDetailReceiveOrderPoID = ? WHERE ReceiveOrderPoDetailReceiveOrderPoID = ?
AND ReceiveOrderPoDetailIsActive='Y' AND ReceiveOrderPoDetailIsActive='Y'
GROUP BY ReceiveOrderPoDetailID"; GROUP BY ReceiveOrderPoDetailID";
$que_detail_ro = $this->db->query($sql_detail_ro, [$ROID]); $que_detail_ro = $this->db->query($sql_detail_ro, [$ROID]);
if (!$que_detail_ro) { if (!$que_detail_ro) {
$this->db->trans_rollback(); $this->db->trans_rollback();
@@ -1572,10 +1572,10 @@ class ReceiveItemPoInventaris extends MY_Controller
# UPDATE STATUS RO # # UPDATE STATUS RO #
$sql_update_ro = "UPDATE receive_order_po SET $sql_update_ro = "UPDATE receive_order_po SET
ReceiveOrderPoConfirmed = 'Y', ReceiveOrderPoConfirmed = 'Y',
ReceiveOrderPoConfirmedDate = NOW(), ReceiveOrderPoConfirmedDate = NOW(),
ReceiveOrderPoConfirmedUserID = ? ReceiveOrderPoConfirmedUserID = ?
WHERE ReceiveOrderPoID = ?"; WHERE ReceiveOrderPoID = ?";
$que_update_ro = $this->db->query($sql_update_ro, [$user['M_UserID'], $ROID]); $que_update_ro = $this->db->query($sql_update_ro, [$user['M_UserID'], $ROID]);
if (!$que_update_ro) { if (!$que_update_ro) {
$this->db->trans_rollback(); $this->db->trans_rollback();
@@ -1594,8 +1594,8 @@ class ReceiveItemPoInventaris extends MY_Controller
$jurnal_number = $que_jrnl_num->row_array()['numbering']; $jurnal_number = $que_jrnl_num->row_array()['numbering'];
$sql_periode = "SELECT periodeID FROM periode $sql_periode = "SELECT periodeID FROM periode
WHERE DATE(NOW()) BETWEEN periodeStartDate AND periodeEndDate WHERE DATE(NOW()) BETWEEN periodeStartDate AND periodeEndDate
AND periodeIsActive= 'Y' AND periodeIsClosed = 'N'"; AND periodeIsActive= 'Y' AND periodeIsClosed = 'N'";
$que_periode = $this->db->query($sql_periode, []); $que_periode = $this->db->query($sql_periode, []);
if (!$que_periode) { if (!$que_periode) {
$this->sys_error_db("[Error] get periode", $this->db); $this->sys_error_db("[Error] get periode", $this->db);
@@ -1631,17 +1631,17 @@ class ReceiveItemPoInventaris extends MY_Controller
# INSERT JURNAL HEADER # # INSERT JURNAL HEADER #
$sql_head_jurnal = "INSERT INTO jurnal ( $sql_head_jurnal = "INSERT INTO jurnal (
jurnalM_BranchCompanyID, jurnalM_BranchCompanyID,
JurnalS_RegionalID, JurnalS_RegionalID,
jurnalM_BranchCode, jurnalM_BranchCode,
jurnalperiodeID, jurnalperiodeID,
jurnalNo, jurnalNo,
jurnalTitle, jurnalTitle,
jurnalDescription, jurnalDescription,
jurnalDate, jurnalDate,
jurnalJurnalTypeID, jurnalJurnalTypeID,
jurnalM_UserID jurnalM_UserID
) VALUES (?,?,?,?,?,?,?,NOW(),?,?)"; ) VALUES (?,?,?,?,?,?,?,NOW(),?,?)";
$que_head_jurnal = $this->db->query($sql_head_jurnal, [ $que_head_jurnal = $this->db->query($sql_head_jurnal, [
$user['M_BranchCompanyID'], $user['M_BranchCompanyID'],
$user['S_RegionalID'], $user['S_RegionalID'],
@@ -1668,9 +1668,9 @@ class ReceiveItemPoInventaris extends MY_Controller
foreach ($data_detail_ro as $key => $detail) { foreach ($data_detail_ro as $key => $detail) {
# UPDATE PO Summary # # UPDATE PO Summary #
$sql_posummary = "UPDATE purchase_order_summary SET $sql_posummary = "UPDATE purchase_order_summary SET
PurchaseOrderSummaryQtyReceived = PurchaseOrderSummaryQtyReceived + ? PurchaseOrderSummaryQtyReceived = PurchaseOrderSummaryQtyReceived + ?
WHERE PurchaseOrderSummaryIsActive = 'Y' WHERE PurchaseOrderSummaryIsActive = 'Y'
AND PurchaseOrderSummaryID = ?"; AND PurchaseOrderSummaryID = ?";
$que_posummary = $this->db->query($sql_posummary, [ $que_posummary = $this->db->query($sql_posummary, [
intval($detail['ReceiveOrderPoDetailQty']), intval($detail['ReceiveOrderPoDetailQty']),
$detail['ReceiveOrderPoDetailPurchaseOrderSummaryID'] $detail['ReceiveOrderPoDetailPurchaseOrderSummaryID']
@@ -1862,8 +1862,8 @@ class ReceiveItemPoInventaris extends MY_Controller
// save diskon prorata // save diskon prorata
$sql_save_diskon = "UPDATE receive_order_po_detail SET $sql_save_diskon = "UPDATE receive_order_po_detail SET
ReceiveOrderPoDetailDiskonPoProrata = ? ReceiveOrderPoDetailDiskonPoProrata = ?
WHERE ReceiveOrderPoDetailID = ?"; WHERE ReceiveOrderPoDetailID = ?";
$que_save_diskon = $this->db->query($sql_save_diskon, [ $que_save_diskon = $this->db->query($sql_save_diskon, [
$diskon_prorata_item, $diskon_prorata_item,
$detail['ReceiveOrderPoDetailID'] $detail['ReceiveOrderPoDetailID']
@@ -1898,9 +1898,9 @@ class ReceiveItemPoInventaris extends MY_Controller
// update stock based on batch // update stock based on batch
foreach ($batch_list as $key => $batch) { foreach ($batch_list as $key => $batch) {
$sql_cek_stock = "SELECT * $sql_cek_stock = "SELECT *
FROM stock s FROM stock s
JOIN m_item i ON s.StockItemID = i.M_ItemID JOIN m_item i ON s.StockItemID = i.M_ItemID
WHERE s.StockItemID = ? WHERE s.StockItemID = ?
AND s.StockItemUnitID = ? AND s.StockItemUnitID = ?
AND s.StockWarehouseID = ? AND s.StockWarehouseID = ?
AND i.M_ItemItem_CategoryID = ?"; AND i.M_ItemItem_CategoryID = ?";
@@ -1946,18 +1946,18 @@ class ReceiveItemPoInventaris extends MY_Controller
} }
// insert stockid barcode barang // insert stockid barcode barang
// $sql_update_barcode = "UPDATE t_barcode_barang SET $sql_update_barcode = "UPDATE t_barcode_barang SET
// T_BarcodeBarangStockID = ? T_BarcodeBarangStockID = ?
// WHERE T_BarcodeBarangReceiveOrderPoDetailID = ?"; WHERE T_BarcodeBarangReceiveOrderPoDetailID = ?";
// $qry_update_barcode = $this->db->query($sql_update_barcode, [ $qry_update_barcode = $this->db->query($sql_update_barcode, [
// $stock_ID, $stock_ID,
// $detail['ReceiveOrderPoDetailID'] $detail['ReceiveOrderPoDetailID']
// ]); ]);
// if (!$qry_update_barcode) { if (!$qry_update_barcode) {
// $this->db->trans_rollback(); $this->db->trans_rollback();
// $this->sys_error_db("[Error] update barcode stockID", $this->db); $this->sys_error_db("[Error] update barcode stockID", $this->db);
// exit; exit;
// } }
} else { } else {
$sql_insert_stock = "INSERT INTO stock ( $sql_insert_stock = "INSERT INTO stock (
StockWarehouseAlmariID, StockWarehouseAlmariID,
@@ -1990,18 +1990,18 @@ class ReceiveItemPoInventaris extends MY_Controller
$stock_qty_end = intval($batch['qty']); $stock_qty_end = intval($batch['qty']);
// insert stockid barcode barang // insert stockid barcode barang
// $sql_update_barcode = "UPDATE t_barcode_barang SET $sql_update_barcode = "UPDATE t_barcode_barang SET
// T_BarcodeBarangStockID = ? T_BarcodeBarangStockID = ?
// WHERE T_BarcodeBarangReceiveOrderPoDetailID = ?"; WHERE T_BarcodeBarangReceiveOrderPoDetailID = ?";
// $qry_update_barcode = $this->db->query($sql_update_barcode, [ $qry_update_barcode = $this->db->query($sql_update_barcode, [
// $stockID, $stockID,
// $detail['ReceiveOrderPoDetailID'] $detail['ReceiveOrderPoDetailID']
// ]); ]);
// if (!$qry_update_barcode) { if (!$qry_update_barcode) {
// $this->db->trans_rollback(); $this->db->trans_rollback();
// $this->sys_error_db("[Error] update barcode stockID", $this->db); $this->sys_error_db("[Error] update barcode stockID", $this->db);
// exit; exit;
// } }
} }
// insert stock card // insert stock card
@@ -2095,14 +2095,14 @@ class ReceiveItemPoInventaris extends MY_Controller
// insert jurnal tx for GRNI // insert jurnal tx for GRNI
$total_grni = round($total_debet - ($total_discount_item + $total_discount_po), 2) + $ship_cost; $total_grni = round($total_debet - ($total_discount_item + $total_discount_po), 2) + $ship_cost;
$sql_grni = "INSERT INTO jurnal_tx ( $sql_grni = "INSERT INTO jurnal_tx (
jurnalTxJurnalID, jurnalTxJurnalID,
jurnalTxCoaID, jurnalTxCoaID,
jurnalTxDescription, jurnalTxDescription,
jurnalTxDebit, jurnalTxDebit,
jurnalTxCredit, jurnalTxCredit,
jurnalTxM_UserID jurnalTxM_UserID
) SELECT ?, coaID, coaDescription, 0, ?, ? ) SELECT ?, coaID, coaDescription, 0, ?, ?
FROM coa WHERE coaAccountNo = '2110100030' LIMIT 1"; FROM coa WHERE coaAccountNo = '2110100030' LIMIT 1";
$que_grni = $this->db->query($sql_grni, [$jurnal_ID, $total_grni, $user['M_UserID']]); $que_grni = $this->db->query($sql_grni, [$jurnal_ID, $total_grni, $user['M_UserID']]);
if (!$que_grni) { if (!$que_grni) {
$this->db->trans_rollback(); $this->db->trans_rollback();
@@ -2112,13 +2112,13 @@ class ReceiveItemPoInventaris extends MY_Controller
$grni_jurnal_id = $this->db->insert_id(); $grni_jurnal_id = $this->db->insert_id();
$sql_addon_grni = "INSERT INTO jurnal_addon ( $sql_addon_grni = "INSERT INTO jurnal_addon (
jurnalAddOnJurnalID, jurnalAddOnJurnalID,
jurnalAddOnJurnalTxID, jurnalAddOnJurnalTxID,
jurnalAddOnCode, jurnalAddOnCode,
jurnalAddOnValue, jurnalAddOnValue,
jurnalAddOnCreated, jurnalAddOnCreated,
jurnalAddOnCreatedUserID jurnalAddOnCreatedUserID
) VALUES (?,?,'RONUMB',?,NOW(),?)"; ) VALUES (?,?,'RONUMB',?,NOW(),?)";
$que_addon_grni = $this->db->query($sql_addon_grni, [ $que_addon_grni = $this->db->query($sql_addon_grni, [
$jurnal_ID, $jurnal_ID,
$grni_jurnal_id, $grni_jurnal_id,
@@ -2344,22 +2344,22 @@ class ReceiveItemPoInventaris extends MY_Controller
$this->db->trans_begin(); $this->db->trans_begin();
$sql_insert = "INSERT INTO receive_order_po_inspeksi ( $sql_insert = "INSERT INTO receive_order_po_inspeksi (
ReceiveOrderPoInspeksiReceiveOrderPoDetailID, ReceiveOrderPoInspeksiReceiveOrderPoDetailID,
ReceiveOrderPoInspeksiQtyPesan, ReceiveOrderPoInspeksiQtyPesan,
ReceiveOrderPoInspeksiQtyActual, ReceiveOrderPoInspeksiQtyActual,
ReceiveOrderPoInspeksiPricePesan, ReceiveOrderPoInspeksiPricePesan,
ReceiveOrderPoInspeksiPriceActual, ReceiveOrderPoInspeksiPriceActual,
ReceiveOrderPoInspeksiDatePesan, ReceiveOrderPoInspeksiDatePesan,
ReceiveOrderPoInspeksiDateActual, ReceiveOrderPoInspeksiDateActual,
ReceiveOrderPoInspeksiExpireDate, ReceiveOrderPoInspeksiExpireDate,
ReceiveOrderPoInspeksiKeadaanKemasan, ReceiveOrderPoInspeksiKeadaanKemasan,
ReceiveOrderPoInspeksiKondisiPengiriman, ReceiveOrderPoInspeksiKondisiPengiriman,
ReceiveOrderPoInspeksiSimpulan, ReceiveOrderPoInspeksiSimpulan,
ReceiveOrderPoInspeksiCatatan, ReceiveOrderPoInspeksiCatatan,
ReceiveOrderPoInspeksiStaffPenerima, ReceiveOrderPoInspeksiStaffPenerima,
ReceiveOrderPoInspeksiStaffPengirim, ReceiveOrderPoInspeksiStaffPengirim,
ReceiveOrderPoInspeksiUserID ReceiveOrderPoInspeksiUserID
) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"; ) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
$que_insert = $this->db->query($sql_insert, [ $que_insert = $this->db->query($sql_insert, [
$ROdetailID, $ROdetailID,
$inspeksi['qty_po'], $inspeksi['qty_po'],
@@ -2736,47 +2736,6 @@ class ReceiveItemPoInventaris extends MY_Controller
$barcodeID = $this->db->insert_id(); $barcodeID = $this->db->insert_id();
# check if item already in stock #
$sql_cekstock = "SELECT StockID
FROM stock
JOIN warehouse ON WarehouseID = StockWarehouseID
AND WarehouseIsActive = 'Y'
WHERE WarehouseM_BranchID = ?
AND StockItemID = ?
AND StockItemUnitID = ?";
$que_cekstock = $this->db->query($sql_cekstock, [
$user['M_BranchID'],
$item['ReceiveOrderPoItemID'],
$item['ReceiveOrderPoItemUnitID'],
]);
if (!$que_cekstock) {
$this->db->trans_rollback();
$this->sys_error_db("[Error] query cek stock");
exit;
}
$stockID = $que_cekstock->row_array()['StockID'];
# insert stock inventaris #
$sql_stockinventaris = "INSERT INTO stock_inventory (
StockInventoryStockID,
StockInventoryRuanganID,
StockInventoryBarcode,
StockInventoryBranchID,
StockInventoryCreatedUserID
) VALUES (?,?,?,?,?)";
$que_stockinventaris = $this->db->query($sql_stockinventaris, [
$stockID,
$param['ruanganID'],
$noBarcode,
$user['M_BranchID'],
$user['M_UserID']
]);
if (!$que_stockinventaris) {
$this->db->trans_rollback();
$this->sys_error_db("[Error] insert into table stock inventaris");
exit;
}
# insert each inventory handover detail # # insert each inventory handover detail #
$sql_insert_handover_detail = "INSERT INTO asset_handover_detail( $sql_insert_handover_detail = "INSERT INTO asset_handover_detail(
AssetHandoverDetailAssetHandoverID, AssetHandoverDetailAssetHandoverID,

View File

@@ -1,54 +0,0 @@
#!/usr/bin/env bash
set -euo pipefail
REMOTE_HOST="accone.aplikasi.web.id"
LOCAL_PATH="application/controllers/"
REMOTE_PATH="/home/one/project/accone/one-api/application/controllers/"
cd "$(dirname "$0")/.."
if ! command -v rsync >/dev/null 2>&1; then
echo "rsync is required but was not found in PATH." >&2
exit 1
fi
if ! command -v ssh >/dev/null 2>&1; then
echo "ssh is required but was not found in PATH." >&2
exit 1
fi
if ! command -v awk >/dev/null 2>&1; then
echo "awk is required but was not found in PATH." >&2
exit 1
fi
usage() {
echo "Usage: $0 <test|sync> [remote_user]" >&2
echo "Examples:" >&2
echo " $0 test" >&2
echo " $0 sync" >&2
echo " $0 test one" >&2
}
COMMAND="${1:-}"
REMOTE_USER="${2:-one}"
REMOTE="${REMOTE_USER}@${REMOTE_HOST}"
case "$COMMAND" in
test)
echo "Checking SSH connection to ${REMOTE}..."
ssh -o ConnectTimeout=10 "$REMOTE" "test -d '$REMOTE_PATH'"
echo
echo "Files/folders that would be uploaded:"
rsync -rzcin --out-format="%i %n%L" "$LOCAL_PATH" "${REMOTE}:${REMOTE_PATH}" \
| awk '$1 ~ /^</ || $1 ~ /^cd/ { print }'
;;
sync)
rsync -rzcv "$LOCAL_PATH" "${REMOTE}:${REMOTE_PATH}"
;;
*)
usage
exit 1
;;
esac