use dicomserver

This commit is contained in:
Dr Masroor Ehsan 2025-01-19 10:10:18 +06:00
parent d37818b49f
commit 8e45f17f10

View File

@ -11,8 +11,11 @@ public function __construct(private readonly DicomServer $orthancHost) {}
public function getClient(): Client public function getClient(): Client
{ {
$endpoint = $this->orthancHost->rest_api_endpoint;
return new Client([ return new Client([
'base_uri' => config('pacs.api.endpoint'), 'base_uri' => $endpoint,
// 'base_uri' => config('pacs.api.endpoint'),
]); ]);
} }
@ -20,28 +23,28 @@ public function getStudyStatistics(string $study_id): array
{ {
$response = $this->getClient()->get('/studies/' . $study_id . '/statistics'); $response = $this->getClient()->get('/studies/' . $study_id . '/statistics');
return json_decode($response->getBody()->getContents(), true); return json_decode($response->getBody()->getContents(), true, 512, JSON_THROW_ON_ERROR);
} }
public function getServerStatistics(): array public function getServerStatistics(): array
{ {
$response = $this->getClient()->get('/statistics'); $response = $this->getClient()->get('/statistics');
return json_decode($response->getBody()->getContents(), true); return json_decode($response->getBody()->getContents(), true, 512, JSON_THROW_ON_ERROR);
} }
public function getStudySeries(string $study_id): array public function getStudySeries(string $study_id): array
{ {
$response = $this->getClient()->get('/studies/' . $study_id . '/series?expand'); $response = $this->getClient()->get('/studies/' . $study_id . '/series?expand');
return json_decode($response->getBody()->getContents(), true); return json_decode($response->getBody()->getContents(), true, 512, JSON_THROW_ON_ERROR);
} }
public function getStudyInstances(string $study_id): array public function getStudyInstances(string $study_id): array
{ {
$response = $this->getClient()->get('/studies/' . $study_id . '/instances?expand'); $response = $this->getClient()->get('/studies/' . $study_id . '/instances?expand');
return json_decode($response->getBody()->getContents(), true); return json_decode($response->getBody()->getContents(), true, 512, JSON_THROW_ON_ERROR);
} }
public function getStudyDetails(string $study_id): array public function getStudyDetails(string $study_id): array
@ -51,7 +54,7 @@ public function getStudyDetails(string $study_id): array
]; ];
$response = $this->getClient()->get('/studies/' . $study_id . '?' . http_build_query($query)); $response = $this->getClient()->get('/studies/' . $study_id . '?' . http_build_query($query));
return json_decode($response->getBody()->getContents(), true); return json_decode($response->getBody()->getContents(), true, 512, JSON_THROW_ON_ERROR);
} }
public function getStudies(): array public function getStudies(): array
@ -63,11 +66,11 @@ public function getStudies(): array
$url = '/studies?' . http_build_query($query); $url = '/studies?' . http_build_query($query);
$response = $this->getClient()->get($url); $response = $this->getClient()->get($url);
return json_decode($response->getBody()->getContents(), true); return json_decode($response->getBody()->getContents(), true, 512, JSON_THROW_ON_ERROR);
} }
public function getStudiesIds(): array public function getStudiesIds(): array
{ {
return json_decode($this->getClient()->get('/studies')->getBody()->getContents(), true); return json_decode($this->getClient()->get('/studies')->getBody()->getContents(), true, 512, JSON_THROW_ON_ERROR);
} }
} }