diff --git a/application/controllers/mockup/resultentrysoothers-cpone-v9/Resultentry.php b/application/controllers/mockup/resultentrysoothers-cpone-v9/Resultentry.php index 0e373cd4..34ef7968 100644 --- a/application/controllers/mockup/resultentrysoothers-cpone-v9/Resultentry.php +++ b/application/controllers/mockup/resultentrysoothers-cpone-v9/Resultentry.php @@ -4644,7 +4644,8 @@ class Resultentry extends MY_Controller $sql = "SELECT gr.Group_ResultID, - gr.Group_ResultName + gr.Group_ResultName, + gr.Group_ResultFlagPerTest FROM group_resultdetail grd JOIN group_result gr ON grd.Group_ResultDetailGroup_ResultID = gr.Group_ResultID @@ -4664,9 +4665,8 @@ class Resultentry extends MY_Controller } $target_group_result_id = $rows[0]['Group_ResultID']; $target_group_result_name = $rows[0]['Group_ResultName']; - if (!empty($first_row) && intval($first_row['T_OrderHeaderGroupResultGroup_ResultID']) === intval($target_group_result_id)) { - return $first_row; - } + $target_group_flag_per_test = isset($rows[0]['Group_ResultFlagPerTest']) ? $rows[0]['Group_ResultFlagPerTest'] : 'Y'; + $target_group_test_id = $target_group_flag_per_test === 'Y' ? intval($test_id) : 0; $sql = "SELECT T_OrderHeaderGroupResultID, @@ -4675,11 +4675,11 @@ class Resultentry extends MY_Controller WHERE T_OrderHeaderGroupResultT_OrderHeaderID = ? AND T_OrderHeaderGroupResultGroup_ResultID = ? AND - (T_OrderHeaderGroupResultT_TestID = ? OR T_OrderHeaderGroupResultT_TestID = 0) AND + T_OrderHeaderGroupResultT_TestID = ? AND T_OrderHeaderGroupResultIsActive = 'Y' - ORDER BY IF(T_OrderHeaderGroupResultT_TestID = ?, 0, 1), T_OrderHeaderGroupResultID ASC + ORDER BY T_OrderHeaderGroupResultID ASC LIMIT 1"; - $query = $this->db_onedev->query($sql, [$orderheader_id, $target_group_result_id, $test_id, $test_id]); + $query = $this->db_onedev->query($sql, [$orderheader_id, $target_group_result_id, $target_group_test_id]); if (!$query) { return false; } @@ -4703,7 +4703,7 @@ class Resultentry extends MY_Controller $orderheader_id, $target_group_result_id, $target_group_result_name, - $test_id, + $target_group_test_id, (string)$orderdetail_id ]); if (!$query) { @@ -5382,8 +5382,12 @@ class Resultentry extends MY_Controller T_OrderHeaderGroupResultGroup_ResultID, T_OrderHeaderGroupResultT_TestID, T_OrderHeaderGroupResultGroup_ResultName, + gr.Group_ResultFlagPerTest, T_TestName FROM t_orderheader_group_result + JOIN group_result gr + ON gr.Group_ResultID = T_OrderHeaderGroupResultGroup_ResultID + AND gr.Group_ResultIsActive = 'Y' LEFT JOIN t_test ON T_OrderHeaderGroupResultT_TestID = T_TestID AND T_TestIsActive = 'Y' @@ -5453,7 +5457,8 @@ class Resultentry extends MY_Controller $printCode = $map[$report_key]; foreach ($data as $value) { - $target_test_id = intval($trx['test_id']) > 0 ? intval($trx['test_id']) : intval($value['T_OrderHeaderGroupResultT_TestID']); + $is_per_test = isset($value['Group_ResultFlagPerTest']) && $value['Group_ResultFlagPerTest'] === 'Y'; + $target_test_id = $is_per_test ? intval($trx['test_id']) : 0; $sql_pt = "SELECT Print_TransactionUrlWatermark FROM print_transaction