Sync resume status to MCU dashboard

This commit is contained in:
sas.fajri
2026-04-29 13:44:54 +07:00
parent b72fc2ce3b
commit 4b8be3428a

View File

@@ -14,8 +14,46 @@ class Resumeindividucponev7 extends MY_Controller
{ {
parent::__construct(); parent::__construct();
$this->db_onedev = $this->load->database("onedev", true); $this->db_onedev = $this->load->database("onedev", true);
$this->load->library('Mcudashboard');
// $this->load->library("SsPriceMou"); // $this->load->library("SsPriceMou");
} }
private function sync_resume_status_dashboard($resumeID)
{
$resumeID = intval($resumeID);
if ($resumeID <= 0) {
return;
}
$this->mcudashboard->upsert_patient_resume_status($resumeID);
}
private function upsert_published_dashboard_on_new_to_val($orderID, $oldStatus, $newStatus, $userID)
{
$orderID = intval($orderID);
$userID = intval($userID);
$oldStatus = strtoupper(trim((string)$oldStatus));
$newStatus = strtoupper(trim((string)$newStatus));
if ($orderID <= 0 || !($oldStatus === 'NEW' && $newStatus === 'VAL')) {
return;
}
$sql = "INSERT INTO published_mcu_dashboard (
Published_McuDasboardT_OrderHeaderID,
Published_McuDasboardStatus,
Published_McuDasboardIsActive,
Published_McuDasboardCreated,
Published_McuDasboardCreatedUserID,
Published_McuDasboardLastUpdated,
Published_McuDasboardLastUpdatedUserID
)
VALUES (?, 'N', 'Y', NOW(), ?, NOW(), ?)
ON DUPLICATE KEY UPDATE
Published_McuDasboardStatus = 'N',
Published_McuDasboardIsActive = 'Y',
Published_McuDasboardLastUpdated = NOW(),
Published_McuDasboardLastUpdatedUserID = VALUES(Published_McuDasboardLastUpdatedUserID)";
$this->db_onedev->query($sql, array($orderID, $userID, $userID));
}
public function getsetup() public function getsetup()
{ {
try { try {
@@ -650,6 +688,7 @@ class Resumeindividucponev7 extends MY_Controller
$statusLog = $act; $statusLog = $act;
$val = 'N'; $val = 'N';
$dt = '0000-00-00 00:00:00'; $dt = '0000-00-00 00:00:00';
$statusBefore = 'NEW';
if ($act == 'VAL') { if ($act == 'VAL') {
$status = 'VAL'; $status = 'VAL';
$val = 'Y'; $val = 'Y';
@@ -676,6 +715,9 @@ class Resumeindividucponev7 extends MY_Controller
} }
$dataCek = $query->result_array(); $dataCek = $query->result_array();
if (count($dataCek) > 0 && isset($dataCek[0]['Mcu_ResumeStatus'])) {
$statusBefore = $dataCek[0]['Mcu_ResumeStatus'];
}
if (count($dataCek) == 0) { if (count($dataCek) == 0) {
$sql = "INSERT INTO mcu_resume $sql = "INSERT INTO mcu_resume
(Mcu_ResumeT_OrderHeaderID, (Mcu_ResumeT_OrderHeaderID,
@@ -988,6 +1030,8 @@ class Resumeindividucponev7 extends MY_Controller
$this->sys_error($message); $this->sys_error($message);
exit; exit;
} }
$this->upsert_published_dashboard_on_new_to_val($data['orderID'], $statusBefore, $status, $userid);
$this->sync_resume_status_dashboard($resumeID);
$this->sys_ok('ok'); $this->sys_ok('ok');
} }
function getlab($id, $isApi) function getlab($id, $isApi)
@@ -1897,6 +1941,7 @@ class Resumeindividucponev7 extends MY_Controller
$this->sys_error($message); $this->sys_error($message);
exit; exit;
} }
$this->sync_resume_status_dashboard($resumeID);
$this->sys_ok('OK'); $this->sys_ok('OK');
exit; exit;
} }
@@ -2358,6 +2403,7 @@ class Resumeindividucponev7 extends MY_Controller
$this->sys_error($message); $this->sys_error($message);
exit; exit;
} }
$this->sync_resume_status_dashboard($resumeID);
for ($i = 0; $i < count($rtn['data']); $i++) { for ($i = 0; $i < count($rtn['data']); $i++) {
$rtn['data'][$i]['Nat_TestName'] = str_replace("|", ", ", $rtn['data'][$i]['Nat_TestName']); $rtn['data'][$i]['Nat_TestName'] = str_replace("|", ", ", $rtn['data'][$i]['Nat_TestName']);
} }