@@ -235,7 +235,7 @@ def sortNum(x):
235235
236236# Build data exploration context/response
237237def build_explorer_context (is_dicofdic , source , versions , filters , fields , order_docs , counts_only , with_related ,
238- with_derived , collapse_on , is_json , uniques = None , totals = None , disk_size = False ):
238+ with_derived , collapse_on , is_json , uniques = None , totals = None , with_stats = True , disk_size = True ):
239239 attr_by_source = {}
240240 attr_sets = {}
241241 context = {}
@@ -300,18 +300,18 @@ def build_explorer_context(is_dicofdic, source, versions, filters, fields, order
300300 attr_by_source [set_type ]['attributes' ].update (
301301 {attr .name : {'source' : source .id , 'obj' : attr , 'vals' : None , 'id' : attr .id } for attr in attrs }
302302 )
303- custom_facets = None
303+ custom_facets = {}
304304
305- disk_size = True
306- if disk_size and filters and len ( filters . keys ()) > 0 :
307- custom_facets = {
308- 'instance_size ' : 'sum(instance_size)' ,
309- 'patient_per_collec' :{ 'type' : 'terms' , 'field' : 'collection_id' , 'limit' : - 1 , 'missing' : True , 'facet' : { 'unique_count' : 'unique(PatientID)' }},
310- 'study_per_collec' : { 'type' : 'terms' , 'field' : 'collection_id' , 'limit' : - 1 , 'missing' : True ,
311- 'facet' : { 'unique_count' : 'unique(StudyInstanceUID)' }},
312- 'series_per_collec2' : { 'type' : 'terms' , 'field' : 'collection_id' , 'limit' : - 1 , 'missing' : True ,
313- 'facet' : { 'unique_count' : 'unique(SeriesInstanceUID)' }}
314- }
305+ if with_stats :
306+ custom_facets [ 'patient_per_collec' ] = { 'type' : 'terms' , 'field' : 'collection_id' , 'limit' : - 1 , 'missing' : True , 'facet' : { 'unique_count' : 'unique(PatientID)' }}
307+ custom_facets [ 'study_per_collec' ] = {'type' : 'terms' , 'field' : 'collection_id' , 'limit' : - 1 , 'missing' : True , 'facet' : { 'unique_count' : 'unique(StudyInstanceUID)' }}
308+ custom_facets [ 'series_per_collec' ] = { 'type' : 'terms' , 'field' : 'collection_id' , 'limit ' : - 1 , 'missing' : True , 'facet' : { 'unique_count' : 'unique(SeriesInstanceUID)' }}
309+
310+ if disk_size :
311+ custom_facets [ 'instance_size' ] = 'sum(instance_size)'
312+
313+ if ( len ( custom_facets . keys ()) == 0 ):
314+ custom_facets = None
315315
316316 start = time .time ()
317317 source_metadata = get_collex_metadata (
@@ -337,7 +337,7 @@ def build_explorer_context(is_dicofdic, source, versions, filters, fields, order
337337 for dataset in data_sets :
338338 if dataset .data_type in source_data_types [int (source .split (":" )[- 1 ])]:
339339 set_name = dataset .get_set_name ()
340- if (set_name == 'origin_set' ) and disk_size :
340+ if (set_name == 'origin_set' ) and with_stats :
341341 context ['stats' ]= {}
342342
343343 if 'patient_per_collec' in facet_set :
@@ -348,15 +348,10 @@ def build_explorer_context(is_dicofdic, source, versions, filters, fields, order
348348 context ['stats' ]['study_per_collec' ]= facet_set ['study_per_collec' ]
349349 else :
350350 context ['stats' ]['study_per_collec' ] = 0
351- if 'series_per_collec2 ' in facet_set :
352- context ['stats' ]['series_per_collec' ] = facet_set ['series_per_collec2 ' ]
351+ if 'series_per_collec ' in facet_set :
352+ context ['stats' ]['series_per_collec' ] = facet_set ['series_per_collec ' ]
353353 else :
354354 context ['stats' ]['series_per_collec' ] = 0
355- if 'size_per_collec2' in facet_set :
356- context ['stats' ]['size_per_collec' ] = facet_set ['size_per_collec2' ]
357- else :
358- context ['stats' ]['size_per_collec' ] = 0
359-
360355
361356
362357 if dataset .data_type in data_types and set_name in attr_sets :
0 commit comments