aces / Loris-MRI

The set of scripts that preprocess and insert MRI data into the database.
10 stars 50 forks source link

[tools/get_dicom_files.pl] silently ignoring wrong id in resulting archive #954

Closed regisoc closed 1 year ago

regisoc commented 1 year ago

Script tools/get_dicom_files.pl

When using the -id parameter, if it starts with something strictly different from what is expected, the result is what is expected. But, if it starts with one of the expected ones (candid, pscid, candid_pscid or pscid_candid) and continues with something else (e.g. candidididiididi), the result is wrong = silent execution.

The problem is, since the id is wrong, it will not create the id level in the resulting archive. The resulting file architecture should be id/visit_label/... but the erroneous one is only visit_label/.... For only one PatientName, the result is good enough, but it mixes several patients if multiple are present in the request.

# this does not work -> ok
perl tools/get_dicom_files.pl -name DCC090_587630_V1 -type dwi25 -outfile test -id nope -profile prod

# this works -> should not. `.tar.gz` created ignoring the ID folder, only visit folder.
perl tools/get_dicom_files.pl -name DCC090_587630_V1 -type dwi25 -outfile test -id candidididi -profile prod
perl tools/get_dicom_files.pl -name DCC090_587630_V1 -type dwi25 -outfile test -id pscidididi -profile prod

# One user + one type seems fine, but if multiple names that have the same visit => mixed in the same visit folder.
perl tools/get_dicom_files.pl -name DCC090_587630_V1,DCC292_676061_V1 -type t1 -outfile test -id candididi -profile prod