From b7ec3f52f7cc4fa77e23aeec5e6dd1664610ef0d Mon Sep 17 00:00:00 2001 From: tnicolas1 Date: Wed, 9 Oct 2024 11:15:45 +0200 Subject: [PATCH] Modification du fonctionnement de 'el*igible_for_auto_retry?' --- app/models/asp/payment_request.rb | 13 +++++-------- features/saisie_de_coordonnees_bancaires.feature | 6 ++++-- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/app/models/asp/payment_request.rb b/app/models/asp/payment_request.rb index d1839cbee..00a165699 100644 --- a/app/models/asp/payment_request.rb +++ b/app/models/asp/payment_request.rb @@ -117,22 +117,19 @@ def active? !terminated? end - # rubocop:disable Metrics/AbcSize def eligible_for_auto_retry? - retryable_messages = RETRYABLE_INCOMPLETE_VALIDATION_TYPES.map do |r| - I18n.t("activerecord.errors.models.asp/payment_request.attributes.ready_state_validation.#{r}") - end - if in_state?(:incomplete) + retryable_messages = RETRYABLE_INCOMPLETE_VALIDATION_TYPES.map do |r| + I18n.t("activerecord.errors.models.asp/payment_request.attributes.ready_state_validation.#{r}") + end retryable_messages.intersect?(last_transition.metadata["incomplete_reasons"]["ready_state_validation"]) elsif in_state?(:rejected) - retryable_messages.include?(last_transition.metadata["Motif rejet"]) + %w[RIB BIC PAIEMENT].any? { |word| (last_transition.metadata["Motif rejet"].upcase).include?(word) } elsif in_state?(:unpaid) - retryable_messages.include?(last_transition.metadata["PAIEMENT"]["LIBELLEMOTIFINVAL"]) + %w[RIB BIC PAIEMENT].any? { |word| (last_transition.metadata["PAIEMENT"]["LIBELLEMOTIFINVAL"].upcase).include?(word) } else false end end - # rubocop:enable Metrics/AbcSize end end diff --git a/features/saisie_de_coordonnees_bancaires.feature b/features/saisie_de_coordonnees_bancaires.feature index 40a80d72f..bf37081e7 100644 --- a/features/saisie_de_coordonnees_bancaires.feature +++ b/features/saisie_de_coordonnees_bancaires.feature @@ -53,9 +53,11 @@ Fonctionnalité: Le personnel de direction saisit des coordonnées bancaires Scénario: Le personnel de direction peut relancer une demande de paiement en saisissant les coordonnées bancaires Quand je consulte la classe de "2NDEB" Et que je renseigne et valide une PFMP de 9 jours pour "Marie Curie" - Sachant que la dernière PFMP de "Marie Curie" en classe de "2NDEB" a une requête de paiement rejetée - Et que je clique sur "Modifier les coordonnées bancaires" + Sachant que la dernière PFMP de "Marie Curie" en classe de "2NDEB" a une requête de paiement envoyée + Et que l'ASP a rejetté le dossier de "Marie Curie" avec un motif de "Le pays correspondant au code BIC 1234 n'autorise pas le mode de réglement SEPA" + Et que la tâche de lecture des paiements est passée Quand je clique sur "Modifier les coordonnées bancaires" + Et que je clique sur "Modifier les coordonnées bancaires" Alors la page contient "Ces coordonnées bancaires ne sont pas modifiables" Et la page contient un bouton "Modifier les coordonnées bancaires" désactivé Et la page contient un bouton "Supprimer les coordonnées bancaires" désactivé