2025-04-17 14:57:36 +08:00

89 lines
2.4 KiB
PHP

<?php
namespace App\Controllers;
use CodeIgniter\RESTful\ResourceController;
class API_Admin extends ResourceController {
public function __construct() {
}
public function HISRequests_index() {
$db = \Config\Database::connect();
$date1 = $this->request->getPost('date1');
$date2 = $this->request->getPost('date2');
$sql = "select r.SP_ACCESSNUMBER, r.HOSTORDERNUMBER, PATNUMBER=right(p.PATNUMBER,8), p.FIRSTNAME, p.NAME, tr.*,
STUFF(
( select ', '+ SP_TESTCODE from SP_TESTS
where SP_ACCESSNUMBER=r.SP_ACCESSNUMBER and DEPTH=0
FOR XML PATH('')
), 1, 1, ''
) AS TESTS
from cmod.dbo.CM_TM_REQUESTS tr
left join SP_REQUESTS r on r.HOSTORDERNUMBER=tr.REFFID
left join PATIENTS p on p.PATID=r.PATID
where tr.REQDATE between '".$date1."T00:00' and '".$date2."T23:59'
order by tr.REQDATE";
$query = $db->query($sql);
$results = $query->getResultArray();
return $this->respond([
'data' => $results
]);
}
public function HISMessages_index() {
$db = \Config\Database::connect();
$date1 = $this->request->getPost('date1');
$date2 = $this->request->getPost('date2');
$sql = "select LOGID, BODY, LOGDATE from cmod.dbo.CM_TM_LOGS where LOGDATE between '$date1 00:00' and '$date2 23:59'";
$query = $db->query($sql);
$results = $query->getResultArray();
return $this->respond([
'data' => $results
]);
}
public function resendJSON($logid) {
$db = \Config\Database::connect();
$sql = "select BODY from cmod.dbo.CM_TM_LOGS where LOGID='$logid'";
$query = $db->query($sql);
$results = $query->getResultArray();
$json = $results[0]['BODY'];
$headers = [ "Content-Type" => "application/json" ];
$method = "POST";
$message = [
"headers" => $headers,
"body" => $json
];
$url = base_url()."api/requests";
//echo "<pre>$url<br/>";
//print_r($message);
$this->sendjson($method, $url, $message);
}
public function sendjson( $method, $url, $message ) {
$client = \Config\Services::curlrequest();
try {
$response = $client->request($method, $url, $message);
if ($response->getStatusCode() == 200) {
print_r($response);
} else {
print_r($response);
}
} catch (\Exception $e) {
//echo "<pre> \n".json_encode($json)."\n";
echo "Error: " . $e->getMessage();
log_message('error', 'API request exception: ' . $e->getMessage());
}
}
}