be crud m_ruangan

This commit is contained in:
2026-06-12 16:58:24 +07:00
parent 86d147945b
commit f3dba31445
3 changed files with 452 additions and 151 deletions

View File

@@ -113,20 +113,19 @@ class PurchaseRequestNonPersediaan extends MY_Controller
IFNULL(M_BranchCode, '') as M_BranchCode,
IFNULL(M_BranchName, '') as M_BranchName,
item_category.ItemCategoryName as itemCategoryName,
item_category.ItemCategoryID as itemCategoryID,
IF(ah.AssetHandoverID IS NULL, 0, 1) AS hasHandover,
ah.AssetHandoverConfirmedBy as handoverConfirmedBy,
ah.AssetHandoverID AS handoverID,
ah.AssetHandoverDate AS handoverDate,
ah.AssetHandoverToUserID AS handoverToUserID
item_category.ItemCategoryID as itemCategoryID
-- IF(ah.AssetHandoverID IS NULL, 0, 1) AS hasHandover,
-- ah.AssetHandoverConfirmedBy as handoverConfirmedBy,
-- ah.AssetHandoverID AS handoverID,
-- ah.AssetHandoverDate AS handoverDate,
-- ah.AssetHandoverToUserID AS handoverToUserID
FROM purchase_request
JOIN s_regional ON S_RegionalID = PurchaseRequestS_RegionalID
JOIN item_category ON item_category.ItemCategoryID = PurchaseRequestItemCategoryID
JOIN m_user requestedBy ON requestedBy.M_UserID = PurchaseRequestRequestedBy
LEFT JOIN m_user approvedBy ON approvedBy.M_UserID = PurchaseRequestApprovedBy
LEFT JOIN m_branch ON M_BranchCode = PurchaseRequestM_BranchCode
LEFT JOIN asset_handover ah ON ah.AssetHandoverPurchaseRequestID = PurchaseRequestID
AND ah.AssetHandoverIsActive = 'Y'
-- LEFT JOIN asset_handover ah ON ah.AssetHandoverPurchaseRequestID = PurchaseRequestID AND ah.AssetHandoverIsActive = 'Y'
WHERE PurchaseRequestIsActive = 'Y'
AND PurchaseRequestItemCategoryID <> '1'
AND ( PurchaseRequestDate BETWEEN ? AND ? )
@@ -142,14 +141,39 @@ class PurchaseRequestNonPersediaan extends MY_Controller
$this->sys_error_db("select purchase request", $this->db);
exit;
}
$rows = $exec->result_array();
$query = $this->db->last_query();
foreach ($rows as $key => $value) {
$sql_isHandedOver = "SELECT
AssetHandoverID,
AssetHandoverDetailID,
AssetHandoverToUserID,
AssetHandoverConfirmedBy,
T_BarcodeBarangNumber,
M_UserUsername,
CASE
WHEN AssetHandoverConfirmedBy = 0 THEN 'N'
ELSE 'Y'
END AS allHandedOver
FROM asset_handover
JOIN asset_handover_detail ON AssetHandoverDetailAssetHandoverID = AssetHandoverID
AND AssetHandoverIsActive = 'Y'
JOIN t_barcode_barang ON AssetHandoverDetailT_BarcodeBarangID = T_BarcodeBarangID
JOIN m_user ON M_UserID = AssetHandoverToUserID
WHERE AssetHandoverPurchaseRequestID = ?";
$que_isHandedOver = $this->db->query($sql_isHandedOver, [$value['prId']]);
if (!$que_isHandedOver) {
$this->sys_error_db("select purchase request", $this->db);
exit;
}
$data_handed = $que_isHandedOver->result_array();
$rows[$key]['itemHandedOver'] = $data_handed;
}
$result = array(
"total" => $totalPage,
"totalFilter" => $totalCount,
"records" => $rows,
"db" => $query
"records" => $rows
);
$this->sys_ok($result);
@@ -2149,53 +2173,29 @@ class PurchaseRequestNonPersediaan extends MY_Controller
return;
}
# update confirm hand over #
$sql = "UPDATE asset_handover SET
AssetHandoverConfirmedAt = NOW(),
AssetHandoverConfirmedBy = ?,
AssetHandoverLastUpdated = NOW(),
AssetHandoverUserID = ?
WHERE AssetHandoverPurchaseRequestID = ?";
$qry = $this->db->query($sql, [
$user['M_UserID'],
$user['M_UserID'],
$prm['purchaseRequestID']
]);
if (!$qry) {
$this->db->trans_rollback();
$this->sys_error_db("[Error] update confirm hand over", $this->db);
exit;
$dataHanded = $prm['itemHandedOver'];
foreach ($dataHanded as $key => $value) {
# update confirm hand over #
$sql = "UPDATE asset_handover SET
AssetHandoverConfirmedAt = NOW(),
AssetHandoverConfirmedBy = ?,
AssetHandoverLastUpdated = NOW(),
AssetHandoverUserID = ?
WHERE AssetHandoverPurchaseRequestID = ?
AND AssetHandoverID = ?";
$qry = $this->db->query($sql, [
$user['M_UserID'],
$user['M_UserID'],
$prm['purchaseRequestID'],
$value['AssetHandoverID']
]);
if (!$qry) {
$this->db->trans_rollback();
$this->sys_error_db("[Error] update confirm hand over", $this->db);
exit;
}
}
# update status purchase request #
// $sql_pr = "UPDATE purchase_request
// SET PurchaseRequestStatus = 'Closed',
// PurchaseRequestLastUpdated = NOW(),
// PurchaseRequestLastUpdatedUserID = ?
// WHERE PurchaseRequestID = ?";
// $qry_pr = $this->db->query($sql_pr, [$user['M_UserID'], $prm['purchaseRequestID']]);
// if (!$qry_pr) {
// $this->db->trans_rollback();
// $this->sys_error_db("[Error] update status purchase request", $this->db);
// exit;
// }
// $sql = "SELECT *
// FROM purchase_request
// JOIN m_user ON M_UserID = PurchaseRequestCreatedUserID
// WHERE PurchaseRequestID = ?";
// $query = $this->db->query($sql, [$prm['purchaseRequestID']]);
// $row = $query->row_array();
// $sql = "SELECT * FROM purchase_request_detail WHERE PurchaseRequestDetailPurchaseRequestID = ? AND PurchaseRequestDetailIsActive = 'Y'";
// $query = $this->db->query($sql, [$prm['purchaseRequestID']]);
// $rows = $query->result_array();
// $data = array(
// "header" => $row,
// "details" => $rows
// );
// $message = "Nomor PR: " . $row["PurchaseRequestNumber"] . " telah melakukan konfirmasi serah terima oleh " . $row["M_UserUsername"];
// $this->insert_act_log("PRNP", "CONFIRM", $message, $prm['purchaseRequestID'], $this->safeJsonEncode($data), $user['M_UserID']);
$this->db->trans_commit();
$this->sys_ok("Konfirmasi serah terima berhasil disimpan");
} catch (Exception $exc) {