sys_input; $xtype = $param['type']; //$user['ip'] = $_SERVER['REMOTE_ADDR']; //$user['agent'] = $_SERVER['HTTP_USER_AGENT']; if($xtype){ $code = $this->generate_string($permitted_chars, 10); $token = str_shuffle(MD5(microtime())); try { $sql = "update token_mcu_api SET TokenMcuApiIsActive = 'N' WHERE TokenMcuApiType = ?"; $this->db->query($sql, array($xtype)); $sql = "insert into token_mcu_api(TokenMcuApiType,TokenMcuApiToken,TokenMcuApiCreated) values(?,?,NOW())"; $this->db->query($sql, array($xtype,$token)); echo json_encode( array("status" => "OK" , "data" => $token , "message" => "") ); } catch(exception $e) { echo json_encode( array("status" => "ERR" , "id" => 0, "message" => $e.message() ) ); } } else{ echo json_encode( array("status" => "ERR" , "data" => '' , "message" => "Belum ada parameter type") ); } } function check(){ $param = $this->sys_input; $no_reg = $param['no_reg']; $patient = []; $test = []; $status_ready = "N"; $sql= " SELECT * FROM t_orderheader JOIN m_patient ON T_OrderHeaderM_PatientID = M_PatientID WHERE T_OrderHeaderIsActive = 'Y' AND T_OrderHeaderLabNumberExt = '{$no_reg}' LIMIT 1 "; $get_nolab = $this->db->query($sql)->row_array(); if($get_nolab){ $patient['noreg'] = $get_nolab['T_OrderHeaderLabNumber']; $patient['noreg_ext'] = $get_nolab['T_OrderHeaderLabNumberExt']; $patient['name'] = $get_nolab['M_PatientName']; $sql= " SELECT T_OrderDetailT_TestSasCode as test_code, T_OrderDetailT_TestName as test_name, IF(ISNULL(So_ResultEntryID),'N','Y') as status_ready FROM t_orderheader JOIN t_orderdetail ON T_OrderDetailT_OrderHeaderID = T_OrderHeaderID AND T_OrderDetailT_TestID IN (2562,2566,2563,2584,2564,3327,2565,2567,2568,2598,3340,3342) AND T_OrderDetailIsActive = 'Y' JOIN so_resultentry ON So_ResultEntryT_OrderHeaderID = So_ResultEntryT_OrderHeaderID AND So_ResultEntryT_OrderDetailID = T_OrderDetailID AND So_ResultEntryIsActive = 'Y' WHERE T_OrderHeaderLabNumber = '{$patient['noreg']}' AND T_OrderHeaderIsActive = 'Y' LIMIT 1"; $check_ready = $this->db->query($sql)->result_array(); if($check_ready){ $status_ready = "Y"; } $sql= " SELECT T_OrderDetailT_TestSasCode as test_code, T_OrderDetailT_TestName as test_name FROM t_orderheader JOIN t_orderdetail ON T_OrderDetailT_OrderHeaderID = T_OrderHeaderID AND T_OrderDetailT_TestID IN (2562,2566,2563,2584,2564,3327,2565,2567,2568,2598,3340,3342) AND T_OrderDetailIsActive = 'Y' WHERE T_OrderHeaderLabNumber = '{$patient['noreg']}' AND T_OrderHeaderIsActive = 'Y' GROUP BY T_OrderDetailID"; $get_test = $this->db->query($sql)->result_array(); if($get_test){ $test = $get_test; } echo json_encode( array("status" => "OK" , "ready" => $status_ready, "patient"=>$patient, "test"=>$test, "message" => "") ); }else{ echo json_encode( array("status" => "OK" , "ready" => $status_ready, "patient"=>$patient, "test"=>$test , "message" => "Belum melakukan registrasi") ); } } function generate_string($input, $strength = 4) { $input_length = strlen($input); $random_string = ''; for($i = 0; $i < $strength; $i++) { $random_character = $input[mt_rand(0, $input_length - 1)]; $random_string .= $random_character; } return $random_string; } function save(){ $prm = $this->sys_input; $userid = -1; $rst = array(); $sql ="SELECT * FROM token_mcu_api WHERE TokenMcuApiType = 'FISIK' AND TokenMcuApiToken = '{$prm['token']}' AND TokenMcuApiIsActive = 'Y'"; //echo $sql; $check_token = $this->db->query($sql)->row_array(); if($check_token){ $sql= " SELECT * FROM t_orderheader JOIN t_orderdetail ON T_OrderDetailT_OrderHeaderID = T_OrderHeaderID AND T_OrderDetailT_TestID IN (2562,2566,2563,2584,2564,3327,2565,2567,2568,2598,3340,3342) AND T_OrderDetailIsActive = 'Y' JOIN so_resultentry ON So_ResultEntryT_OrderHeaderID = So_ResultEntryT_OrderHeaderID AND So_ResultEntryT_OrderDetailID = T_OrderDetailID AND So_ResultEntryIsActive = 'Y' WHERE T_OrderHeaderLabNumberExt = '{$prm['trx_numbering']}' LIMIT 1 "; $data_row = $this->db->query($sql)->row_array(); if($prm['template'] == 'UMUM' || $prm['template'] == 'UMUM_K3' || $prm['template'] == 'UMUM_KONSUL'){ $riwayats = str_replace('\'', '\\\'', json_encode($prm["riwayats"],JSON_UNESCAPED_UNICODE | JSON_HEX_APOS | JSON_HEX_QUOT)); $riwayats = addslashes(str_replace('\"', '\\\"',$riwayats)); $sql = "INSERT INTO so_resultentry_fisik_umum ( So_ResultEntryFisikUmumSo_ResultEntryID, So_ResultEntryFisikUmumM_LangID, So_ResultEntryFisikUmumType, So_ResultEntryFisikUmumDetails, So_ResultEntryFisikUmumUserID, So_ResultEntryFisikUmumCreated ) VALUES( {$data_row['So_ResultEntryID']}, {$prm['language_id']}, 'riwayat', '{$riwayats}', {$userid}, NOW() ) ON DUPLICATE KEY UPDATE So_ResultEntryFisikUmumDetails = '{$riwayats}', So_ResultEntryFisikUmumUserID = {$userid} "; $rst = $this->db->query($sql); //echo $sql; $fisiks = str_replace('\'', '\\\'', json_encode($prm["fisiks"],JSON_UNESCAPED_UNICODE | JSON_HEX_APOS | JSON_HEX_QUOT)); $fisiks = addslashes(str_replace('\"', '\\\"',$fisiks)); $sql = "INSERT INTO so_resultentry_fisik_umum ( So_ResultEntryFisikUmumSo_ResultEntryID, So_ResultEntryFisikUmumM_LangID, So_ResultEntryFisikUmumType, So_ResultEntryFisikUmumDetails, So_ResultEntryFisikUmumUserID, So_ResultEntryFisikUmumCreated ) VALUES( {$data_row['So_ResultEntryID']}, {$prm['language_id']}, 'fisik', '{$fisiks}', {$userid}, NOW() ) ON DUPLICATE KEY UPDATE So_ResultEntryFisikUmumDetails = '{$fisiks}', So_ResultEntryFisikUmumUserID = {$userid} "; $rst = $this->db->query($sql); //echo $sql; $umum_saran = $prm['umum_saran']; $sql = "INSERT INTO so_resultentry_fisik_umum ( So_ResultEntryFisikUmumSo_ResultEntryID, So_ResultEntryFisikUmumM_LangID, So_ResultEntryFisikUmumType, So_ResultEntryFisikUmumDetails, So_ResultEntryFisikUmumUserID, So_ResultEntryFisikUmumCreated ) VALUES( {$data_row['So_ResultEntryID']}, {$prm['language_id']}, 'saran', '{$umum_saran}', {$userid}, NOW() ) ON DUPLICATE KEY UPDATE So_ResultEntryFisikUmumDetails = '{$umum_saran}', So_ResultEntryFisikUmumUserID = {$userid} "; //echo $sql; $rst = $this->db->query($sql); } if($prm['template'] == 'UMUM_K3'){ $k3s = str_replace('\'', '\\\'', json_encode($prm["k3s"],JSON_UNESCAPED_UNICODE | JSON_HEX_APOS | JSON_HEX_QUOT)); $k3s = addslashes(str_replace('\"', '\\\"',$k3s)); $sql = "INSERT INTO so_resultentry_fisik_umum ( So_ResultEntryFisikUmumSo_ResultEntryID, So_ResultEntryFisikUmumM_LangID, So_ResultEntryFisikUmumType, So_ResultEntryFisikUmumDetails, So_ResultEntryFisikUmumUserID, So_ResultEntryFisikUmumCreated ) VALUES( {$data_row['So_ResultEntryID']}, {$prm['language_id']}, 'k3', '{$k3s}', {$userid}, NOW() ) ON DUPLICATE KEY UPDATE So_ResultEntryFisikUmumDetails = '{$k3s}', So_ResultEntryFisikUmumUserID = {$userid} "; $rst = $this->db->query($sql); //echo $query; } if($prm['template'] == 'UMUM_KONSUL'){ $konsul = $prm['konsul']; foreach($konsul as $k => $v){ $sql = "INSERT INTO so_resultentry_fisik_umum ( So_ResultEntryFisikUmumSo_ResultEntryID, So_ResultEntryFisikUmumM_LangID, So_ResultEntryFisikUmumType, So_ResultEntryFisikUmumDetails, So_ResultEntryFisikUmumUserID, So_ResultEntryFisikUmumCreated ) VALUES( {$data_row['So_ResultEntryID']}, {$prm['language_id']}, '{$v['type']}', '{$v['result']}', {$userid}, NOW() ) ON DUPLICATE KEY UPDATE So_ResultEntryFisikUmumDetails = '{$v['result']}', So_ResultEntryFisikUmumUserID = {$userid} "; //echo $sql; $rst = $this->db->query($sql); } } echo json_encode( array("status" => "OK" , "data" => "", "message" => "") ); }else{ echo json_encode( array("status" => "ERR" , "data" => "", "message" => "Maaf token invalid") ); } } 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() ) ); } } }