FHM09062601IBL - load_klinik tests format identik registration_v37 selectPx
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -4791,13 +4791,14 @@ GROUP BY T_SampleStationID ";
|
||||
$rst['selected_company'] = $row_company ?: [];
|
||||
$rst['companies'] = $row_company ? [$row_company] : [];
|
||||
|
||||
// Tests dari order_detail_order
|
||||
// Tests dari order_detail_order — format identik registration_v37 selectPx
|
||||
$detail_rows = $this->db_onedev->query(
|
||||
"SELECT odo.*,
|
||||
t.T_TestName, t.T_TestSasCode, t.T_TestIsResult,
|
||||
t.T_TestCode
|
||||
spm.px_type, spm.T_TestIsCito,
|
||||
spm.nat_test AS spm_nat_test,
|
||||
spm.child_test AS spm_child_test
|
||||
FROM one_klinik.order_detail_order odo
|
||||
LEFT JOIN t_test t ON odo.orderDetailOrderT_TestID = t.T_TestID
|
||||
LEFT JOIN ss_price_mou spm ON spm.Ss_PriceMouID = odo.orderDetailOrderSsPriceMouID
|
||||
WHERE odo.orderDetailOrderOrderID = ? AND odo.orderDetailOrderIsActive = 'Y'
|
||||
ORDER BY odo.orderDetailOrderID ASC",
|
||||
[$row_header['orderID']]
|
||||
@@ -4805,22 +4806,31 @@ GROUP BY T_SampleStationID ";
|
||||
|
||||
$tests = [];
|
||||
foreach ($detail_rows as $d) {
|
||||
$child = json_decode($d['orderDetailOrderJsonChildren'] ?? '[]', true) ?: [];
|
||||
$nat_test = json_decode($d['spm_nat_test'] ?? '[]') ?: [];
|
||||
$child_test = json_decode($d['spm_child_test'] ?? '[]') ?: [];
|
||||
|
||||
$requirement = [];
|
||||
if (($d['px_type'] ?? '') === 'PX') {
|
||||
$x = $this->db_smartone->query(
|
||||
"SELECT fn_fo_requirement_get(?) x", [$d['orderDetailOrderT_TestID']]
|
||||
)->row();
|
||||
if ($x && $x->x !== null) $requirement = json_decode($x->x);
|
||||
}
|
||||
|
||||
$tests[] = [
|
||||
'ss_price_mou_id' => $d['orderDetailOrderSsPriceMouID'],
|
||||
'pxid' => $d['orderDetailOrderT_TestID'] ?: $d['orderDetailOrderT_PacketID'],
|
||||
'pxcode' => $d['T_TestCode'] ?? $d['orderDetailOrderT_PacketName'],
|
||||
'pxsascode' => $d['T_TestSasCode'] ?? '',
|
||||
'test_name' => $d['orderDetailOrderT_TestName'] ?: $d['orderDetailOrderT_PacketName'],
|
||||
'pxname' => ($d['T_TestSasCode'] ?? '') . ' ' . ($d['orderDetailOrderT_TestName'] ?: $d['orderDetailOrderT_PacketName']),
|
||||
'is_packet' => $d['orderDetailOrderIsPacket'],
|
||||
'type' => $d['orderDetailOrderPacketType'],
|
||||
'bruto' => $d['orderDetailOrderT_PriceAmount'],
|
||||
'discountpersen' => $d['orderDetailOrderT_PriceDisc'],
|
||||
'discountrp' => $d['orderDetailOrderT_PriceDiscRp'],
|
||||
'total' => $d['orderDetailOrderT_PriceTotal'],
|
||||
'child_test' => $child,
|
||||
'isresult' => $d['T_TestIsResult'] ?? 'N',
|
||||
'T_TestID' => $d['orderDetailOrderT_TestID'],
|
||||
'T_TestName' => $d['orderDetailOrderT_TestName'],
|
||||
'px_type' => $d['px_type'] ?? '',
|
||||
'T_PriceAmount' => $d['orderDetailOrderT_PriceAmount'],
|
||||
'T_PriceDisc' => $d['orderDetailOrderT_PriceDisc'],
|
||||
'T_PriceDiscRp' => $d['orderDetailOrderT_PriceDiscRp'],
|
||||
'Ss_PriceMouID' => $d['orderDetailOrderSsPriceMouID'],
|
||||
'is_packet' => $d['orderDetailOrderIsPacket'],
|
||||
'packet_id' => $d['orderDetailOrderT_PacketID'] ?? '',
|
||||
'T_TestIsCito' => $d['T_TestIsCito'] ?? 'N',
|
||||
'nat_test' => $nat_test,
|
||||
'requirement' => $requirement,
|
||||
'child_test' => $child_test,
|
||||
];
|
||||
}
|
||||
$rst['tests'] = $tests;
|
||||
|
||||
Reference in New Issue
Block a user