Merge pull request #11088 from mfo/US/fix-export-repetition-not-in-dossier-revision

correctif: ETQ instructeur, je peux exporter mes dossiers même si une répétition a été ajouté a une autre version du formulaire
This commit is contained in:
mfo 2024-11-26 10:22:14 +00:00 committed by GitHub
commit 99184d3d2b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 21 additions and 1 deletions

View file

@ -29,7 +29,7 @@ module ChampsValidateConcern
end
def in_dossier_revision?
dossier.revision.types_de_champ.any? { _1.stable_id == stable_id } && is_type?(type_de_champ.type_champ)
dossier.revision.in_revision?(stable_id) && is_type?(type_de_champ.type_champ)
end
end
end

View file

@ -109,6 +109,7 @@ module DossierChampsConcern
def repetition_row_ids(type_de_champ)
return [] if !type_de_champ.repetition?
return [] if !revision.in_revision?(type_de_champ.stable_id)
stable_ids = revision.children_of(type_de_champ).map(&:stable_id)
champs.filter { _1.stable_id.in?(stable_ids) && _1.row_id.present? }

View file

@ -203,6 +203,10 @@ class ProcedureRevision < ApplicationRecord
coordinate_for(tdc).parent_type_de_champ
end
def in_revision?(stable_id)
types_de_champ.any? { _1.stable_id == stable_id }
end
def dependent_conditions(tdc)
stable_id = tdc.stable_id