edit: clear readme, pdu, query level

This commit is contained in:
mario
2025-04-28 14:10:48 +07:00
parent 205f75ed4a
commit f17b19cf6f
3 changed files with 91 additions and 15 deletions

39
main.py
View File

@@ -102,6 +102,8 @@ class DicomUploader:
"""
ae = AE(ae_title=self.local_ae_title)
ae.add_requested_context(PatientRootQueryRetrieveInformationModelGet)
# ae.maximum_pdu_size = 130816 # * Kalau ingin set maximum PDU size to 128kB. Harus set di sisi DCM4CHEE juga
storage_uids = [
'1.2.840.10008.5.1.4.1.1.1', # CR Storage
@@ -151,22 +153,33 @@ class DicomUploader:
if assoc.is_established:
ds = Dataset()
if sop_instance_uid:
ds.QueryRetrieveLevel = 'IMAGE'
ds.StudyInstanceUID = study_instance_uid
ds.SeriesInstanceUID = series_instance_uid
ds.SOPInstanceUID = sop_instance_uid
elif series_instance_uid:
ds.QueryRetrieveLevel = 'SERIES'
ds.StudyInstanceUID = study_instance_uid
ds.SeriesInstanceUID = series_instance_uid
else:
ds.QueryRetrieveLevel = 'STUDY'
ds.StudyInstanceUID = study_instance_uid
# * Kalau level image nanti cuma 1 image aja yang digetscu
# if sop_instance_uid:
# ds.QueryRetrieveLevel = 'IMAGE'
# ds.StudyInstanceUID = study_instance_uid
# ds.SeriesInstanceUID = series_instance_uid
# ds.SOPInstanceUID = sop_instance_uid
# * Kalau level series nanti cget semua image dalam 1 series id itu
# elif series_instance_uid:
# ds.QueryRetrieveLevel = 'SERIES'
# ds.StudyInstanceUID = study_instance_uid
# ds.SeriesInstanceUID = series_instance_uid
# * Kalau level study nanti cget semua image dalam 1 study id itu
# else:
# ds.QueryRetrieveLevel = 'STUDY'
# ds.StudyInstanceUID = study_instance_uid
# * Default: Study level. Sampai ada kasus yang membutuhkan level lain
ds.QueryRetrieveLevel = 'STUDY'
ds.StudyInstanceUID = study_instance_uid
# Send C-GET request and collect responses
responses = assoc.send_c_get(ds, PatientRootQueryRetrieveInformationModelGet)
logger.info(f"Query Retrieval Level: {ds.QueryRetrieveLevel}")
for status, identifier in responses:
if status: