1.6 KiB
Make ISO flow
This is the main flow when a user creates an ISO from HISv3.
The diagram below follows the current Go service in this repo. In short, HISv3 asks the DICOM ISO service for one study, the service takes the study from PACS, builds an ISO file, then returns that file back for download.
Diagram
@startuml
hide footbox
skinparam shadowing false
skinparam sequenceMessageAlign center
skinparam responseMessageBelowArrow true
skinparam ArrowColor #444444
skinparam ParticipantBorderColor #666666
skinparam ParticipantBackgroundColor #F8F8F8
skinparam ActorBorderColor #666666
skinparam ActorBackgroundColor #F8F8F8
actor User
participant "HISv3 Verifikasi" as HIS
participant "DICOM ISO API" as API
participant "PACS Server" as PACS
participant "ISO Builder" as ISO
User -> HIS: Click "Make ISO"
HIS -> API: Request ISO by accession number
API -> PACS: Find and retrieve DICOM study
PACS --> API: Return DICOM files
API -> ISO: Build ISO from DICOM files
ISO --> API: ISO file ready
API --> HIS: Return ISO download
HIS --> User: User receives ISO file
@enduml
Brief explanation
When the user clicks Make ISO in HISv3, HISv3 sends a request to the DICOM ISO service.
The DICOM ISO service then asks PACS for the study data that matches the accession number. After the study files are received, the service prepares them into one ISO file.
When the ISO file is ready, the service sends it back as a download response. From the user side, the process stays simple: click Make ISO, wait a moment, then download the ISO file.
Note
This is the basic user-facing flow. It leaves out lower-level details so the diagram stays easy to read.