Skip to content
Snippets Groups Projects
Commit 5b200a9c authored by Anusha Ranganathan's avatar Anusha Ranganathan
Browse files

Merge branch 'bug_fix/274-452-filtered-download-issue' into 'develop'

Fix filtered download issue

See merge request !351
parents e619910c 0ae017d9
No related branches found
No related tags found
1 merge request!351Fix filtered download issue
Pipeline #18539 canceled
module ComplexFilterHelper
def fetch_crc_filter_params(params)
facet_filters = params[:f].present? ? params[:f].slice(*::CrcDataset::CRC_FILTER_FACET_FIELDS).permit!.to_h : {}
range_filters = (params[:range].present? && params[:range][:year_recorded_sim].present?) ? params[:range].slice(:year_recorded_sim).permit!.to_h : {}
search_params = facet_filters.merge(range_filters)
year_range_filters = (params[:range].present? && params[:range][:year_recorded_sim].present?) ? params[:range].slice(:year_recorded_sim).permit!.to_h : {}
age_range_filters = (params[:range].present? && params[:range][:complex_subject_age_itsim].present?) ? params[:range].slice(:complex_subject_age_itsim).permit!.to_h : {}
search_params = facet_filters.merge(year_range_filters).merge(age_range_filters)
end
def subject_field_mappings
......@@ -46,7 +47,7 @@ module ComplexFilterHelper
end
end
def filtered_subjects(subject_query, session_query, modality_query)
def filtered_subjects(subject_query = nil, session_query = nil , modality_query = nil)
complex_subjects = ComplexSubject.includes(complex_sessions: :complex_modalities)
if modality_query.present?
......@@ -110,6 +111,13 @@ module ComplexFilterHelper
end_date = Date.parse("#{year_range['end']}-12-31")
query["session_date_recorded"] = begin_date..end_date
end
elsif key == "complex_subject_age_itsim"
age_range = search_params[key]
if age_range.is_a?(Hash) && age_range.key?("begin") && age_range.key?("end")
query["subject_age"] = age_range['begin']..age_range['end']
else
query[value] = search_params[key]
end
else
query[value] = search_params[key]
end
......@@ -126,7 +134,8 @@ module ComplexFilterHelper
facet_filters = search_params[:f] || {}
range_filters = (search_params[:range].present? && search_params[:range][:year_recorded_sim].present?) ? search_params[:range].slice(:year_recorded_sim) : {}
search_params = facet_filters.merge(range_filters)
age_range_filters = (params[:range].present? && params[:range][:complex_subject_age_itsim].present?) ? params[:range].slice(:complex_subject_age_itsim).permit!.to_h : {}
search_params = facet_filters.merge(range_filters).merge(age_range_filters)
return has_any_search_params?(field_mappings, search_params)
end
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment