tambah save glukosa

This commit is contained in:
Hanan Askarim
2026-05-21 15:08:41 +07:00
parent 7228d17924
commit 7834c044ad

View File

@@ -194,7 +194,6 @@ T_OrderHeaderIsActive as isactive,
$row['glucoses'] = $rst_glucose['glucoses'];
}
$rows[$key] = $row;
}
}
$result = [
@@ -202,7 +201,6 @@ T_OrderHeaderIsActive as isactive,
"records" => $rows
];
$this->sys_ok($result);
}
function searchxxx()
@@ -343,7 +341,6 @@ GROUP_CONCAT(CONCAT(OrderGlucoseID,'^',Nat_TestID,'^',Nat_TestName,'^',OrderGluc
"records" => $query->result_array()
];
$this->sys_ok($result);
}
function getdetail()
{
@@ -759,14 +756,7 @@ FROM
VALUES ('GLUCOSE','{$prm['orderID']}','{$x_data_before}','{$x_data_after}',now(),'{$userid}')";
$querylog = $this->db_onedev->query($sqllog);
}
}
}
$sql_bbtb = "SELECT
@@ -845,7 +835,6 @@ FROM
AdditionalFisikLogUserID)
VALUES ('BBTB','{$prm['orderID']}','','{$x_data_after}',now(),'{$userid}')";
$querylog = $this->db_onedev->query($sqllog);
} else {
$sql = $this->db_onedev->query("SELECT * FROM t_samplingso_additional_fisik_bbtb WHERE T_SamplingAdditionalFisikBBTBID = {$prm['T_SamplingAdditionalFisikBBTBID']} AND T_SamplingAdditionalFisikBBTBIsActive = 'Y'");
$x_data_before = $sql->result_array();
@@ -955,7 +944,6 @@ FROM
AdditionalFisikLogUserID)
VALUES ('BW','{$prm['orderID']}','','{$x_data_after}',now(),'{$userid}')";
$querylog = $this->db_onedev->query($sqllog);
} else {
$sql = $this->db_onedev->query("SELECT * FROM t_samplingso_additional_fisik_bw WHERE T_SamplingAdditionalFisikBWID = {$prm['T_SamplingAdditionalFisikBWID']}");
$x_data_before = $sql->result_array();
@@ -1149,7 +1137,117 @@ FROM
}
$this->sys_ok($result);
} catch (Exception $exc) {
$message = $exc->getMessage();
$this->sys_error($message);
}
}
function saveGlucosa()
{
try {
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$prm = $this->sys_input;
$userid = $this->sys_user["M_UserID"];
if ($prm['glucoses'] && count($prm['glucoses'])) {
foreach ($prm['glucoses'] as $k_gluc => $v_gluc) {
$sampletypeid = $this->db_onedev->query("SELECT Nat_TestNat_SampleTypeID
FROM nat_test WHERE Nat_TestID = '{$v_gluc[1]}'")->row();
$sql_gluc = "SELECT
COUNT(T_OrderSampleID) AS total
FROM t_ordersample
WHERE T_OrderSampleT_OrderHeaderID = ?
AND T_OrderSampleT_SampleTypeID = ?
AND T_OrderSampleReceive = 'Y'
AND T_OrderSampleReceiveDate IS NOT NULL";
$query_gluc = $this->db_onedev->query($sql_gluc, [$prm['orderID'], $sampletypeid->Nat_TestNat_SampleTypeID]);
if (!$query_gluc) {
$message = $this->db_onedev->error();
$message['qry'] = $this->db_onedev->last_query();
$this->sys_error($message);
exit;
}
$sample_gluc = $query_gluc->row_array()['total'];
$sql_order_gluc = "SELECT
COUNT(T_OrderDetailID) AS total
FROM t_orderdetail
JOIN t_test ON T_OrderDetailT_OrderHeaderID = {$prm['orderID']} AND
T_OrderDetailT_TestID = T_TestID AND
T_OrderDetailIsActive = 'Y'
JOIN nat_test ON T_TestNat_TestID = {$v_gluc[1]}";
$query_order_gluc = $this->db_onedev->query($sql_order_gluc);
if (!$query_order_gluc) {
$message = $this->db_onedev->error();
$message['qry'] = $this->db_onedev->last_query();
$this->sys_error($message);
exit;
}
$order_gluc = $query_order_gluc->row_array()['total'];
if ($sample_gluc > 0 && $order_gluc > 0) {
$sql = $this->db_onedev->query("SELECT * FROM order_glucose WHERE OrderGlucoseID = {$v_gluc[0]}");
$x_data_before = $sql->result_array();
$x_data_before = json_encode($x_data_before);
$sql = "UPDATE order_glucose SET OrderGlucoseIsActive = 'N', OrderGlucoseDeleted = NOW(), OrderGlucoseDeletedUserID = '{$userid}'
WHERE
OrderGlucoseID = {$v_gluc[0]}";
$this->db_onedev->query($sql);
$sql = "INSERT INTO order_glucose (
OrderGlucoseT_OrderHeaderID,
OrderGlucoseNat_TestID,
OrderGlucoseResult,
OrderGlucoseCreated,
OrderGlucoseCreatedUserID
)
VALUES(
{$prm['orderID']},
{$v_gluc[1]},
'{$v_gluc[3]}',
NOW(),
{$userid}
)";
$this->db_onedev->query($sql);
$last_id_glucose = $this->db_onedev->insert_id();
$sql = "UPDATE t_orderdetail
JOIN t_test ON T_OrderDetailT_OrderHeaderID = {$prm['orderID']} AND
T_OrderDetailT_TestID = T_TestID AND
T_OrderDetailIsActive = 'Y'
JOIN nat_test ON T_TestNat_TestID = {$v_gluc[1]}
SET T_OrderDetailResult = '{$v_gluc[3]}',
T_OrderDetailNormalValueNote = '< 100',
T_OrderDetailNormalValueDescription = '< 100',
T_OrderDetailLastUpdatedUserID = {$userid},
T_OrderDetailLastUpdated = NOW()
";
$this->db_onedev->query($sql);
// INSERT LOG
$sql = $this->db_onedev->query("SELECT * FROM order_glucose WHERE OrderGlucoseID = {$last_id_glucose}");
$x_data_after = $sql->result_array();
$x_data_after = json_encode($x_data_after);
$sqllog = "INSERT INTO additionalfisik_log(
AdditionalFisikLogType,
AdditionalFisikLogT_OrderHeaderID,
AdditionalFisikLogJSONBefore,
AdditionalFisikLogJSONAfter,
AdditionalFisikLogCreated,
AdditionalFisikLogUserID)
VALUES ('GLUCOSE','{$prm['orderID']}','{$x_data_before}','{$x_data_after}',now(),'{$userid}')";
$querylog = $this->db_onedev->query($sqllog);
}
}
}
$result = array("message" => "Data glukosa berhasil disimpan");
$this->sys_ok($result);
} catch (Exception $exc) {
$message = $exc->getMessage();
$this->sys_error($message);