fix result visit#, fix send to TD port

This commit is contained in:
mikael-zakaria 2025-02-06 07:39:17 +08:00
parent 53fd11eb45
commit 839e31af63
7 changed files with 22 additions and 16 deletions

View File

@ -149,16 +149,18 @@ class API_Requests extends ResourceController {
if($loc == "PBMC Bali") {
$loc = "PADMA"; $doc = "PBDPS";
$time = $time->setTimezone('Asia/Shanghai');
$reqdate= date_format($time, 'YmdHi');
$reqdate= date_format($time, 'YmdHi');
$port = "8101";
} else {
$loc = "PBSBY"; $doc = "PBSBY";
$time = $time->setTimezone('Asia/Jakarta');
$reqdate= date_format($time, 'YmdHi');
$port = "8201";
}
$orm = "MSH|^~\&|PBMC|TM|TDNL||||ORM^O01^|||2.3||||\r";
$orm .= "PID|1||$patnumber^^^^PATNUMBER||$firstname^$lastname^^^^^L||$dob|$sex||^|^^||$phone^^TELEPHON||||^||||||||||||||||\r";
$orm .= "PV1|||$loc^^^||||$doc|$doc|||||||||||$hosp|||||||||||||||||||||||||$reqdate||||||||||\r";
$orm .= "PV1|||$loc^^^||||$doc|$doc||||||||||||||||||||||||||||||||||||$reqdate||||||||||\r";
$sql = "select t.TESTSTATUS, m.LISCODE from cmod.dbo.CM_TM_TESTS t
left join cmod.dbo.CM_DICT_MAPPINGS m on m.HISCODE=t.HISCODE
@ -172,6 +174,7 @@ class API_Requests extends ResourceController {
if($liscode != '') {
if($status!=1 || $status !=2) {$status="NW";} else {$status="CA";}
$orm .= "ORC|$status|$reffid||$reffid|||^^^$reqdate|||||$doc|$loc||$reqdate|||||||||\r";
if($i==1) { $orm .= "NTE|0||$hosp|\r"; }
$orm .= "OBR|$i|||$liscode|||||||R|||||$doc|||||||||||||||||||||||||\r";
$i++;
if($liscode=="EGFR") {
@ -182,7 +185,7 @@ class API_Requests extends ResourceController {
//echo "$orm";
//sendHL7Message($host, $port, $message, $timeout = 5);
$this->sendHL7Message( "localhost", "8101", $orm, $timeout = 5);
$this->sendHL7Message( "localhost", $port, $orm, $timeout = 5);
//$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
}

View File

@ -8,7 +8,7 @@ class API_Results extends ResourceController {
public function create_json($accessnumber) {
$db = \Config\Database::connect();
$sql = "select r.HOSTORDERNUMBER, r.SP_HOSPNUMBER, cr.LOC, cr.COMPANY, cr.AGENT, cr.VISITDESC, cr.VISITTYPE,
$sql = "select r.HOSTORDERNUMBER, r.SP_HOSPNUMBER, cr.REQNUMBER, cr.LOC, cr.COMPANY, cr.AGENT, cr.VISITDESC, cr.VISITTYPE,
p.PATNUMBER, p.NAME, p.FIRSTNAME, p.BIRTHDATE, p.SEX, p.TELEPHON, r.COLLECTIONDATE, cr.AGENT, cr.DOC, cr.BW, cr.BH
from SP_REQUESTS r
left join cmod.dbo.CM_TM_REQUESTS cr on cr.REFFID=r.HOSTORDERNUMBER
@ -17,13 +17,13 @@ where r.SP_ACCESSNUMBER='$accessnumber'";
$query = $db->query($sql);
$results = $query->getResultArray();
$visitnumber = $results[0]['SP_HOSPNUMBER'];
$visitnumber = $results[0]['REQNUMBER'];
$reffid = $results[0]['HOSTORDERNUMBER'];
$location = $results[0]['LOC'];
$payer_name = $results[0]['AGENT'];
$company = $results[0]['COMPANY'];
$createdt = gmdate('Y-m-d\TH:i:s.v\Z');
$patnumber = substr($results[0]['PATNUMBER'],-8);
$patnumber = substr($results[0]['PATNUMBER'],-9);
$firstname = $results[0]['FIRSTNAME'];
$lastname = $results[0]['NAME'];
$dob = $results[0]['BIRTHDATE'];
@ -45,6 +45,7 @@ where r.SP_ACCESSNUMBER='$accessnumber'";
"created" => "$createdt",
"company_name" => $company,
"branch" => $location,
"visit_number" => $visitnumber,
"patient" => [
"rm_number" => $patnumber,
"patient_first_name" => $firstname,
@ -147,9 +148,10 @@ where r.ACCESSNUMBER='$accessnumber' ORDER BY t.TESTORDER";
}
public function results_send($accessnumber) {
$TM_url = "https://api-transmedic1.transmedic.co.id/api/webhook/lis";
$TMBali_bearerToken = file_get_contents('tokens/pbmc_sby.txt');
$TMSby_bearerToken = file_get_contents('tokens/pbmc_dps.txt');
//$TM_url = "https://api-transmedic1.transmedic.co.id/api/webhook/lis";
$TM_url = "http://10.10.12.90:8001/api/webhook/lis";
$TMBali_bearerToken = file_get_contents('tokens/pbmc_dps.txt');
$TMSby_bearerToken = file_get_contents('tokens/pbmc_sby.txt');
$client = \Config\Services::curlrequest();
@ -157,16 +159,13 @@ where r.ACCESSNUMBER='$accessnumber' ORDER BY t.TESTORDER";
$location = $json['branch'];
if($location == 'PBMC Surabaya') { $token = $TMSby_bearerToken; }
else { $token = $TMBali_bearerToken; }
//return $this->respond($json,200);
//print_r(json_encode($json));
try {
$response = $client->request('POST', $TM_url, [
"headers" => [
"Content-Type" => "application/json",
"Authorization" => "Bearer $token",
"AppCode" => "2"
"appCode" => "2"
],
"body" => json_encode($json),
"verify" => false
@ -179,6 +178,7 @@ where r.ACCESSNUMBER='$accessnumber' ORDER BY t.TESTORDER";
}
} catch (\Exception $e) {
echo "<pre>$token \n".json_encode($json)."\n";
echo "Error: " . $e->getMessage();
log_message('error', 'API request exception: ' . $e->getMessage());
}

View File

@ -4,7 +4,8 @@ namespace App\Controllers;
class Auths extends BaseController {
public function login() {
$TM_url = "https://api-transmedic1.transmedic.co.id/api/token/create";
//$TM_url = "https://api-transmedic1.transmedic.co.id/api/token/create";
$TM_url = "http://10.10.12.90:8001/api/token/create";
//$TM_url = "http://cmod-rest.local/tests";
$fileSBY = "tokens/pbmc_sby.txt";
$fileDPS = "tokens/pbmc_dps.txt";

View File

@ -0,0 +1 @@
3527|eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOm51bGwsImF1ZCI6IjEwLjEwLjEyLjkwOjgwMDEiLCJpYXQiOjE3Mzg3MzMwODgsImV4cCI6MTczODgxOTQ4OCwic3ViIjpudWxsLCJqdGkiOiI3MWVhZjJkNS1jZmJmLTRmMDktOWYwZi05M2E4MzEzNTY1OGMiLCJkYXRhIjp7InVzZXJuYW1lIjoicGJtY19iYWxpIiwicGFzc3dvcmQiOiJKOGUyOVhqTG1EQ0Z1UW5rIn19.9G_auRgX_IC-Oh43wFaIWlSaaG4qFfs43tGrs_yALwk

View File

@ -1 +1 @@
4484|eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOm51bGwsImF1ZCI6ImFwaS10cmFuc21lZGljMS50cmFuc21lZGljLmNvLmlkIiwiaWF0IjoxNzM4NTYxMTQwLCJleHAiOjE3Mzg2NDc1NDAsInN1YiI6bnVsbCwianRpIjoiN2Q3YTA3MzItMzg3Ny00ZmVjLThjOWYtMWVmYWZmODgwNmU4IiwiZGF0YSI6eyJ1c2VybmFtZSI6InBibWNfYmFsaSIsInBhc3N3b3JkIjoiSjhlMjlYakxtRENGdVFuayJ9fQ.HQAuZIBYDpYgPdO8U69m5O8n254DrularsnulFfVzTQ
3638|eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOm51bGwsImF1ZCI6IjEwLjEwLjEyLjkwOjgwMDEiLCJpYXQiOjE3Mzg3Nzc0OTEsImV4cCI6MTczODg2Mzg5MSwic3ViIjpudWxsLCJqdGkiOiJlZGUzNzI1NS0yNzE0LTRkNWQtYjlkMS1kZDJlN2NjMjQwZDUiLCJkYXRhIjp7InVzZXJuYW1lIjoicGJtY19iYWxpIiwicGFzc3dvcmQiOiJKOGUyOVhqTG1EQ0Z1UW5rIn19.yLiEfVfdvERzFGBNO2ySpI2kpQowtvdbcbQyR_Q9aa4

View File

@ -0,0 +1 @@
3526|eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOm51bGwsImF1ZCI6IjEwLjEwLjEyLjkwOjgwMDEiLCJpYXQiOjE3Mzg3MzMwODcsImV4cCI6MTczODgxOTQ4Nywic3ViIjpudWxsLCJqdGkiOiJhOTE5MDIyOS02ZTc5LTRhZjEtYmIxZC0yMGM3ZDE2ZTYyNzMiLCJkYXRhIjp7InVzZXJuYW1lIjoicGJtY19zdXJhYmF5YSIsInBhc3N3b3JkIjoicGdjV2Zkd1gzcUV0OXphQyJ9fQ.1L0Icdy2m-PEExWqnirPn5FIvXBjzLLYK9y1OgkfZuI

View File

@ -1 +1 @@
4483|eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOm51bGwsImF1ZCI6ImFwaS10cmFuc21lZGljMS50cmFuc21lZGljLmNvLmlkIiwiaWF0IjoxNzM4NTYxMTM5LCJleHAiOjE3Mzg2NDc1MzksInN1YiI6bnVsbCwianRpIjoiYTgxMWIzZjktNTRlNC00MzI0LWIyOGUtN2IwZmZjOTQ3YWY3IiwiZGF0YSI6eyJ1c2VybmFtZSI6InBibWNfc3VyYWJheWEiLCJwYXNzd29yZCI6InBnY1dmZHdYM3FFdDl6YUMifX0.M6dbVUv0SxFReWtFNUa2JHPt85Qaq2zO0es7B-YmNaM
3637|eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOm51bGwsImF1ZCI6IjEwLjEwLjEyLjkwOjgwMDEiLCJpYXQiOjE3Mzg3Nzc0OTAsImV4cCI6MTczODg2Mzg5MCwic3ViIjpudWxsLCJqdGkiOiJmZjE5YmY0MS05ZmY4LTRiZTYtYjBjYS0xMjk5OWQ2NGJiMzMiLCJkYXRhIjp7InVzZXJuYW1lIjoicGJtY19zdXJhYmF5YSIsInBhc3N3b3JkIjoicGdjV2Zkd1gzcUV0OXphQyJ9fQ.pgE6ehnVn8kF9LxnnAW_OAXHyT-RVTMajHySvgJ7al0