';
echo '';
echo "T_OrderSampleID T_OrderSampleBarcode T_SampleTypeName T_SampleTypeID T_OrderSampleWorklistReceive Wl RcvDate Wl RcvTime IsActive
\n";
$lastWlReceive = "";
$lastRecord = array();
$flagOnlySingle = false;
if (count($rows) == 1) {
$flagOnlySingle = true;
}
$flagNoReceiveYet = true;
foreach ($rows as $r) {
if ($r["T_OrderSampleWorklistReceive"] == "Y") $flagNoReceiveYet = false;
}
foreach ($rows as $r) {
echo '';
echo "{$r['T_OrderSampleID']} {$r['T_OrderSampleBarcode']} {$r['T_SampleTypeName']} {$r['T_SampleTypeID']} {$r['T_OrderSampleWorklistReceive']} " .
"{$r['T_OrderSampleWorklistReceiveDatetime']} {$r['T_OrderSampleWorklistReceiveUserID']} {$r['T_OrderSampleIsActive']} ";
if ($r['T_OrderSampleWorklistReceiveDatetime'] != '') {
$url_target = '/one-api/fix/check_result_v2/fix_sample/' . $r['T_OrderHeaderLabNumber'] . '/' . $r['T_SampleTypeID'];
echo '';
echo " Fix " . $r['T_SampleTypeName'] . ' lainnya ';
echo ' ';
if ($lastWlReceive < $r["T_OrderSampleWorklistReceiveDatetime"]) {
$lastWlReceive = $r["T_OrderSampleWorklistReceiveDatetime"];
$lastRecord = $r;
}
} else {
//echo ' ';
if ($lastWlReceive == "") {
if ((true || $flagOnlySingle) && $r["T_OrderSampleHandling"] == "Y") {
$url_target = '/one-api/fix/check_result_v2/fix_from_sampling/' . $r['T_OrderSampleID'];
echo '';
echo " Fix from samplingtime ";
echo " ";
} else {
echo " ";
}
} else {
$url_target = '/one-api/fix/check_result_v2/fix_sample_one/' . $r['T_OrderSampleID'] . '/' . $lastRecord['T_SampleTypeID'];
echo '';
echo " Fix copy dari " . $lastRecord['T_SampleTypeName'] . ' ';
echo " ";
}
}
// $x_note = "" . print_r($r, true) . " ";
// echo "$x_note ";
echo ' ';
$detail_info = $this->get_detail($r);
echo $detail_info;
}
}
public function fix_from_sampling($targetID)
{
$sql = "update t_ordersample target
join t_ordersample source on
target.T_OrderSampleID = $targetID
and target.T_OrderSampleWorklistReceive = 'N'
and source.T_OrderSampleID = $targetID
set
target.T_OrderSampleWorklistReceive = source.T_OrderSampleHandling,
target.T_OrderSampleWorklistReceiveDatetime = source.T_OrderSampleHandlingTime,
target.T_OrderSampleWorklistReceiveUserID = source.T_OrderSampleHandlingUserID
";
$qry = $this->db->query($sql);
if (!$qry) {
echo json_encode(['status' => 'ERR', 'message' => print_r($this->db->error(), true)]);
exit;
}
$sql = "select T_OrderSampleT_OrderHeaderID, T_OrderSampleT_SampleTypeID
from t_ordersample where T_OrderSampleID=?";
$qry = $this->db->query($sql, array($targetID));
if (!$qry) {
echo json_encode(['status' => 'ERR', 'message' => print_r($this->db->error(), true)]);
exit;
}
$rows = $qry->result_array();
if (count($rows) == 0) {
echo $this->db->last_query();
echo "No record";
exit;
}
$headerID = $rows[0]["T_OrderSampleT_OrderHeaderID"];
$sampleTypeID = $targetID;
$sql = "
update t_orderdetailaddon
join t_orderdetail on T_OrderDetailT_OrderHeaderID = ?
and T_OrderDetailAddOnT_OrderDetailID = T_OrderDetailID
and T_OrderDetailAddOnPreAnalytic <> 'Y'
join t_test on T_OrderDetailT_TestID = T_TestID
and T_TestT_SampleTypeID = ?
set T_OrderDetailAddOnPreAnalytic = 'Y'
, T_OrderDetailAddOnPreAnalyticDate=now()";
$qry = $this->db->query($sql, array($headerID, $sampleTypeID));
if (!$qry) {
echo json_encode(['status' => 'ERR', 'message' => print_r($this->db->error(), true)]);
exit;
}
echo 'update OK';
}
public function confirm_fix_sample_one($targetID, $sourceID)
{
$target_ids = " $targetID ";
$sql = "update t_ordersample target
join t_ordersample source on
target.T_OrderSampleID in ($target_ids)
and target.T_OrderSampleWorklistReceive = 'N'
and source.T_OrderSampleID = ?
set
target.T_OrderSampleSampling = if(target.T_OrderSampleSampling='Y',target.T_OrderSampleSampling, source.T_OrderSampleSampling),
target.T_OrderSampleSamplingDate = if(target.T_OrderSampleSampling='Y',target.T_OrderSampleSamplingDate, source.T_OrderSampleSamplingDate),
target.T_OrderSampleSamplingTime = if(target.T_OrderSampleSampling='Y',target.T_OrderSampleSamplingTime, source.T_OrderSampleSamplingTime),
target.T_OrderSampleSamplingUserID = if(target.T_OrderSampleSampling='Y',target.T_OrderSampleSamplingUserID, source.T_OrderSampleSamplingUserID),
target.T_OrderSampleReceive = if(target.T_OrderSampleReceive='Y',target.T_OrderSampleReceive, source.T_OrderSampleReceive),
target.T_OrderSampleReceiveDate = if(target.T_OrderSampleReceive='Y',target.T_OrderSampleReceiveDate, source.T_OrderSampleReceiveDate),
target.T_OrderSampleReceiveTime = if(target.T_OrderSampleReceive='Y',target.T_OrderSampleReceiveTime, source.T_OrderSampleReceiveTime),
target.T_OrderSampleReceiveUserID = if(target.T_OrderSampleReceive='Y',target.T_OrderSampleReceiveUserID, source.T_OrderSampleReceiveUserID),
target.T_OrderSampleVerification = if(target.T_OrderSampleVerification='Y',target.T_OrderSampleVerification, source.T_OrderSampleVerification),
target.T_OrderSampleVerificationDate =if(target.T_OrderSampleVerification='Y',target.T_OrderSampleVerificationDate, source.T_OrderSampleVerificationDate),
target.T_OrderSampleVerificationTime =if(source.T_OrderSampleVerification='Y',target.T_OrderSampleVerificationTime, source.T_OrderSampleVerificationTime),
target.T_OrderSampleVerificationUserID =if(source.T_OrderSampleVerification='Y',target.T_OrderSampleVerificationUserID, source.T_OrderSampleVerificationUserID),
target.T_OrderSampleProcessing = if(target.T_OrderSampleProcessing='Y',target.T_OrderSampleProcessing, source.T_OrderSampleProcessing),
target.T_OrderSampleProcessingDate= if(target.T_OrderSampleProcessing='Y',target.T_OrderSampleProcessingDate, source.T_OrderSampleProcessingDate),
target.T_OrderSampleProcessingTime= if(target.T_OrderSampleProcessing='Y',target.T_OrderSampleProcessingTime, source.T_OrderSampleProcessingTime),
target.T_OrderSampleProcessingUserID= if(target.T_OrderSampleProcessing='Y',target.T_OrderSampleProcessingUserID, source.T_OrderSampleProcessingUserID),
target.T_OrderSampleReceiveHandling =if(target.T_OrderSampleReceiveHandling='Y',target.T_OrderSampleReceiveHandling, source.T_OrderSampleReceiveHandling ),
target.T_OrderSampleReceiveHandlingDate =if(target.T_OrderSampleReceiveHandling='Y',target.T_OrderSampleReceiveHandlingDate, source.T_OrderSampleReceiveHandlingDate),
target.T_OrderSampleReceiveHandlingTime =if(target.T_OrderSampleReceiveHandling='Y',target.T_OrderSampleReceiveHandlingTime, source.T_OrderSampleReceiveHandlingTime),
target.T_OrderSampleReceiveHandlingUserID =if(target.T_OrderSampleReceiveHandling='Y',target.T_OrderSampleReceiveHandlingUserID, source.T_OrderSampleReceiveHandlingUserID),
target.T_OrderSampleHandling = if(target.T_OrderSampleHandling='Y',target.T_OrderSampleHandling, source.T_OrderSampleHandling),
target.T_OrderSampleHandlingDate = if(target.T_OrderSampleHandling='Y',target.T_OrderSampleHandlingDate, source.T_OrderSampleHandlingDate),
target.T_OrderSampleHandlingTime = if(target.T_OrderSampleHandling='Y',target.T_OrderSampleHandlingTime, source.T_OrderSampleHandlingTime),
target.T_OrderSampleHandlingUserID = if(target.T_OrderSampleHandling='Y',target.T_OrderSampleHandlingUserID, source.T_OrderSampleHandlingUserID),
target.T_OrderSampleWorklistReceive = source.T_OrderSampleWorklistReceive,
target.T_OrderSampleWorklistReceiveDatetime = source.T_OrderSampleWorklistReceiveDateTime,
target.T_OrderSampleWorklistReceiveUserID = source.T_OrderSampleWorklistReceiveUserID
";
$qry = $this->db->query($sql, [$sourceID]);
if (!$qry) {
echo json_encode(['status' => 'ERR', 'message' => print_r($this->db->error(), true)]);
exit;
}
$sql = "select T_OrderSampleT_OrderHeaderID, T_OrderSampleT_SampleTypeID
from t_ordersample where T_OrderSampleID=?";
$qry = $this->db->query($sql, array($sourceID));
if (!$qry) {
echo json_encode(['status' => 'ERR', 'message' => print_r($this->db->error(), true)]);
exit;
}
$rows = $qry->result_array();
if (count($rows) == 0) {
echo $this->db->last_query();
echo "No record";
exit;
}
$headerID = $rows[0]["T_OrderSampleT_OrderHeaderID"];
$sampleTypeID = $targetID;
$sql = "
update t_orderdetailaddon
join t_orderdetail on T_OrderDetailT_OrderHeaderID = ?
and T_OrderDetailAddOnT_OrderDetailID = T_OrderDetailID
and T_OrderDetailAddOnPreAnalytic <> 'Y'
join t_test on T_OrderDetailT_TestID = T_TestID
and T_TestT_SampleTypeID = ?
set T_OrderDetailAddOnPreAnalytic = 'Y'
, T_OrderDetailAddOnPreAnalyticDate=now()";
$qry = $this->db->query($sql, array($headerID, $sampleTypeID));
if (!$qry) {
echo json_encode(['status' => 'ERR', 'message' => print_r($this->db->error(), true)]);
exit;
}
echo 'update OK';
}
public function confirm_fix_sample($labNo, $sampleTypeID, $sourceID)
{
$sql = "select *
from t_ordersample
join t_sampletype on T_OrderSampleT_SampleTypeID = T_SampleTypeID
join t_orderheader on T_OrderHeaderID = T_OrderSampleT_OrderHeaderID
where T_OrderSampleIsActive = 'Y'
and T_OrderHeaderLabNumber=?
and T_SampleTypeID = ?
and T_OrderSampleWorklistReceive <> 'Y'
and T_OrderSampleID <> ?
";
$qry = $this->db->query($sql, [$labNo, $sampleTypeID, $sourceID]);
if (!$qry) {
echo 'Error ' . $this->db->error()['message'] . ' | ' . $this->db->last_query();
exit;
}
$rows = $qry->result_array();
$target_ids = '0';
foreach ($rows as $r) {
$target_ids .= ',' . $r['T_OrderSampleID'];
}
$sql = "update t_ordersample target
join t_ordersample source on
target.T_OrderSampleID in ($target_ids)
and target.T_OrderSampleWorklistReceive = 'N'
and source.T_OrderSampleID = ?
set
target.T_OrderSampleSampling = if(target.T_OrderSampleSampling='Y',target.T_OrderSampleSampling, source.T_OrderSampleSampling),
target.T_OrderSampleSamplingDate = if(target.T_OrderSampleSampling='Y',target.T_OrderSampleSamplingDate, source.T_OrderSampleSamplingDate),
target.T_OrderSampleSamplingTime = if(target.T_OrderSampleSampling='Y',target.T_OrderSampleSamplingTime, source.T_OrderSampleSamplingTime),
target.T_OrderSampleSamplingUserID = if(target.T_OrderSampleSampling='Y',target.T_OrderSampleSamplingUserID, source.T_OrderSampleSamplingUserID),
target.T_OrderSampleReceive = if(target.T_OrderSampleReceive='Y',target.T_OrderSampleReceive, source.T_OrderSampleReceive),
target.T_OrderSampleReceiveDate = if(target.T_OrderSampleReceive='Y',target.T_OrderSampleReceiveDate, source.T_OrderSampleReceiveDate),
target.T_OrderSampleReceiveTime = if(target.T_OrderSampleReceive='Y',target.T_OrderSampleReceiveTime, source.T_OrderSampleReceiveTime),
target.T_OrderSampleReceiveUserID = if(target.T_OrderSampleReceive='Y',target.T_OrderSampleReceiveUserID, source.T_OrderSampleReceiveUserID),
target.T_OrderSampleVerification = if(target.T_OrderSampleVerification='Y',target.T_OrderSampleVerification, source.T_OrderSampleVerification),
target.T_OrderSampleVerificationDate =if(target.T_OrderSampleVerification='Y',target.T_OrderSampleVerificationDate, source.T_OrderSampleVerificationDate),
target.T_OrderSampleVerificationTime =if(source.T_OrderSampleVerification='Y',target.T_OrderSampleVerificationTime, source.T_OrderSampleVerificationTime),
target.T_OrderSampleVerificationUserID =if(source.T_OrderSampleVerification='Y',target.T_OrderSampleVerificationUserID, source.T_OrderSampleVerificationUserID),
target.T_OrderSampleProcessing = if(target.T_OrderSampleProcessing='Y',target.T_OrderSampleProcessing, source.T_OrderSampleProcessing),
target.T_OrderSampleProcessingDate= if(target.T_OrderSampleProcessing='Y',target.T_OrderSampleProcessingDate, source.T_OrderSampleProcessingDate),
target.T_OrderSampleProcessingTime= if(target.T_OrderSampleProcessing='Y',target.T_OrderSampleProcessingTime, source.T_OrderSampleProcessingTime),
target.T_OrderSampleProcessingUserID= if(target.T_OrderSampleProcessing='Y',target.T_OrderSampleProcessingUserID, source.T_OrderSampleProcessingUserID),
target.T_OrderSampleReceiveHandling =if(target.T_OrderSampleReceiveHandling='Y',target.T_OrderSampleReceiveHandling, source.T_OrderSampleReceiveHandling ),
target.T_OrderSampleReceiveHandlingDate =if(target.T_OrderSampleReceiveHandling='Y',target.T_OrderSampleReceiveHandlingDate, source.T_OrderSampleReceiveHandlingDate),
target.T_OrderSampleReceiveHandlingTime =if(target.T_OrderSampleReceiveHandling='Y',target.T_OrderSampleReceiveHandlingTime, source.T_OrderSampleReceiveHandlingTime),
target.T_OrderSampleReceiveHandlingUserID =if(target.T_OrderSampleReceiveHandling='Y',target.T_OrderSampleReceiveHandlingUserID, source.T_OrderSampleReceiveHandlingUserID),
target.T_OrderSampleHandling = if(target.T_OrderSampleHandling='Y',target.T_OrderSampleHandling, source.T_OrderSampleHandling),
target.T_OrderSampleHandlingDate = if(target.T_OrderSampleHandling='Y',target.T_OrderSampleHandlingDate, source.T_OrderSampleHandlingDate),
target.T_OrderSampleHandlingTime = if(target.T_OrderSampleHandling='Y',target.T_OrderSampleHandlingTime, source.T_OrderSampleHandlingTime),
target.T_OrderSampleHandlingUserID = if(target.T_OrderSampleHandling='Y',target.T_OrderSampleHandlingUserID, source.T_OrderSampleHandlingUserID),
target.T_OrderSampleWorklistReceive = source.T_OrderSampleWorklistReceive,
target.T_OrderSampleWorklistReceiveDatetime = source.T_OrderSampleWorklistReceiveDateTime,
target.T_OrderSampleWorklistReceiveUserID = source.T_OrderSampleWorklistReceiveUserID
";
$qry = $this->db->query($sql, [$sourceID]);
if (!$qry) {
echo json_encode(['status' => 'ERR', 'message' => print_r($this->db->error(), true)]);
exit;
}
$sql = "select *
from t_ordersample
join t_sampletype on T_OrderSampleT_SampleTypeID = T_SampleTypeID
join t_orderheader on T_OrderHeaderID = T_OrderSampleT_OrderHeaderID
where T_OrderSampleIsActive = 'Y'
and T_OrderHeaderLabNumber= ?
and T_SampleTypeID = ?
";
$qry = $this->db->query($sql, [$labNo, $sampleTypeID]);
if (!$qry) {
echo 'Error ' . $this->db->error()['message'] . ' | ' . $this->db->last_query();
exit;
}
$rows = $qry->result_array();
$target_header_ids = "0";
// echo "" . $this->db->last_query() . " ";
foreach ($rows as $r) {
$target_header_ids .= ',' . $r['T_OrderSampleT_OrderHeaderID'];
}
$sql = "
update t_orderdetailaddon
join t_orderdetail on T_OrderDetailT_OrderHeaderID in ( $target_header_ids )
and T_OrderDetailAddOnT_OrderDetailID = T_OrderDetailID
and T_OrderDetailAddOnPreAnalytic <> 'Y'
join t_test on T_OrderDetailT_TestID = T_TestID
and T_TestT_SampleTypeID = ?
set T_OrderDetailAddOnPreAnalytic = 'Y'
, T_OrderDetailAddOnPreAnalyticDate=now()";
$qry = $this->db->query($sql, array($sampleTypeID));
// echo "" . $this->db->last_query() . " ";
if (!$qry) {
echo json_encode(['status' => 'ERR', 'message' => print_r($this->db->error(), true)]);
exit;
}
echo 'update OK';
}
public function fix_sample_one($targetID, $sampleTypeID)
{
//get worklist receive terakhir
//one target
$sql = "select *
from t_ordersample
join t_sampletype on T_OrderSampleT_SampleTypeID = T_SampleTypeID
join t_orderheader on T_OrderHeaderID = T_OrderSampleT_OrderHeaderID
where T_OrderSampleIsActive = 'Y'
and T_OrderSampleID = ?
order by T_OrderSampleWorklistReceiveDatetime desc
limit 0,1";
$qry = $this->db->query($sql, [$targetID]);
if (!$qry) {
echo 'Error : ' . $this->db->error()['message'] . ' | ' . $this->db->last_query();
exit;
}
$rows = $qry->result_array();
if (count($rows) == 0) {
echo "Target Sample tidak ketemu : $targetID";
exit;
}
$labNo = $rows[0]["T_OrderHeaderLabNumber"];
$targetSampleType = $rows[0]["T_SampleTypeName"];
$sql = "select *
from t_ordersample
join t_sampletype on T_OrderSampleT_SampleTypeID = T_SampleTypeID
join t_orderheader on T_OrderHeaderID = T_OrderSampleT_OrderHeaderID
where T_OrderSampleIsActive = 'Y'
and T_OrderHeaderLabNumber=?
and T_SampleTypeID = ?
and T_OrderSampleWorklistReceive = 'Y'
order by T_OrderSampleWorklistReceiveDatetime desc
limit 0,1";
$qry = $this->db->query($sql, [$labNo, $sampleTypeID]);
if (!$qry) {
echo 'Error : ' . $this->db->error()['message'] . ' | ' . $this->db->last_query();
exit;
}
$rows = $qry->result_array();
if (count($rows) == 0) {
echo "Belum ada worklist receive utk sample type id $sampleTypeID";
exit;
}
$r = $rows[0];
$sourceID = $r['T_OrderSampleID'];
echo '';
echo "Update Status utk sample {$targetSampleType} - {$labNo}: \n";
echo "dari : " . $r["T_SampleTypeName"] . "\n";
echo "Worklist Receive : {$r['T_OrderSampleWorklistReceiveDatetime']}\n";
echo ' ';
echo "Confirm ";
}
public function fix_sample($labNo, $sampleTypeID)
{
//get worklist receive terakhir
$sql = "select *
from t_ordersample
join t_sampletype on T_OrderSampleT_SampleTypeID = T_SampleTypeID
join t_orderheader on T_OrderHeaderID = T_OrderSampleT_OrderHeaderID
where T_OrderSampleIsActive = 'Y'
and T_OrderHeaderLabNumber=?
and T_SampleTypeID = ?
and T_OrderSampleWorklistReceive = 'Y'
order by T_OrderSampleWorklistReceiveDatetime desc
limit 0,1";
$qry = $this->db->query($sql, [$labNo, $sampleTypeID]);
if (!$qry) {
echo 'Error : ' . $this->db->error()['message'] . ' | ' . $this->db->last_query();
exit;
}
$rows = $qry->result_array();
if (count($rows) == 0) {
echo "Belum ada worklist receive utk sample type id $sampleTypeID";
exit;
}
$r = $rows[0];
$sourceID = $r['T_OrderSampleID'];
echo '';
echo "Update Status utk sample {$r['T_SampleTypeName']} - {$labNo}: \n";
echo "Worklist Receive : {$r['T_OrderSampleWorklistReceiveDatetime']}\n";
echo ' ';
echo "Confirm ";
}
public function update_order_sample($targetID, $sourceID)
{
$sql = "update t_ordersample target
join t_ordersample source on
target.T_OrderSampleID = ?
and target.T_OrderSampleWorklistReceive = 'N'
and source.T_OrderSampleID = ?
set
target.T_OrderSampleSampling = if(target.T_OrderSampleSampling='Y',target.T_OrderSampleSampling, source.T_OrderSampleSampling),
target.T_OrderSampleSamplingDate = if(target.T_OrderSampleSampling='Y',target.T_OrderSampleSamplingDate, source.T_OrderSampleSamplingDate),
target.T_OrderSampleSamplingTime = if(target.T_OrderSampleSampling='Y',target.T_OrderSampleSamplingTime, source.T_OrderSampleSamplingTime),
target.T_OrderSampleSamplingUserID = if(target.T_OrderSampleSampling='Y',target.T_OrderSampleSamplingUserID, source.T_OrderSampleSamplingUserID),
target.T_OrderSampleReceive = if(target.T_OrderSampleReceive='Y',target.T_OrderSampleReceive, source.T_OrderSampleReceive),
target.T_OrderSampleReceiveDate = if(target.T_OrderSampleReceive='Y',target.T_OrderSampleReceiveDate, source.T_OrderSampleReceiveDate),
target.T_OrderSampleReceiveTime = if(target.T_OrderSampleReceive='Y',target.T_OrderSampleReceiveTime, source.T_OrderSampleReceiveTime),
target.T_OrderSampleReceiveUserID = if(target.T_OrderSampleReceive='Y',target.T_OrderSampleReceiveUserID, source.T_OrderSampleReceiveUserID),
target.T_OrderSampleVerification = if(target.T_OrderSampleVerification='Y',target.T_OrderSampleVerification, source.T_OrderSampleVerification),
target.T_OrderSampleVerificationDate =if(target.T_OrderSampleVerification='Y',target.T_OrderSampleVerificationDate, source.T_OrderSampleVerificationDate),
target.T_OrderSampleVerificationTime =if(source.T_OrderSampleVerification='Y',target.T_OrderSampleVerificationTime, source.T_OrderSampleVerificationTime),
target.T_OrderSampleVerificationUserID =if(source.T_OrderSampleVerification='Y',target.T_OrderSampleVerificationUserID, source.T_OrderSampleVerificationUserID),
target.T_OrderSampleProcessing = if(target.T_OrderSampleProcessing='Y',target.T_OrderSampleProcessing, source.T_OrderSampleProcessing),
target.T_OrderSampleProcessingDate= if(target.T_OrderSampleProcessing='Y',target.T_OrderSampleProcessingDate, source.T_OrderSampleProcessingDate),
target.T_OrderSampleProcessingTime= if(target.T_OrderSampleProcessing='Y',target.T_OrderSampleProcessingTime, source.T_OrderSampleProcessingTime),
target.T_OrderSampleProcessingUserID= if(target.T_OrderSampleProcessing='Y',target.T_OrderSampleProcessingUserID, source.T_OrderSampleProcessingUserID),
target.T_OrderSampleReceiveHandling =if(target.T_OrderSampleReceiveHandling='Y',target.T_OrderSampleReceiveHandling, source.T_OrderSampleReceiveHandling ),
target.T_OrderSampleReceiveHandlingDate =if(target.T_OrderSampleReceiveHandling='Y',target.T_OrderSampleReceiveHandlingDate, source.T_OrderSampleReceiveHandlingDate),
target.T_OrderSampleReceiveHandlingTime =if(target.T_OrderSampleReceiveHandling='Y',target.T_OrderSampleReceiveHandlingTime, source.T_OrderSampleReceiveHandlingTime),
target.T_OrderSampleReceiveHandlingUserID =if(target.T_OrderSampleReceiveHandling='Y',target.T_OrderSampleReceiveHandlingUserID, source.T_OrderSampleReceiveHandlingUserID),
target.T_OrderSampleHandling = if(target.T_OrderSampleHandling='Y',target.T_OrderSampleHandling, source.T_OrderSampleHandling),
target.T_OrderSampleHandlingDate = if(target.T_OrderSampleHandling='Y',target.T_OrderSampleHandlingDate, source.T_OrderSampleHandlingDate),
target.T_OrderSampleHandlingTime = if(target.T_OrderSampleHandling='Y',target.T_OrderSampleHandlingTime, source.T_OrderSampleHandlingTime),
target.T_OrderSampleHandlingUserID = if(target.T_OrderSampleHandling='Y',target.T_OrderSampleHandlingUserID, source.T_OrderSampleHandlingUserID),
target.T_OrderSampleWorklistReceive = source.T_OrderSampleWorklistReceive,
target.T_OrderSampleWorklistReceiveDatetime = source.T_OrderSampleWorklistReceiveDateTime,
target.T_OrderSampleWorklistReceiveUserID = source.T_OrderSampleWorklistReceiveUserID
";
$qry = $this->db->query($sql, [$targetID, $sourceID]);
if (!$qry) {
echo json_encode(['status' => 'ERR', 'message' => print_r($this->db->error(), true)]);
exit;
}
}
public function id($order)
{
echo '';
$sql = 'select t_orderheader.* from t_orderheader join t_orderheaderaddon on T_OrderHeaderID = T_OrderHeaderAddOnT_OrderHeaderID
where T_OrderHeaderLabNumber like ? or T_OrderHeaderAddonLabNumberOrigin like ?';
$qry = $this->db->query($sql, ['%' . $order . '%', "%{$order}%"]);
if (!$qry) {
echo "ERR : \n";
print_r($this->db->error());
exit;
}
$rows = $qry->result_array();
foreach ($rows as $r) {
echo "{$r['T_OrderHeaderID']}\t{$r['T_OrderHeaderDate']}\t{$r['T_OrderHeaderLabNumber']}\n";
}
}
public function preanalytic($headerID)
{
$sql = "select *
from t_orderdetailaddon
join t_orderdetail on T_OrderDetailID = T_OrderDetailAddOnT_OrderDetailID and T_OrderDetailIsActive = 'Y'
and T_OrderDetailAddOnIsActive = 'Y' and T_OrderDetailT_OrderHeaderID = ?";
$qry = $this->db->query($sql, [$headerID]);
if (!$qry) {
echo "ERR : \n";
print_r($this->db->error());
exit;
}
echo "";
$rows = $qry->result_array();
echo "T_OrderDetailID\tT_OrderDetailT_TestName\tT_OrderDetailAddOnPreAnalytic\tT_OrderDetailAddOnPreAnalyticDate\n";
foreach ($rows as $r) {
echo "{$r['T_OrderDetailID']}\t{$r['T_OrderDetailT_TestName']}\t{$r['T_OrderDetailAddOnPreAnalytic']}\t{$r['T_OrderDetailAddOnPreAnalyticDate']}\n";
}
}
public function pre_copy_from_to($fromID, $toID)
{
$sql = 'update
t_orderdetailaddon a
join t_orderdetailaddon b on a.T_OrderDetailAddOnT_OrderDetailID = ?
and b.T_OrderDetailAddOnT_OrderDetailID = ?
set b.T_OrderDetailAddOnPreAnalytic = a.T_OrderDetailAddOnPreAnalytic ,
b.T_OrderDetailAddOnPreAnalyticDate = a.T_OrderDetailAddOnPreAnalyticDate
';
$qry = $this->db->query($sql, [$fromID, $toID]);
echo $this->db->last_query() . "\n";
if (!$qry) {
echo "ERR : \n";
print_r($this->db->error());
exit;
}
echo 'Pre Analytic Update';
}
public function cek_kuning($headerID)
{
$sql = "select a.T_OrderSampleWorklistReceive , b.T_OrderSampleWorklistReceive bRcv,
a.T_OrderSampleWorklistReceiveDatetime, b.T_OrderSampleWorklistReceiveDatetime bDate,
a.T_OrderSampleWorklistReceiveUserID, b.T_OrderSampleWorklistReceiveUserID bUser
from t_ordersample a
join t_ordersample b on a.T_OrderSampleT_OrderHeaderID = b.T_OrderSampleT_OrderHeaderID
and a.T_OrderSampleBarcode like '%SK%' and b.T_OrderSampleBarcode like '%SP%' and b.T_OrderSampleWorklistReceive = 'Y'
and a.T_OrderSampleIsActive = 'Y' and b.T_OrderSampleIsActive = 'Y'
and a.T_OrderSampleT_OrderHeaderID = ?";
$qry = $this->db->query($sql, [$headerID]);
if (!$qry) {
echo "ERR : \n";
print_r($this->db->error());
exit;
}
$rows = $qry->result_array();
print_r($rows);
}
public function update_kuning($headerID)
{
$sql = "update t_ordersample a
join t_ordersample b on a.T_OrderSampleT_OrderHeaderID = b.T_OrderSampleT_OrderHeaderID
and a.T_OrderSampleBarcode like '%SK%' and b.T_OrderSampleBarcode like '%SP%' and b.T_OrderSampleWorklistReceive = 'Y'
and a.T_OrderSampleIsActive = 'Y' and b.T_OrderSampleIsActive = 'Y'
and a.T_OrderSampleT_OrderHeaderID = ?
set
a.T_OrderSampleWorklistReceive = b.T_OrderSampleWorklistReceive ,
a.T_OrderSampleWorklistReceiveDatetime = b.T_OrderSampleWorklistReceiveDatetime ,
a.T_OrderSampleWorklistReceiveUserID = b.T_OrderSampleWorklistReceiveUserID
";
$qry = $this->db->query($sql, [$headerID]);
if (!$qry) {
echo "ERR : \n";
print_r($this->db->error());
exit;
}
echo 'Serum Kuning di update';
}
}