[#2750] Sanity check procedure

This commit is contained in:
Frederic Merizen 2018-10-05 15:48:37 +02:00
parent 30ef6e6d95
commit 667deae5cc

View file

@ -57,10 +57,12 @@ class ProcedurePresentation < ApplicationRecord
end
def displayed_field_values(dossier)
assert_matching_procedure(dossier)
displayed_fields.map { |field| get_value(dossier, field['table'], field['column']) }
end
def sorted_ids(dossiers, gestionnaire)
dossiers.each { |dossier| assert_matching_procedure(dossier) }
table = sort['table']
column = sanitized_column(sort)
order = sort['order']
@ -94,6 +96,7 @@ class ProcedurePresentation < ApplicationRecord
end
def filtered_ids(dossiers, statut)
dossiers.each { |dossier| assert_matching_procedure(dossier) }
filters[statut].map do |filter|
table = filter['table']
column = sanitized_column(filter)
@ -170,6 +173,12 @@ class ProcedurePresentation < ApplicationRecord
end
end
def assert_matching_procedure(dossier)
if dossier.procedure != procedure
raise "Procedure mismatch (expected #{procedure.id}, got #{dossier.procedure.id})"
end
end
def get_value(dossier, table, column)
case table
when 'self'