db_one = $this->load->database("onedev", true); } function fpp($fppNo) { $sql = "call sp_itf_result_brn(?)"; $qry = $this->db->query($sql, [$fppNo]); if (!$qry) { echo json_encode(["status" => "ERR", "message" => "sp_itf_result_brn |" . $this->db->error()["message"]]); exit; } echo json_encode(["status" => "OK", "message" => ""]); } function get_orderdetail_id($orderID, $instrumentID, $assay) { $sql = "select T_OrderDetailID, m_instrumentassay.* from t_orderdetail join t_test on T_OrderDetailT_OrderHeaderID = ? and T_OrderDetailIsActive = 'Y' and T_TestID = T_OrderDetailT_TestID join m_instrumentassay on M_InstrumentAssayNat_instrumentID = ? and M_InstrumentAssayNat_TestID = T_TestNat_TestID and M_InstrumentAssayIsActive = 'Y' and M_InstrumentAssayCode = ?"; $qry = $this->db->query($sql, [$orderID, $instrumentID, $assay]); if (!$qry) { echo json_encode(["status" => "ERR", "message" => "Get itf_result |" . $this->db->error()["message"]]); exit; } $rows = $qry->result_array(); return $rows; } function raw() { $param = $this->sys_input; try { $instrumentID = $param["instrumentID"]; $data = $param["data"]; $sql = "insert into itf_raw(itf_RawNat_InstrumentID,itf_RawData) values(?,?)"; $this->db_one->query($sql, array($instrumentID, base64_decode($data))); echo json_encode( array("status" => "OK", "id" => $this->db_one->insert_id(), "message" => "") ); } catch (exception $e) { echo json_encode( array("status" => "ERR", "id" => 0, "message" => $e . message()) ); } } function result() { $param = $this->sys_input; try { $instrumentID = $param["instrumentID"]; $rawID = $param["rawID"]; $result = $param["result"]; $noreg = $result["nolab"]; $len_noreg = 10; if (strlen($noreg) > $len_noreg) { $noreg = substr($noreg, 0, 10); } $sql = "insert into itf_result(itf_ResultNat_InstrumentID, itf_ResultItf_RawID, Itf_ResultNoreg, Itf_ResultInstrumentDate, itf_ResultKode, itf_ResultResult, itf_ResultFlag) values(?,?,?,?,?,?,?)"; foreach ($result["result"] as $r) { $tgl = $r["date"]; $px = $r["px"]; $result = $r["result"]; $this->db_one->query( $sql, array( $instrumentID, $rawID, $noreg, $tgl, $px, $result, $r["flag"] ) ); } if ($instrumentID == 1) { $sql = "call sp_itf_result_alinity(?)"; } else { $sql = "call sp_itf_result(?)"; } $this->db->query($sql, array($rawID)); // auto calc $s_noreg = substr($noreg, 0, 10); $sql = "select T_OrderHeaderID from t_orderheader where T_OrderHeaderLabNumber = ? "; $qry = $this->db->query($sql, array($s_noreg)); $order_id = 0; if ($qry) { $rows = $qry->result_array(); if (count($rows) > 0) { $order_id = $rows[0]["T_OrderHeaderID"]; $this->load->library("Resultcalc"); $this->resultcalc->auto($order_id); //file_put_contents("/xtmp/re-query.sql",$order_id); } } echo json_encode( array("status" => "OK", "message" => "") ); } catch (exception $e) { echo json_encode( array("status" => "ERR", "message" => $e->message()) ); } } function order() { $param = $this->sys_input; $sampleID = $param["sampleID"]; $instrumentID = $param["instrumentID"]; $sql = "call sp_itf_order_v2(?,?)"; try { $qry = $this->db->query($sql, array($instrumentID, $sampleID)); if (isset($qry->result_id->num_rows)) { $rows = $qry->result_array(); echo json_encode( array("status" => "OK", "order" => $rows) ); } else { echo json_encode( array("status" => "OK", "order" => array()) ); } } catch (exception $e) { echo json_encode( array("status" => "ERR", "message" => $e->message()) ); } } function update_order() { $param = $this->sys_input; $sampleID = $param["sampleID"]; $instrumentID = $param["instrumentID"]; $status = $param["status"]; $sql = "call sp_itf_order_update(?,?,?)"; try { $qry = $this->db->query($sql, array($instrumentID, $sampleID, $status)); if ($qry) { echo json_encode( array("status" => "OK", "message" => "") ); } else { $msg = print_r($this->db->error(), true); echo json_encode( array("status" => "OK", "message" => $msg) ); } } catch (exception $e) { echo json_encode( array("status" => "ERR", "message" => $e->message()) ); } } function reset_order() { $param = $this->sys_input; $sampleID = $param["sampleID"]; $instrumentID = $param["instrumentID"]; $status = $param["status"]; $sql = "call sp_itf_order_reset(?,?,?)"; try { $qry = $this->db->query($sql, array($instrumentID, $sampleID, $status)); if ($qry) { echo json_encode( array("status" => "OK", "message" => "") ); } else { $msg = print_r($this->db->error(), true); echo json_encode( array("status" => "OK", "message" => $msg) ); } } catch (exception $e) { echo json_encode( array("status" => "ERR", "message" => $e->message()) ); } } }