[#2750] Sanity check procedure
This commit is contained in:
parent
30ef6e6d95
commit
667deae5cc
1 changed files with 9 additions and 0 deletions
|
@ -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'
|
||||
|
|
Loading…
Add table
Reference in a new issue