update / proses add akun pusat di media jurnal & move barcode to serah terima
This commit is contained in:
@@ -28,7 +28,7 @@ class Fakturv4 extends MY_Controller
|
||||
}
|
||||
$branchid = $this->sys_user['M_BranchID'];
|
||||
|
||||
$sql = "SELECT
|
||||
$sql = "SELECT
|
||||
M_StaffID,
|
||||
M_StaffName,
|
||||
M_StaffCode
|
||||
@@ -76,7 +76,7 @@ class Fakturv4 extends MY_Controller
|
||||
SupplierName,
|
||||
IFNULL(SupplierTermOfPayment, 0) AS SupplierTermOfPayment
|
||||
FROM supplier
|
||||
WHERE SupplierName LIKE ?
|
||||
WHERE SupplierName LIKE ?
|
||||
AND SupplierIsActive = 'Y'";
|
||||
$qry = $this->db->query($sql, [$name]);
|
||||
if (!$qry) {
|
||||
@@ -115,10 +115,10 @@ class Fakturv4 extends MY_Controller
|
||||
PurchaseOrderNumber,
|
||||
PurchaseOrderDetailID
|
||||
FROM purchase_order
|
||||
JOIN purchase_order_detail
|
||||
JOIN purchase_order_detail
|
||||
ON PurchaseOrderDetailPurchaseOrderID = PurchaseOrderID
|
||||
AND PurchaseOrderDetailIsActive = 'Y'
|
||||
JOIN warehouse ON WarehouseID = PurchaseOrderDetailWarehouseID
|
||||
JOIN warehouse ON WarehouseID = PurchaseOrderDetailWarehouseID
|
||||
AND WarehouseIsActive = 'Y'
|
||||
JOIN receive_order_po_detail
|
||||
ON ReceiveOrderPoDetailPurchaseOrderDetailID = PurchaseOrderDetailID
|
||||
@@ -172,10 +172,10 @@ class Fakturv4 extends MY_Controller
|
||||
PurchaseOrderNumber,
|
||||
PurchaseOrderDetailID
|
||||
FROM purchase_order
|
||||
JOIN purchase_order_detail
|
||||
JOIN purchase_order_detail
|
||||
ON PurchaseOrderDetailPurchaseOrderID = PurchaseOrderID
|
||||
AND PurchaseOrderDetailIsActive = 'Y'
|
||||
JOIN warehouse ON WarehouseID = PurchaseOrderDetailWarehouseID
|
||||
JOIN warehouse ON WarehouseID = PurchaseOrderDetailWarehouseID
|
||||
AND WarehouseIsActive = 'Y'
|
||||
JOIN receive_order_po_detail
|
||||
ON ReceiveOrderPoDetailPurchaseOrderDetailID = PurchaseOrderDetailID
|
||||
@@ -232,10 +232,10 @@ class Fakturv4 extends MY_Controller
|
||||
PurchaseOrderTaxPercentPpn,
|
||||
PurchaseOrderGrandTotal,
|
||||
PurchaseOrderShippingCost,
|
||||
PurchaseOrderDiscountAmount,
|
||||
PurchaseOrderDiscountAmount,
|
||||
PurchaseOrderDiscountPercent,
|
||||
IF (PurchaseOrderDiscountAmount > 0,
|
||||
'R',
|
||||
IF (PurchaseOrderDiscountAmount > 0,
|
||||
'R',
|
||||
'P'
|
||||
) AS DiscountType
|
||||
FROM purchase_order
|
||||
@@ -263,7 +263,7 @@ class Fakturv4 extends MY_Controller
|
||||
{
|
||||
try {
|
||||
if (!$this->isLogin) {
|
||||
$this->sys_error();
|
||||
$this->sys_error("invalid token");
|
||||
exit;
|
||||
}
|
||||
|
||||
@@ -324,7 +324,7 @@ class Fakturv4 extends MY_Controller
|
||||
$page = ($para['currpage'] - 1) * $limit;
|
||||
}
|
||||
|
||||
$sql = "SELECT
|
||||
$sql = "SELECT
|
||||
ReceiveOrderPoDetailPurchaseOrderID,
|
||||
ReceiveOrderPoDetailPurchaseOrderSummaryID,
|
||||
ReceiveOrderPoDetailReceiveOrderPoID,
|
||||
@@ -336,12 +336,12 @@ class Fakturv4 extends MY_Controller
|
||||
unitreceive.ItemUnitName as ReceiveOrderPoItemUnitName,
|
||||
ReceiveOrderPoDetailQty,
|
||||
ReceiveOrderPoDetailPrice,
|
||||
IF (PurchaseOrderSummaryDiscountType = 'R',
|
||||
PurchaseOrderSummaryDiscountRupiah,
|
||||
IF (PurchaseOrderSummaryDiscountType = 'R',
|
||||
PurchaseOrderSummaryDiscountRupiah,
|
||||
PurchaseOrderSummaryDiscountPercent
|
||||
) as Discount,
|
||||
PurchaseOrderSummaryDiscountType,
|
||||
ReceiveOrderPoDetailDiskonPoProrata
|
||||
PurchaseOrderSummaryDiscountType,
|
||||
ReceiveOrderPoDetailDiskonPoProrata
|
||||
FROM receive_order_po_detail
|
||||
JOIN receive_order_po ON ReceiveOrderPoDetailReceiveOrderPoID = ReceiveOrderPoID
|
||||
AND ReceiveOrderPoIsActive = 'Y'
|
||||
@@ -356,8 +356,8 @@ class Fakturv4 extends MY_Controller
|
||||
AND ReceiveOrderPoID = ?
|
||||
AND M_ItemDesc LIKE ?
|
||||
AND NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM supplier_invoice_detail
|
||||
SELECT 1
|
||||
FROM supplier_invoice_detail
|
||||
WHERE SupplierInvoiceDetailReceiveOrderPoDetailID = ReceiveOrderPoDetailID
|
||||
AND SupplierInvoiceDetailIsActive = 'Y'
|
||||
)
|
||||
@@ -383,8 +383,8 @@ class Fakturv4 extends MY_Controller
|
||||
AND ReceiveOrderPoID = ?
|
||||
AND M_ItemDesc LIKE ?
|
||||
AND NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM supplier_invoice_detail
|
||||
SELECT 1
|
||||
FROM supplier_invoice_detail
|
||||
WHERE SupplierInvoiceDetailReceiveOrderPoDetailID = ReceiveOrderPoDetailID
|
||||
AND SupplierInvoiceDetailIsActive = 'Y'
|
||||
)";
|
||||
@@ -438,31 +438,39 @@ class Fakturv4 extends MY_Controller
|
||||
}
|
||||
|
||||
$sqltal = "SELECT COUNT(*) as total
|
||||
FROM supplier_invoice
|
||||
JOIN supplier_invoice_detail ON SupplierInvoiceID = SupplierInvoiceDetailSupplierInvoiceID
|
||||
JOIN receive_order_po ON SupplierInvoiceDetailReceiveOrderPoID = ReceiveOrderPoID
|
||||
JOIN purchase_order ON SupplierInvoiceDetailPurchaseOrderID = PurchaseOrderID
|
||||
LEFT JOIN warehouse ON ReceiveOrderPoWarehouseID = WarehouseID
|
||||
AND WarehouseM_BranchID = ?
|
||||
JOIN supplier ON SupplierID = SupplierInvoiceSupplierID
|
||||
AND SupplierIsActive = 'Y'
|
||||
LEFT JOIN m_branch ON M_BranchID = WarehouseM_BranchID
|
||||
LEFT JOIN s_regional ON S_RegionalID = WarehouseS_RegionalID
|
||||
WHERE SupplierInvoiceIsActive = 'Y'
|
||||
AND (
|
||||
SupplierInvoiceNumber LIKE ? OR
|
||||
SupplierInvoiceDeliveryOrderNumber LIKE ? OR
|
||||
SupplierInvoiceSupplierInvoiceNumber LIKE ?
|
||||
)
|
||||
AND SupplierInvoiceDate >= DATE(?)
|
||||
AND SupplierInvoiceDate <= DATE(?)
|
||||
AND (? = 'All' OR SupplierInvoiceStatus = ?)
|
||||
AND (? = '0' OR SupplierInvoiceSupplierID = ?)
|
||||
GROUP BY SupplierInvoiceID
|
||||
ORDER BY SUpplierInvoiceID DESC";
|
||||
FROM supplier_invoice
|
||||
JOIN supplier_invoice_detail ON SupplierInvoiceID = SupplierInvoiceDetailSupplierInvoiceID
|
||||
JOIN receive_order_po ON SupplierInvoiceDetailReceiveOrderPoID = ReceiveOrderPoID
|
||||
JOIN purchase_order ON SupplierInvoiceDetailPurchaseOrderID = PurchaseOrderID
|
||||
LEFT JOIN warehouse ON ReceiveOrderPoWarehouseID = WarehouseID
|
||||
AND WarehouseM_BranchID = ?
|
||||
JOIN supplier ON SupplierID = SupplierInvoiceSupplierID
|
||||
AND SupplierIsActive = 'Y'
|
||||
LEFT JOIN m_branch ON M_BranchID = WarehouseM_BranchID
|
||||
LEFT JOIN s_regional ON S_RegionalID = WarehouseS_RegionalID
|
||||
WHERE SupplierInvoiceIsActive = 'Y'
|
||||
AND (
|
||||
SupplierInvoiceNumber LIKE ? OR
|
||||
SupplierInvoiceRefNumber LIKE ? OR
|
||||
SupplierInvoiceSupplierInvoiceNumber LIKE ?
|
||||
)
|
||||
AND SupplierInvoiceDate >= DATE(?)
|
||||
AND SupplierInvoiceDate <= DATE(?)
|
||||
AND (? = 'All' OR SupplierInvoiceStatus = ?)
|
||||
AND (? = '0' OR SupplierInvoiceSupplierID = ?)
|
||||
GROUP BY SupplierInvoiceID
|
||||
ORDER BY SUpplierInvoiceID DESC";
|
||||
$quetal = $this->db->query($sqltal, [
|
||||
$branchID, $nomo, $nomo, $nomo, $date, $enddate,
|
||||
$status, $status, $supplier, $supplier
|
||||
$branchID,
|
||||
$nomo,
|
||||
$nomo,
|
||||
$nomo,
|
||||
$date,
|
||||
$enddate,
|
||||
$status,
|
||||
$status,
|
||||
$supplier,
|
||||
$supplier
|
||||
]);
|
||||
if (!$quetal) {
|
||||
$this->sys_error_db("[Error] get total data faktur");
|
||||
@@ -470,52 +478,61 @@ class Fakturv4 extends MY_Controller
|
||||
}
|
||||
$total = $quetal->result_array()[0]['total'];
|
||||
|
||||
$sqlfak = "SELECT
|
||||
SupplierInvoiceID,
|
||||
SupplierInvoiceNumber,
|
||||
SupplierInvoiceDate,
|
||||
SupplierInvoiceDueDate,
|
||||
SupplierInvoiceDraftPaymentDate,
|
||||
SupplierInvoiceSupplierID,
|
||||
SupplierName,
|
||||
SupplierInvoiceStatus,
|
||||
SupplierInvoiceNote,
|
||||
SupplierInvoiceGrandTotal,
|
||||
SupplierInvoiceSupplierInvoiceNumber,
|
||||
CASE
|
||||
WHEN WarehouseType = 'B' THEN CONCAT(WarehouseCode,' ', WarehouseName, ' - ', M_BranchName)
|
||||
WHEN WarehouseType = 'R' THEN CONCAT(WarehouseCode,' ', WarehouseName, ' - ', S_RegionalName)
|
||||
ELSE ''
|
||||
END as WarehouseName,
|
||||
ReceiveOrderPoID,
|
||||
PurchaseOrderItemCategoryID
|
||||
FROM supplier_invoice
|
||||
JOIN supplier_invoice_detail ON SupplierInvoiceID = SupplierInvoiceDetailSupplierInvoiceID
|
||||
JOIN receive_order_po ON SupplierInvoiceDetailReceiveOrderPoID = ReceiveOrderPoID
|
||||
JOIN purchase_order ON SupplierInvoiceDetailPurchaseOrderID = PurchaseOrderID
|
||||
LEFT JOIN warehouse ON ReceiveOrderPoWarehouseID = WarehouseID
|
||||
AND WarehouseM_BranchID = ?
|
||||
JOIN supplier ON SupplierID = SupplierInvoiceSupplierID
|
||||
AND SupplierIsActive = 'Y'
|
||||
LEFT JOIN m_branch ON M_BranchID = WarehouseM_BranchID
|
||||
LEFT JOIN s_regional ON S_RegionalID = WarehouseS_RegionalID
|
||||
WHERE SupplierInvoiceIsActive = 'Y'
|
||||
AND (
|
||||
SupplierInvoiceNumber LIKE ? OR
|
||||
SupplierInvoiceDeliveryOrderNumber LIKE ? OR
|
||||
SupplierInvoiceSupplierInvoiceNumber LIKE ?
|
||||
)
|
||||
AND SupplierInvoiceDate >= DATE(?)
|
||||
AND SupplierInvoiceDate <= DATE(?)
|
||||
AND (? = 'All' OR SupplierInvoiceStatus = ?)
|
||||
AND (? = '0' OR SupplierInvoiceSupplierID = ?)
|
||||
GROUP BY SupplierInvoiceID
|
||||
ORDER BY SUpplierInvoiceID DESC
|
||||
LIMIT ? OFFSET ?";
|
||||
$sqlfak = "SELECT
|
||||
SupplierInvoiceID,
|
||||
SupplierInvoiceNumber,
|
||||
SupplierInvoiceDate,
|
||||
SupplierInvoiceDueDate,
|
||||
SupplierInvoiceDraftPaymentDate,
|
||||
SupplierInvoiceSupplierID,
|
||||
SupplierName,
|
||||
SupplierInvoiceStatus,
|
||||
SupplierInvoiceNote,
|
||||
SupplierInvoiceGrandTotal,
|
||||
SupplierInvoiceSupplierInvoiceNumber,
|
||||
CASE
|
||||
WHEN WarehouseType = 'B' THEN CONCAT(WarehouseCode,' ', WarehouseName, ' - ', M_BranchName)
|
||||
WHEN WarehouseType = 'R' THEN CONCAT(WarehouseCode,' ', WarehouseName, ' - ', S_RegionalName)
|
||||
ELSE ''
|
||||
END as WarehouseName,
|
||||
ReceiveOrderPoID,
|
||||
PurchaseOrderItemCategoryID
|
||||
FROM supplier_invoice
|
||||
JOIN supplier_invoice_detail ON SupplierInvoiceID = SupplierInvoiceDetailSupplierInvoiceID
|
||||
JOIN receive_order_po ON SupplierInvoiceDetailReceiveOrderPoID = ReceiveOrderPoID
|
||||
JOIN purchase_order ON SupplierInvoiceDetailPurchaseOrderID = PurchaseOrderID
|
||||
LEFT JOIN warehouse ON ReceiveOrderPoWarehouseID = WarehouseID
|
||||
AND WarehouseM_BranchID = ?
|
||||
JOIN supplier ON SupplierID = SupplierInvoiceSupplierID
|
||||
AND SupplierIsActive = 'Y'
|
||||
LEFT JOIN m_branch ON M_BranchID = WarehouseM_BranchID
|
||||
LEFT JOIN s_regional ON S_RegionalID = WarehouseS_RegionalID
|
||||
WHERE SupplierInvoiceIsActive = 'Y'
|
||||
AND (
|
||||
SupplierInvoiceNumber LIKE ? OR
|
||||
SupplierInvoiceRefNumber LIKE ? OR
|
||||
SupplierInvoiceSupplierInvoiceNumber LIKE ?
|
||||
)
|
||||
AND SupplierInvoiceDate >= DATE(?)
|
||||
AND SupplierInvoiceDate <= DATE(?)
|
||||
AND (? = 'All' OR SupplierInvoiceStatus = ?)
|
||||
AND (? = '0' OR SupplierInvoiceSupplierID = ?)
|
||||
GROUP BY SupplierInvoiceID
|
||||
ORDER BY SUpplierInvoiceID DESC
|
||||
LIMIT ? OFFSET ?";
|
||||
$quefak = $this->db->query($sqlfak, [
|
||||
$branchID, $nomo, $nomo, $nomo, $date, $enddate,
|
||||
$status, $status, $supplier, $supplier,
|
||||
$limit, $hal
|
||||
$branchID,
|
||||
$nomo,
|
||||
$nomo,
|
||||
$nomo,
|
||||
$date,
|
||||
$enddate,
|
||||
$status,
|
||||
$status,
|
||||
$supplier,
|
||||
$supplier,
|
||||
$limit,
|
||||
$hal
|
||||
]);
|
||||
if (!$quefak) {
|
||||
$this->sys_error_db("[Error] get list data faktur");
|
||||
@@ -543,7 +560,7 @@ class Fakturv4 extends MY_Controller
|
||||
|
||||
$para = $this->sys_input;
|
||||
|
||||
$sql = "SELECT
|
||||
$sql = "SELECT
|
||||
SupplierInvoiceID,
|
||||
SupplierInvoiceDate,
|
||||
SupplierInvoiceDueDate,
|
||||
@@ -566,14 +583,14 @@ class Fakturv4 extends MY_Controller
|
||||
SupplierInvoiceAdjustmentAmount,
|
||||
SupplierInvoiceAdjustmentNote,
|
||||
SupplierInvoiceNote,
|
||||
IF (SupplierInvoiceDiscountAmount > 0,
|
||||
'R',
|
||||
IF (SupplierInvoiceDiscountAmount > 0,
|
||||
'R',
|
||||
'P'
|
||||
) AS DiscountType,
|
||||
SupplierInvoiceReceiveOrderPoID,
|
||||
ReceiveOrderPoNumber
|
||||
FROM supplier_invoice
|
||||
JOIN supplier ON SupplierInvoiceSupplierID = SupplierID
|
||||
JOIN supplier ON SupplierInvoiceSupplierID = SupplierID
|
||||
JOIN receive_order_po ON ReceiveOrderPoID = SupplierInvoiceReceiveOrderPoID
|
||||
-- JOIN purchase_order ON SupplierInvoicePurchaseOrderID = PurchaseOrderID
|
||||
-- AND PurchaseOrderIsActive = 'Y'
|
||||
@@ -585,7 +602,7 @@ class Fakturv4 extends MY_Controller
|
||||
exit;
|
||||
}
|
||||
|
||||
$sqldet = "SELECT
|
||||
$sqldet = "SELECT
|
||||
SupplierInvoiceDetailID,
|
||||
SupplierInvoiceDetailSupplierInvoiceID,
|
||||
SupplierInvoiceDetailPurchaseOrderID,
|
||||
@@ -611,7 +628,7 @@ class Fakturv4 extends MY_Controller
|
||||
AND M_ItemIsActive = 'Y'
|
||||
JOIN purchase_order ON SupplierInvoiceDetailPurchaseOrderID = PurchaseOrderID
|
||||
AND PurchaseOrderIsActive = 'Y'
|
||||
WHERE SupplierInvoiceDetailIsActive = 'Y'
|
||||
WHERE SupplierInvoiceDetailIsActive = 'Y'
|
||||
AND SupplierInvoiceDetailSupplierInvoiceID = ?";
|
||||
$quedet = $this->db->query($sqldet, [$para['SInvoiceID']]);
|
||||
if (!$quedet) {
|
||||
@@ -630,7 +647,8 @@ class Fakturv4 extends MY_Controller
|
||||
}
|
||||
}
|
||||
|
||||
public function LookupAttachment() {
|
||||
public function LookupAttachment()
|
||||
{
|
||||
try {
|
||||
if (!$this->isLogin) {
|
||||
$this->sys_error("invalid token");
|
||||
@@ -640,14 +658,14 @@ class Fakturv4 extends MY_Controller
|
||||
$para = $this->sys_input;
|
||||
$data = [];
|
||||
|
||||
$sql = "SELECT
|
||||
ReceiveOrderPoDocumentID AS attach_id,
|
||||
$sql = "SELECT
|
||||
ReceiveOrderPoDocumentID AS attach_id,
|
||||
ReceiveOrderPoDocumentFile AS img_url,
|
||||
ReceiveOrderPoDocumentCreated AS created
|
||||
FROM receive_order_po_document
|
||||
FROM receive_order_po_document
|
||||
WHERE ReceiveOrderPoDocumentReceiveOrderPoID = ?
|
||||
AND ReceiveOrderPoDocumentIsActive = 'Y'";
|
||||
$que = $this->db->query($sql, [ $para['roID'] ]);
|
||||
$que = $this->db->query($sql, [$para['roID']]);
|
||||
if (!$que) {
|
||||
$this->sys_error_db("[Error] failed get data attachment inventaris");
|
||||
exit;
|
||||
@@ -657,7 +675,10 @@ class Fakturv4 extends MY_Controller
|
||||
foreach ($rows as $key => $value) {
|
||||
$rows[$key]['category'] = $para['category'];
|
||||
}
|
||||
$data[] = $rows;
|
||||
|
||||
if (count($rows) > 0) {
|
||||
$data = $rows;
|
||||
}
|
||||
|
||||
$this->sys_ok($data);
|
||||
} catch (Exception $exc) {
|
||||
@@ -672,7 +693,7 @@ class Fakturv4 extends MY_Controller
|
||||
{
|
||||
try {
|
||||
if (!$this->isLogin) {
|
||||
$this->sys_error();
|
||||
$this->sys_error("invalid token");
|
||||
exit;
|
||||
}
|
||||
|
||||
@@ -697,7 +718,7 @@ class Fakturv4 extends MY_Controller
|
||||
$areatype = 'R';
|
||||
}
|
||||
|
||||
$sqlusrdivisi = "SELECT M_UserDivisionDivisionID FROM m_userdivision
|
||||
$sqlusrdivisi = "SELECT M_UserDivisionDivisionID FROM m_userdivision
|
||||
WHERE M_UserDivisionM_UserID = ? AND M_UserDivisionIsActive = 'Y'";
|
||||
$queusrdivisi = $this->db->query($sqlusrdivisi, [$user['M_UserID']]);
|
||||
if (!$queusrdivisi) {
|
||||
@@ -717,10 +738,10 @@ class Fakturv4 extends MY_Controller
|
||||
$numpd = $quenum->row_array()['numpd'];
|
||||
|
||||
/*
|
||||
*== Validasi untuk mencegah double click simpan faktur
|
||||
*== Validasi untuk mencegah double click simpan faktur
|
||||
*/
|
||||
$sqlcheck = "SELECT SupplierInvoiceID FROM supplier_invoice
|
||||
WHERE SupplierInvoiceSupplierInvoiceNumber = ?
|
||||
$sqlcheck = "SELECT SupplierInvoiceID FROM supplier_invoice
|
||||
WHERE SupplierInvoiceSupplierInvoiceNumber = ?
|
||||
AND SupplierInvoiceRefNumber = ?
|
||||
AND SupplierInvoicePurchaseOrderID = ?
|
||||
AND SupplierInvoiceGrandTotal = ?
|
||||
@@ -847,7 +868,7 @@ class Fakturv4 extends MY_Controller
|
||||
{
|
||||
try {
|
||||
if (!$this->isLogin) {
|
||||
$this->sys_error();
|
||||
$this->sys_error("invalid token");
|
||||
exit;
|
||||
}
|
||||
$para = $this->sys_input;
|
||||
@@ -857,7 +878,7 @@ class Fakturv4 extends MY_Controller
|
||||
$this->db->trans_begin();
|
||||
|
||||
$sqlupdate = "UPDATE supplier_invoice
|
||||
SET
|
||||
SET
|
||||
SupplierInvoicePurchaseOrderID = ?,
|
||||
SupplierInvoiceDate = ?,
|
||||
SupplierInvoiceDueDate = ?,
|
||||
@@ -883,7 +904,7 @@ class Fakturv4 extends MY_Controller
|
||||
SupplierInvoiceDraftPaymentDate = ?,
|
||||
SupplierInvoiceLastUpdated = NOW(),
|
||||
SupplierInvoiceLastUpdatedUserID = ?
|
||||
WHERE
|
||||
WHERE
|
||||
SupplierInvoiceID = ?";
|
||||
$qryupdate = $this->db->query($sqlupdate, [
|
||||
$para['SIPoID'],
|
||||
@@ -918,8 +939,8 @@ class Fakturv4 extends MY_Controller
|
||||
exit;
|
||||
}
|
||||
|
||||
$sqldel = "UPDATE supplier_invoice_detail
|
||||
SET SupplierInvoiceDetailIsActive = 'N'
|
||||
$sqldel = "UPDATE supplier_invoice_detail
|
||||
SET SupplierInvoiceDetailIsActive = 'N'
|
||||
WHERE SupplierInvoiceDetailIsActive = 'Y'
|
||||
AND SupplierInvoiceDetailSupplierInvoiceID = ?";
|
||||
$qrydel = $this->db->query($sqldel, [$fakturID]);
|
||||
@@ -1080,9 +1101,9 @@ class Fakturv4 extends MY_Controller
|
||||
$userID = $this->sys_user["M_UserID"];
|
||||
|
||||
$this->db->trans_begin();
|
||||
$sqldel = "UPDATE supplier_invoice
|
||||
SET SupplierInvoiceIsActive = 'N'
|
||||
WHERE SupplierInvoiceIsActive = 'Y'
|
||||
$sqldel = "UPDATE supplier_invoice
|
||||
SET SupplierInvoiceIsActive = 'N'
|
||||
WHERE SupplierInvoiceIsActive = 'Y'
|
||||
AND SupplierInvoiceID = ?";
|
||||
$qrydel = $this->db->query($sqldel, [$para['SInvoiceID']]);
|
||||
if (!$qrydel) {
|
||||
@@ -1092,8 +1113,8 @@ class Fakturv4 extends MY_Controller
|
||||
}
|
||||
|
||||
|
||||
$sqldel2 = "UPDATE supplier_invoice_detail
|
||||
SET SupplierInvoiceDetailIsActive = 'N'
|
||||
$sqldel2 = "UPDATE supplier_invoice_detail
|
||||
SET SupplierInvoiceDetailIsActive = 'N'
|
||||
WHERE SupplierInvoiceDetailIsActive = 'Y'
|
||||
AND SupplierInvoiceDetailSupplierInvoiceID = ?";
|
||||
$qrydel2 = $this->db->query($sqldel2, [$para['SInvoiceID']]);
|
||||
@@ -1147,7 +1168,7 @@ class Fakturv4 extends MY_Controller
|
||||
|
||||
$this->db->trans_begin();
|
||||
// update status faktur ke approved
|
||||
$sqlupd = "UPDATE supplier_invoice SET
|
||||
$sqlupd = "UPDATE supplier_invoice SET
|
||||
SupplierInvoiceStatus = 'Verified',
|
||||
SupplierInvoiceVerifiedDate = NOW(),
|
||||
SupplierInvoiceVerifiedUserID = ?,
|
||||
@@ -1166,7 +1187,7 @@ class Fakturv4 extends MY_Controller
|
||||
SupplierInvoiceDetailIsVerified = 'Y',
|
||||
SupplierInvoiceDetailLastUpdated = NOW(),
|
||||
SupplierInvoiceDetailLastUpdatedUserID = ?
|
||||
WHERE SupplierInvoiceDetailSupplierInvoiceID = ?
|
||||
WHERE SupplierInvoiceDetailSupplierInvoiceID = ?
|
||||
AND SupplierInvoiceDetailIsActive = 'Y'";
|
||||
$quedet = $this->db->query($sqldet, [$user['M_UserID'], $fakturID]);
|
||||
if (!$quedet) {
|
||||
@@ -1198,7 +1219,7 @@ class Fakturv4 extends MY_Controller
|
||||
|
||||
$this->db->trans_begin();
|
||||
|
||||
$sqlupd = "UPDATE supplier_invoice SET
|
||||
$sqlupd = "UPDATE supplier_invoice SET
|
||||
SupplierInvoiceStatus = 'Reject',
|
||||
SupplierInvoiceLastUpdated = NOW(),
|
||||
SupplierInvoiceLastUpdatedUserID = ?
|
||||
@@ -1218,7 +1239,7 @@ class Fakturv4 extends MY_Controller
|
||||
SupplierInvoiceDetailIsActive = 'N',
|
||||
SupplierInvoiceDetailLastUpdated = NOW(),
|
||||
SupplierInvoiceDetailLastUpdatedUserID = ?
|
||||
WHERE SupplierInvoiceDetailSupplierInvoiceID = ?
|
||||
WHERE SupplierInvoiceDetailSupplierInvoiceID = ?
|
||||
AND SupplierInvoiceDetailIsActive = 'Y' ";
|
||||
$quedet = $this->db->query($sqldet, [$user['M_UserID'], $fakturID]);
|
||||
if (!$quedet) {
|
||||
@@ -1250,7 +1271,7 @@ class Fakturv4 extends MY_Controller
|
||||
|
||||
$this->db->trans_begin();
|
||||
// update status faktur ke approved
|
||||
$sqlupd = "UPDATE supplier_invoice SET
|
||||
$sqlupd = "UPDATE supplier_invoice SET
|
||||
SupplierInvoiceStatus = 'Approved',
|
||||
SupplierInvoiceApprovedDate = NOW(),
|
||||
SupplierInvoiceApprovedUserID = ?,
|
||||
@@ -1267,8 +1288,8 @@ class Fakturv4 extends MY_Controller
|
||||
|
||||
// get periode untuk jurnal
|
||||
// ----------------------------------------------------------------------------------------
|
||||
$sqlprd = "SELECT periodeID FROM periode
|
||||
WHERE DATE(NOW()) BETWEEN DATE(periodeStartDate) AND DATE(periodeEndDate)
|
||||
$sqlprd = "SELECT periodeID FROM periode
|
||||
WHERE DATE(NOW()) BETWEEN DATE(periodeStartDate) AND DATE(periodeEndDate)
|
||||
AND periodeIsActive = 'Y'
|
||||
AND periodeIsClosed = 'N'";
|
||||
$queprd = $this->db->query($sqlprd, []);
|
||||
@@ -1291,7 +1312,7 @@ class Fakturv4 extends MY_Controller
|
||||
|
||||
// get data faktur
|
||||
// ----------------------------------------------------------------------------------------
|
||||
$sqlinv = "SELECT
|
||||
$sqlinv = "SELECT
|
||||
supplier_invoice.* ,
|
||||
supplier_invoice_detail.*,
|
||||
ReceiveOrderPoNumber,
|
||||
@@ -1494,12 +1515,12 @@ class Fakturv4 extends MY_Controller
|
||||
}
|
||||
|
||||
if ($item['M_ItemItem_CategoryID'] == '1' && !empty($item['M_ItemNat_SubGroupID'])) {
|
||||
$sqlsgp = "SELECT map_nat_group.*
|
||||
$sqlsgp = "SELECT map_nat_group.*
|
||||
FROM map_nat_group
|
||||
JOIN map_nat_subgroup ON MapNatSub_NatGroupID = MapNatGroup_NatGroupID
|
||||
AND MapNatSub_IsActive = 'Y'
|
||||
WHERE MapNatGroup_NatGroupID = ?
|
||||
AND MapNatSub_NatSubGroupID = ?
|
||||
WHERE MapNatGroup_NatGroupID = ?
|
||||
AND MapNatSub_NatSubGroupID = ?
|
||||
AND MapNatGroup_IsActive = 'Y'";
|
||||
$quesgp = $this->db->query($sqlsgp, [$item['M_ItemNat_GroupID'], $item['M_ItemNat_SubGroupID']]);
|
||||
if (!$quesgp) {
|
||||
@@ -1538,38 +1559,29 @@ class Fakturv4 extends MY_Controller
|
||||
exit;
|
||||
}
|
||||
} else if ($item['M_ItemItem_CategoryID'] == '2') {
|
||||
// Mapping JurnalTx sama dengan Persediaan hanya beda CoA
|
||||
// TODO: Update dengan CoA yang Benar
|
||||
|
||||
// Jika ItemNatsubGroup belum termapping return error
|
||||
if (empty($item['M_ItemNat_SubGroupID'])) {
|
||||
if (empty($item['M_ItemM_InventarisGolID'])) {
|
||||
$this->db->trans_rollback();
|
||||
$this->sys_error_db("[Error] Item {$item['M_ItemDesc']} tidak memiliki Nat_SubGroupID");
|
||||
exit;
|
||||
};
|
||||
|
||||
$sqlsgp = "SELECT map_nat_group.*
|
||||
FROM map_nat_group
|
||||
JOIN map_nat_subgroup ON MapNatSub_NatGroupID = MapNatGroup_NatGroupID
|
||||
AND MapNatSub_IsActive = 'Y'
|
||||
WHERE MapNatGroup_NatGroupID = ?
|
||||
AND MapNatSub_NatSubGroupID = ?
|
||||
AND MapNatGroup_IsActive = 'Y'";
|
||||
$quesgp = $this->db->query($sqlsgp, [$item['M_ItemNat_GroupID'], $item['M_ItemNat_SubGroupID']]);
|
||||
if (!$quesgp) {
|
||||
$this->db->trans_rollback();
|
||||
$this->sys_error_db("[Error] get map_nat_subgroup");
|
||||
$this->sys_error_db("[Error] item golongan inventaris belum ditentukan");
|
||||
exit;
|
||||
}
|
||||
$itemGroup = $quesgp->row_array();
|
||||
|
||||
if (
|
||||
empty($itemGroup['MapNatGroup_Debt_coaID']) ||
|
||||
empty($itemGroup['MapNatGroup_Debt_coaAccNo']) ||
|
||||
empty($itemGroup['MapNatGroup_Debt_coaDesc'])
|
||||
) {
|
||||
$sql_coainv = "SELECT
|
||||
CoaMapInventarisHutangCoaID,
|
||||
CoaMapInventarisHutangCoaNo,
|
||||
CoaMapInventarisHutangCoaDesc
|
||||
FROM coa_map_inventaris
|
||||
WHERE CoaMapInventarisM_InventarisGolID = ?
|
||||
AND CoaMapInventarisIsActive = 'Y'";
|
||||
$que_coainv = $this->db->query($sql_coainv, [$item['M_ItemM_InventarisGolID']]);
|
||||
if (!$que_coainv) {
|
||||
$this->db->trans_rollback();
|
||||
$this->sys_error_db("[Error] coa item tidak ditemukan / belum dimapping");
|
||||
$this->sys_error_db("[Error] failed to get coa inventaris gol");
|
||||
exit;
|
||||
}
|
||||
$item_coainv = $que_coainv->row_array();
|
||||
if (empty($item_coainv)) {
|
||||
$this->db->trans_rollback();
|
||||
$this->sys_error_db("[Error] item inventaris coa not found");
|
||||
exit;
|
||||
}
|
||||
|
||||
@@ -1581,8 +1593,8 @@ class Fakturv4 extends MY_Controller
|
||||
|
||||
$status = $this->InsertJurnalTx(
|
||||
$jurnalID,
|
||||
$itemGroup['MapNatGroup_Debt_coaID'],
|
||||
$itemGroup['MapNatGroup_Debt_coaDesc'],
|
||||
$item_coainv['CoaMapInventarisHutangCoaID'],
|
||||
$item_coainv['CoaMapInventarisHutangCoaDesc'],
|
||||
$user['M_UserID'],
|
||||
0,
|
||||
$kredit
|
||||
@@ -1626,57 +1638,7 @@ class Fakturv4 extends MY_Controller
|
||||
exit;
|
||||
}
|
||||
} else if ($item['M_ItemItem_CategoryID'] == '4') {
|
||||
// if (empty($item['M_ItemNat_SubGroupID'])) {
|
||||
// $this->db->trans_rollback();
|
||||
// $this->sys_error_db("[Error] Item {$item['M_ItemDesc']} tidak memiliki Nat_SubGroupID");
|
||||
// exit;
|
||||
// };
|
||||
|
||||
$this->InsertJurnalTxJasa($jurnalID, $item['M_ItemID'], $inv, $user['M_UserID']);
|
||||
|
||||
// $sqlsgp = "SELECT map_nat_group.*
|
||||
// FROM map_nat_group
|
||||
// JOIN map_nat_subgroup ON MapNatSub_NatGroupID = MapNatGroup_NatGroupID
|
||||
// AND MapNatSub_IsActive = 'Y'
|
||||
// WHERE MapNatGroup_NatGroupID = ?
|
||||
// AND MapNatSub_NatSubGroupID = ?
|
||||
// AND MapNatGroup_IsActive = 'Y'";
|
||||
// $quesgp = $this->db->query($sqlsgp, [$item['M_ItemNat_GroupID'], $item['M_ItemNat_SubGroupID']]);
|
||||
// if (!$quesgp) {
|
||||
// $this->db->trans_rollback();
|
||||
// $this->sys_error_db("[Error] get map_nat_subgroup");
|
||||
// exit;
|
||||
// }
|
||||
// $itemGroup = $quesgp->row_array();
|
||||
|
||||
// if (
|
||||
// empty($itemGroup['MapNatGroup_Debt_coaID']) ||
|
||||
// empty($itemGroup['MapNatGroup_Debt_coaAccNo']) ||
|
||||
// empty($itemGroup['MapNatGroup_Debt_coaDesc'])
|
||||
// ) {
|
||||
// $this->db->trans_rollback();
|
||||
// $this->sys_error_db("[Error] coa item tidak ditemukan / belum dimapping");
|
||||
// exit;
|
||||
// }
|
||||
|
||||
// $price = (doubleval($inv['SupplierInvoiceDetailTotal']) - doubleval($inv['SupplierInvoiceDetailDiscountPoProrata']));
|
||||
// // $taxPPH = doubleval($inv['SupplierInvoiceTaxPercentPph']) * $price / 100;
|
||||
// $taxPPN = doubleval($inv['SupplierInvoiceTaxPercentPpn']) * $price / 100;
|
||||
|
||||
// $kredit = round($price + $taxPPN, 2);
|
||||
|
||||
// $status = $this->InsertJurnalTx(
|
||||
// $jurnalID,
|
||||
// $itemGroup['MapNatGroup_Debt_coaID'],
|
||||
// $itemGroup['MapNatGroup_Debt_coaDesc'],
|
||||
// $user['M_UserID'],
|
||||
// 0,
|
||||
// $kredit
|
||||
// );
|
||||
// if (!$status) {
|
||||
// $this->sys_error_db($status['msg']);
|
||||
// exit;
|
||||
// }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1709,13 +1671,14 @@ class Fakturv4 extends MY_Controller
|
||||
}
|
||||
}
|
||||
|
||||
private function InsertJurnalTxJasa($jurnalID, $itemid, $invoice, $userid) {
|
||||
private function InsertJurnalTxJasa($jurnalID, $itemid, $invoice, $userid)
|
||||
{
|
||||
$sql_coa = "SELECT
|
||||
JasaCoaMapHutangCoaID,
|
||||
JasaCoaMapHutangCoaNo,
|
||||
JasaCoaMapHutangCoaDesc
|
||||
FROM jasa_coa_map
|
||||
JOIN coa ON coaID = JasaCoaMapHutangCoaID
|
||||
FROM jasa_coa_map
|
||||
JOIN coa ON coaID = JasaCoaMapHutangCoaID
|
||||
AND coaIsActive = 'Y'
|
||||
WHERE JasaCoaMapM_ItemID = ?";
|
||||
$que_coa = $this->db->query($sql_coa, [$itemid]);
|
||||
@@ -1734,15 +1697,18 @@ class Fakturv4 extends MY_Controller
|
||||
|
||||
$invtotal = doubleval($invoice['SupplierInvoiceDetailTotal']);
|
||||
$disprorata = doubleval($invoice['SupplierInvoiceDetailDiscountPoProrata']);
|
||||
|
||||
|
||||
$price = $invtotal - $disprorata;
|
||||
$taxPPN = doubleval($invoice['SupplierInvoiceTaxPercentPpn']) * $price / 100;
|
||||
$kredit = round($price + $taxPPN, 2);
|
||||
|
||||
$insert = $this->InsertJurnalTx(
|
||||
$jurnalID, $coajasa['JasaCoaMapHutangCoaID'],
|
||||
$coajasa['JasaCoaMapHutangCoaDesc'],
|
||||
$userid, 0, $kredit
|
||||
$jurnalID,
|
||||
$coajasa['JasaCoaMapHutangCoaID'],
|
||||
$coajasa['JasaCoaMapHutangCoaDesc'],
|
||||
$userid,
|
||||
0,
|
||||
$kredit
|
||||
);
|
||||
if (!$insert) {
|
||||
$this->db->trans_rollback();
|
||||
|
||||
Reference in New Issue
Block a user