|
|
|
|
@@ -1,10 +1,8 @@
|
|
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
{
|
|
|
|
|
class PurchaseOrderAset extends MY_Controller {
|
|
|
|
|
var $db;
|
|
|
|
|
public function index()
|
|
|
|
|
{
|
|
|
|
|
public function index() {
|
|
|
|
|
echo "Purchase Order Aset API";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -14,45 +12,40 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
## QUERY ##
|
|
|
|
|
public function getListSupplier()
|
|
|
|
|
{
|
|
|
|
|
public function getListSupplier() {
|
|
|
|
|
try {
|
|
|
|
|
if (!$this->isLogin) {
|
|
|
|
|
throw new Exception('Invalid token');
|
|
|
|
|
$this->sys_error("invalid token");
|
|
|
|
|
exit;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$sql = "SELECT
|
|
|
|
|
SupplierID,
|
|
|
|
|
SupplierName
|
|
|
|
|
FROM supplier
|
|
|
|
|
WHERE SupplierIsActive = 'Y'";
|
|
|
|
|
SupplierID,
|
|
|
|
|
SupplierName
|
|
|
|
|
FROM supplier
|
|
|
|
|
WHERE SupplierIsActive = 'Y'";
|
|
|
|
|
$que = $this->db->query($sql, []);
|
|
|
|
|
if (!$que) {
|
|
|
|
|
throw new Exception('failed to query list supplier', 1);
|
|
|
|
|
$this->sys_error_db("[Error] get data supplier");
|
|
|
|
|
exit;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$data = $que->result_array();
|
|
|
|
|
$this->sys_ok($data);
|
|
|
|
|
} catch (Exception $exc) {
|
|
|
|
|
$msg = '[Error] ' . $exc->getMessage();
|
|
|
|
|
$code = $exc->getCode();
|
|
|
|
|
if ($code == 0) {
|
|
|
|
|
$this->sys_error($msg);
|
|
|
|
|
} else {
|
|
|
|
|
$this->sys_error_db($msg);
|
|
|
|
|
}
|
|
|
|
|
exit;
|
|
|
|
|
$this->sys_error($exc->getMessage());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getListCabang()
|
|
|
|
|
{
|
|
|
|
|
public function getListCabang() {
|
|
|
|
|
try {
|
|
|
|
|
if (!$this->isLogin) {
|
|
|
|
|
throw new Exception('Invalid token');
|
|
|
|
|
$this->sys_error("invalid token");
|
|
|
|
|
exit;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$user = $this->sys_user;
|
|
|
|
|
|
|
|
|
|
$sql = "SELECT
|
|
|
|
|
M_BranchID,
|
|
|
|
|
M_BranchCode,
|
|
|
|
|
@@ -62,28 +55,22 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
AND M_BranchS_RegionalID = ?";
|
|
|
|
|
$que = $this->db->query($sql, [$user['S_RegionalID']]);
|
|
|
|
|
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);
|
|
|
|
|
} catch (Exception $exc) {
|
|
|
|
|
$msg = '[Error] ' . $exc->getMessage();
|
|
|
|
|
$code = $exc->getCode();
|
|
|
|
|
if ($code == 0) {
|
|
|
|
|
$this->sys_error($msg);
|
|
|
|
|
} else {
|
|
|
|
|
$this->sys_error_db($msg);
|
|
|
|
|
}
|
|
|
|
|
exit;
|
|
|
|
|
$this->sys_error($exc->getMessage());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function searchRequestAset()
|
|
|
|
|
{
|
|
|
|
|
public function searchRequestAset() {
|
|
|
|
|
try {
|
|
|
|
|
if (!$this->isLogin) {
|
|
|
|
|
throw new Exception('Invalid token');
|
|
|
|
|
$this->sys_error("invalid token");
|
|
|
|
|
exit;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$para = $this->sys_input;
|
|
|
|
|
@@ -100,70 +87,67 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$sql = "SELECT
|
|
|
|
|
PurchaseRequestID,
|
|
|
|
|
PurchaseRequestNumber,
|
|
|
|
|
PurchaseRequestDetailID,
|
|
|
|
|
PurchaseRequestFlagID,
|
|
|
|
|
PurchaseRequestFlagM_BranchCode AS BranchCode,
|
|
|
|
|
PurchaseRequestItemCategoryID AS ItemCategoryID,
|
|
|
|
|
PurchaseRequestFlagQtyRest - PurchaseRequestFlagQtyProses AS UnprocessFlagQty,
|
|
|
|
|
PurchaseRequestDetailQty AS RequestQty,
|
|
|
|
|
PurchaseRequestDetailQty AS OriginalQty,
|
|
|
|
|
M_BranchName,
|
|
|
|
|
M_ItemID,
|
|
|
|
|
M_ItemCode,
|
|
|
|
|
M_ItemDesc,
|
|
|
|
|
ItemUnitID,
|
|
|
|
|
ItemUnitName,
|
|
|
|
|
SupplierPricePrice as SupplierPrice
|
|
|
|
|
FROM purchase_request
|
|
|
|
|
JOIN purchase_request_detail ON PurchaseRequestDetailPurchaseRequestID = PurchaseRequestID
|
|
|
|
|
AND PurchaseRequestDetailIsActive = 'Y'
|
|
|
|
|
AND PurchaseRequestM_BranchCode = ?
|
|
|
|
|
AND PurchaseRequestItemCategoryID = '3' -- id category item asset
|
|
|
|
|
AND PurchaseRequestNumber LIKE ?
|
|
|
|
|
JOIN purchase_request_flag ON PurchaseRequestFlagPurchaseRequestDetailID = PurchaseRequestDetailID
|
|
|
|
|
AND PurchaseRequestFlagStatus = 'PO'
|
|
|
|
|
AND PurchaseRequestFlagIsActive = 'Y'
|
|
|
|
|
JOIN m_item ON M_ItemID = PurchaseRequestDetailM_ItemID
|
|
|
|
|
JOIN itemunit ON ItemUnitID = PurchaseRequestDetailItemUnitID
|
|
|
|
|
JOIN supplier_price ON SupplierPriceSupplierID = ?
|
|
|
|
|
AND SupplierPriceM_ItemID = M_ItemID
|
|
|
|
|
AND SupplierPriceItemUnitID = ItemUnitID
|
|
|
|
|
AND SupplierPriceIsActive = 'Y'
|
|
|
|
|
JOIN m_branch ON M_BranchCode = PurchaseRequestFlagM_BranchCode
|
|
|
|
|
AND M_BranchIsActive = 'Y'
|
|
|
|
|
WHERE NOT EXISTS (
|
|
|
|
|
SELECT 1
|
|
|
|
|
FROM purchase_order_detail
|
|
|
|
|
JOIN purchase_order ON PurchaseOrderDetailPurchaseOrderID = PurchaseOrderID
|
|
|
|
|
AND PurchaseOrderStatus = 'Approved'
|
|
|
|
|
AND PurchaseOrderIsActive = 'Y'
|
|
|
|
|
AND PurchaseOrderDetailIsActive = 'Y'
|
|
|
|
|
WHERE PurchaseOrderDetailPurchaseRequestDetailID = PurchaseRequestDetailID
|
|
|
|
|
)";
|
|
|
|
|
PurchaseRequestID,
|
|
|
|
|
PurchaseRequestNumber,
|
|
|
|
|
PurchaseRequestDetailID,
|
|
|
|
|
PurchaseRequestFlagID,
|
|
|
|
|
PurchaseRequestFlagM_BranchCode AS BranchCode,
|
|
|
|
|
PurchaseRequestItemCategoryID AS ItemCategoryID,
|
|
|
|
|
PurchaseRequestFlagQtyRest - PurchaseRequestFlagQtyProses AS UnprocessFlagQty,
|
|
|
|
|
PurchaseRequestDetailQty AS RequestQty,
|
|
|
|
|
PurchaseRequestDetailQty AS OriginalQty,
|
|
|
|
|
M_BranchName,
|
|
|
|
|
M_ItemID,
|
|
|
|
|
M_ItemCode,
|
|
|
|
|
M_ItemDesc,
|
|
|
|
|
ItemUnitID,
|
|
|
|
|
ItemUnitName,
|
|
|
|
|
SupplierPricePrice as SupplierPrice
|
|
|
|
|
FROM purchase_request
|
|
|
|
|
JOIN purchase_request_detail ON PurchaseRequestDetailPurchaseRequestID = PurchaseRequestID
|
|
|
|
|
AND PurchaseRequestDetailIsActive = 'Y'
|
|
|
|
|
AND PurchaseRequestM_BranchCode = ?
|
|
|
|
|
AND PurchaseRequestItemCategoryID = '3' -- id category item asset
|
|
|
|
|
AND PurchaseRequestNumber LIKE ?
|
|
|
|
|
JOIN purchase_request_flag ON PurchaseRequestFlagPurchaseRequestDetailID = PurchaseRequestDetailID
|
|
|
|
|
AND PurchaseRequestFlagStatus = 'PO'
|
|
|
|
|
AND PurchaseRequestFlagIsActive = 'Y'
|
|
|
|
|
JOIN m_item ON M_ItemID = PurchaseRequestDetailM_ItemID
|
|
|
|
|
JOIN itemunit ON ItemUnitID = PurchaseRequestDetailItemUnitID
|
|
|
|
|
JOIN supplier_price ON SupplierPriceSupplierID = ?
|
|
|
|
|
AND SupplierPriceM_ItemID = M_ItemID
|
|
|
|
|
AND SupplierPriceItemUnitID = ItemUnitID
|
|
|
|
|
AND SupplierPriceIsActive = 'Y'
|
|
|
|
|
JOIN m_branch ON M_BranchCode = PurchaseRequestFlagM_BranchCode
|
|
|
|
|
AND M_BranchIsActive = 'Y'
|
|
|
|
|
WHERE NOT EXISTS (
|
|
|
|
|
SELECT 1
|
|
|
|
|
FROM purchase_order_detail
|
|
|
|
|
JOIN purchase_order ON PurchaseOrderDetailPurchaseOrderID = PurchaseOrderID
|
|
|
|
|
AND PurchaseOrderStatus = 'Approved'
|
|
|
|
|
AND PurchaseOrderIsActive = 'Y'
|
|
|
|
|
AND PurchaseOrderDetailIsActive = 'Y'
|
|
|
|
|
WHERE PurchaseOrderDetailPurchaseRequestDetailID = PurchaseRequestDetailID
|
|
|
|
|
)";
|
|
|
|
|
|
|
|
|
|
$sql_data = $sql . " LIMIT ? OFFSET ? ";
|
|
|
|
|
$que_data = $this->db->query($sql_data, [
|
|
|
|
|
$para['branchcode'],
|
|
|
|
|
$keyword,
|
|
|
|
|
$para['supplierID'],
|
|
|
|
|
$limit,
|
|
|
|
|
$offset
|
|
|
|
|
$para['branchcode'], $keyword, $para['supplierID'],
|
|
|
|
|
$limit, $offset
|
|
|
|
|
]);
|
|
|
|
|
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();
|
|
|
|
|
|
|
|
|
|
$sql_total = "SELECT COUNT(*) AS total FROM ($sql) AS x";
|
|
|
|
|
$que_total = $this->db->query($sql_total, [
|
|
|
|
|
$para['branchcode'],
|
|
|
|
|
$keyword,
|
|
|
|
|
$para['supplierID']
|
|
|
|
|
$para['branchcode'], $keyword, $para['supplierID']
|
|
|
|
|
]);
|
|
|
|
|
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'];
|
|
|
|
|
|
|
|
|
|
@@ -174,14 +158,7 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
|
|
|
|
|
$this->sys_ok($out);
|
|
|
|
|
} catch (Exception $exc) {
|
|
|
|
|
$msg = '[Error] ' . $exc->getMessage();
|
|
|
|
|
$code = $exc->getCode();
|
|
|
|
|
if ($code == 0) {
|
|
|
|
|
$this->sys_error($msg);
|
|
|
|
|
} else {
|
|
|
|
|
$this->sys_error_db($msg);
|
|
|
|
|
}
|
|
|
|
|
exit;
|
|
|
|
|
$this->sys_error($exc->getMessage());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -200,7 +177,7 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
$keyword .= $para['search'] . "%";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$sql_base = "SELECT
|
|
|
|
|
$sql_base = "SELECT
|
|
|
|
|
PurchaseOrderID,
|
|
|
|
|
PurchaseOrderDate,
|
|
|
|
|
PurchaseOrderNote,
|
|
|
|
|
@@ -217,9 +194,9 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
PurchaseOrderAssetContractEndDate AS contractEnd,
|
|
|
|
|
SupplierID,
|
|
|
|
|
SupplierName
|
|
|
|
|
FROM purchase_order
|
|
|
|
|
FROM purchase_order
|
|
|
|
|
JOIN supplier ON SupplierID = PurchaseOrderSupplierID
|
|
|
|
|
JOIN purchase_order_asset_contract
|
|
|
|
|
JOIN purchase_order_asset_contract
|
|
|
|
|
ON PurchaseOrderAssetContractPurchaseOrderID = PurchaseOrderID
|
|
|
|
|
WHERE PurchaseOrderIsActive = 'Y'
|
|
|
|
|
AND PurchaseOrderItemCategoryID = '3'
|
|
|
|
|
@@ -277,8 +254,8 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
|
|
|
|
|
$para = $this->sys_input;
|
|
|
|
|
|
|
|
|
|
$sql = "SELECT
|
|
|
|
|
PurchaseOrderAssetAttachmentID AS attach_id,
|
|
|
|
|
$sql = "SELECT
|
|
|
|
|
PurchaseOrderAssetAttachmentID AS attach_id,
|
|
|
|
|
PurchaseOrderAssetAttachmentName AS img_url,
|
|
|
|
|
PurchaseOrderAssetAttachmentCreated AS created
|
|
|
|
|
FROM purchase_order_asset_attachment
|
|
|
|
|
@@ -344,7 +321,7 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
$detail_asset = $que_detail->result_array();
|
|
|
|
|
|
|
|
|
|
# get data from purchase order summary #
|
|
|
|
|
$sql_sumry = "SELECT
|
|
|
|
|
$sql_sumry = "SELECT
|
|
|
|
|
PurchaseOrderID,
|
|
|
|
|
PurchaseOrderSummaryID,
|
|
|
|
|
PurchaseOrderSummaryQty AS RequestQty,
|
|
|
|
|
@@ -382,11 +359,11 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
PurchaseOrderStatus,
|
|
|
|
|
PurchaseOrderRefNumber AS reference,
|
|
|
|
|
PurchaseOrderGrandTotal AS grandtotal,
|
|
|
|
|
CASE
|
|
|
|
|
CASE
|
|
|
|
|
WHEN PurchaseOrderTaxPpnType = 'P' THEN 'percent'
|
|
|
|
|
ELSE 'absolute'
|
|
|
|
|
END AS typepajak,
|
|
|
|
|
CASE
|
|
|
|
|
CASE
|
|
|
|
|
WHEN PurchaseOrderTaxPpnType = 'P' THEN PurchaseOrderTaxPercentPpn
|
|
|
|
|
ELSE PurchaseOrderTaxAmountPpn
|
|
|
|
|
END AS valuepajak,
|
|
|
|
|
@@ -415,9 +392,9 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
PurchaseOrderAssetContractInstallmentDownPaymentType AS installmentDownPaymentType,
|
|
|
|
|
PurchaseOrderAssetContractInstallmentDownPayment AS installmentDownPayment,
|
|
|
|
|
PurchaseOrderApprovedManagerUserID AS verifiedby
|
|
|
|
|
FROM purchase_order
|
|
|
|
|
FROM purchase_order
|
|
|
|
|
JOIN supplier ON SupplierID = PurchaseOrderSupplierID
|
|
|
|
|
JOIN purchase_order_asset_contract
|
|
|
|
|
JOIN purchase_order_asset_contract
|
|
|
|
|
ON PurchaseOrderAssetContractPurchaseOrderID = PurchaseOrderID
|
|
|
|
|
WHERE PurchaseOrderIsActive = 'Y'
|
|
|
|
|
AND PurchaseOrderID = ?";
|
|
|
|
|
@@ -750,7 +727,7 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
$summary_total = floatval($para['summary']['total']);
|
|
|
|
|
|
|
|
|
|
# update po header #
|
|
|
|
|
$sql_po = "UPDATE purchase_order SET
|
|
|
|
|
$sql_po = "UPDATE purchase_order SET
|
|
|
|
|
PurchaseOrderDate = ?,
|
|
|
|
|
PurchaseOrderRefNumber = ?,
|
|
|
|
|
PurchaseOrderSupplierID = ?,
|
|
|
|
|
@@ -764,7 +741,7 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
PurchaseOrderTaxAmountPpn = ?,
|
|
|
|
|
PurchaseOrderGrandTotal = ?,
|
|
|
|
|
PurchaseOrderLastUpdated = NOW()
|
|
|
|
|
WHERE PurchaseOrderID = ?
|
|
|
|
|
WHERE PurchaseOrderID = ?
|
|
|
|
|
AND PurchaseOrderIsActive = 'Y'";
|
|
|
|
|
$que_po = $this->db->query($sql_po, [
|
|
|
|
|
$para['podate'], $para['reference'], $para['supplierID'], $user['S_RegionalID'],
|
|
|
|
|
@@ -778,7 +755,7 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# update purchase_order_asset_contract #
|
|
|
|
|
$sql_contract = "UPDATE purchase_order_asset_contract SET
|
|
|
|
|
$sql_contract = "UPDATE purchase_order_asset_contract SET
|
|
|
|
|
PurchaseOrderAssetContractTAssetAttachmentID = ?,
|
|
|
|
|
PurchaseOrderAssetContractName = ?,
|
|
|
|
|
PurchaseOrderAssetContractDate = ?,
|
|
|
|
|
@@ -791,7 +768,7 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
PurchaseOrderAssetContractInstallmentDownPaymentType = ?,
|
|
|
|
|
PurchaseOrderAssetContractInstallmentDownPayment = ?,
|
|
|
|
|
PurchaseOrderAssetContractLastUpdated = NOW()
|
|
|
|
|
WHERE PurchaseOrderAssetContractID = ?
|
|
|
|
|
WHERE PurchaseOrderAssetContractID = ?
|
|
|
|
|
AND PurchaseOrderAssetContractIsActive = 'Y'";
|
|
|
|
|
$que_contract = $this->db->query($sql_contract, [
|
|
|
|
|
$para['assetAttachmentID'],
|
|
|
|
|
@@ -814,9 +791,9 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# update status old po summary isActive to 'N' #
|
|
|
|
|
$sql_active = "UPDATE purchase_order_summary SET
|
|
|
|
|
$sql_active = "UPDATE purchase_order_summary SET
|
|
|
|
|
PurchaseOrderSummaryIsActive = 'N'
|
|
|
|
|
WHERE PurchaseOrderSummaryPurchaseOrderID = ?
|
|
|
|
|
WHERE PurchaseOrderSummaryPurchaseOrderID = ?
|
|
|
|
|
AND PurchaseOrderSummaryIsActive = 'Y'";
|
|
|
|
|
$que_active = $this->db->query($sql_active, [$para['PurchaseOrderID']]);
|
|
|
|
|
if (!$que_active) {
|
|
|
|
|
@@ -871,7 +848,7 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# update status po detail isActive to 'N' #
|
|
|
|
|
$sql_active = "UPDATE purchase_order_detail SET
|
|
|
|
|
$sql_active = "UPDATE purchase_order_detail SET
|
|
|
|
|
PurchaseOrderDetailIsActive = 'N'
|
|
|
|
|
WHERE PurchaseOrderDetailPurchaseOrderID = ?
|
|
|
|
|
AND PurchaseOrderDetailIsActive = 'Y'";
|
|
|
|
|
@@ -915,7 +892,7 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$sql_flag = "UPDATE purchase_request_flag SET
|
|
|
|
|
PurchaseRequestFlagQtyProses = ?
|
|
|
|
|
PurchaseRequestFlagQtyProses = ?
|
|
|
|
|
WHERE PurchaseRequestFlagID = ?";
|
|
|
|
|
$que_flag = $this->db->query($sql_flag, [
|
|
|
|
|
$obj['RequestQty'], $obj['PurchaseRequestFlagID']
|
|
|
|
|
@@ -950,11 +927,11 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
$para = $this->sys_input;
|
|
|
|
|
$user = $this->sys_user;
|
|
|
|
|
|
|
|
|
|
$sql_detail = "SELECT
|
|
|
|
|
$sql_detail = "SELECT
|
|
|
|
|
PurchaseOrderDetailPurchaseRequestFlagID,
|
|
|
|
|
PurchaseOrderDetailQty
|
|
|
|
|
FROM purchase_order_detail
|
|
|
|
|
WHERE PurchaseOrderDetailPurchaseOrderID = ?
|
|
|
|
|
FROM purchase_order_detail
|
|
|
|
|
WHERE PurchaseOrderDetailPurchaseOrderID = ?
|
|
|
|
|
AND PurchaseOrderDetailIsActive = 'Y'";
|
|
|
|
|
$que_detail = $this->db->query($sql_detail, [$para['poID']]);
|
|
|
|
|
if (!$que_detail) {
|
|
|
|
|
@@ -981,10 +958,10 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* soft delete purchase order detail */
|
|
|
|
|
$sql_deldetail = "UPDATE purchase_order_detail SET
|
|
|
|
|
PurchaseOrderDetailIsActive = 'N',
|
|
|
|
|
$sql_deldetail = "UPDATE purchase_order_detail SET
|
|
|
|
|
PurchaseOrderDetailIsActive = 'N',
|
|
|
|
|
PurchaseOrderDetailDeleted = NOW(),
|
|
|
|
|
PurchaseOrderDetailDeletedUserID = ?
|
|
|
|
|
PurchaseOrderDetailDeletedUserID = ?
|
|
|
|
|
WHERE PurchaseOrderDetailPurchaseOrderID = ?";
|
|
|
|
|
$que_deldetail = $this->db->query($sql_deldetail, [
|
|
|
|
|
$user['M_UserID'], $para['poID']
|
|
|
|
|
@@ -999,7 +976,7 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
$sql_delsummary = "UPDATE purchase_order_summary SET
|
|
|
|
|
PurchaseOrderSummaryIsActive = 'N',
|
|
|
|
|
PurchaseOrderSummaryDeleted = NOW(),
|
|
|
|
|
PurchaseOrderSummaryDeletedUserID = ?
|
|
|
|
|
PurchaseOrderSummaryDeletedUserID = ?
|
|
|
|
|
WHERE PurchaseOrderSummaryPurchaseOrderID = ?";
|
|
|
|
|
$que_delsummary = $this->db->query($sql_delsummary, [
|
|
|
|
|
$user['M_UserID'], $para['poID']
|
|
|
|
|
@@ -1011,10 +988,10 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* soft delete purchase_order_asset_contract */
|
|
|
|
|
$sql_delcontract = "UPDATE purchase_order_asset_contract SET
|
|
|
|
|
$sql_delcontract = "UPDATE purchase_order_asset_contract SET
|
|
|
|
|
PurchaseOrderAssetContractIsActive = 'N',
|
|
|
|
|
PurchaseOrderAssetContractLastUpdated = NOW()
|
|
|
|
|
WHERE PurchaseOrderAssetContractID = ?
|
|
|
|
|
WHERE PurchaseOrderAssetContractID = ?
|
|
|
|
|
AND PurchaseOrderAssetContractPurchaseOrderID = ?";
|
|
|
|
|
$que_delcontract = $this->db->query($sql_delcontract, [
|
|
|
|
|
$para['contractID'], $para['poID']
|
|
|
|
|
@@ -1026,10 +1003,10 @@ class PurchaseOrderAset extends MY_Controller
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* soft delete purchase order */
|
|
|
|
|
$sql_delorder = "UPDATE purchase_order SET
|
|
|
|
|
$sql_delorder = "UPDATE purchase_order SET
|
|
|
|
|
PurchaseOrderIsActive = 'N',
|
|
|
|
|
PurchaseOrderDeleted = NOW(),
|
|
|
|
|
PurchaseOrderDeletedUserID = ?
|
|
|
|
|
PurchaseOrderDeletedUserID = ?
|
|
|
|
|
WHERE PurchaseOrderID = ?";
|
|
|
|
|
$que_delorder = $this->db->query($sql_delorder, [
|
|
|
|
|
$user['M_UserID'], $para['poID']
|
|
|
|
|
@@ -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() {
|
|
|
|
|
try {
|
|
|
|
|
if (!$this->isLogin) {
|
|
|
|
|
throw new Exception('Invalid token');
|
|
|
|
|
$this->sys_error("invalid token");
|
|
|
|
|
exit;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$user = $this->sys_user;
|
|
|
|
|
$sql = "SELECT M_UserM_ApproveLevelID
|
|
|
|
|
FROM m_user
|
|
|
|
|
WHERE M_UserIsActive = 'Y'
|
|
|
|
|
AND M_UserID = ? ";
|
|
|
|
|
$sql = "SELECT M_UserM_ApproveLevelID FROM m_user
|
|
|
|
|
WHERE M_UserIsActive = 'Y' AND M_UserID = ? ";
|
|
|
|
|
$que = $this->db->query($sql, [$user['M_UserID']]);
|
|
|
|
|
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();
|
|
|
|
|
|
|
|
|
|
$this->sys_ok($data);
|
|
|
|
|
} catch (Exception $exc) {
|
|
|
|
|
$msg = '[Error] ' . $exc->getMessage();
|
|
|
|
|
$code = $exc->getCode();
|
|
|
|
|
if ($code == 0) {
|
|
|
|
|
$this->sys_error($msg);
|
|
|
|
|
} else {
|
|
|
|
|
$this->sys_error_db($msg);
|
|
|
|
|
}
|
|
|
|
|
exit;
|
|
|
|
|
$this->sys_error($exc->getMessage());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|