Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Co-construction] Envoyer un mail au bénéficiaire si le dossier repasse en instruction #9874

Merged
merged 2 commits into from
Dec 21, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion app/mailers/notification_mailer.rb
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,9 @@ def send_notification
end
end

def send_notification_for_tiers(dossier)
def send_notification_for_tiers(dossier, repasser_en_instruction: false)
@dossier = dossier
@repasser_en_instruction = repasser_en_instruction

if @dossier.individual.no_notification?
mail.perform_deliveries = false
Expand Down
1 change: 1 addition & 0 deletions app/models/dossier.rb
Original file line number Diff line number Diff line change
Expand Up @@ -1003,6 +1003,7 @@ def after_repasser_en_instruction(h)
MailTemplatePresenterService.create_commentaire_for_state(self, DossierOperationLog.operations.fetch(:repasser_en_instruction))
if !disable_notification
NotificationMailer.send_repasser_en_instruction_notification(self).deliver_later
NotificationMailer.send_notification_for_tiers(self, repasser_en_instruction: true).deliver_later if self.for_tiers?
end
log_dossier_operation(instructeur, :repasser_en_instruction)
end
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,10 @@
%span{ :style => "font-weight: bold;" }
= @dossier.procedure.libelle

= t("layouts.mailers.for_tiers.#{@dossier.state}", processed_at: l(@dossier.updated_at.to_date) )
- if @repasser_en_instruction
= t("layouts.mailers.for_tiers.repasser_en_instruction")
- else
= t("layouts.mailers.for_tiers.#{@dossier.state}", processed_at: l(@dossier.updated_at.to_date) )

%p
= t("layouts.mailers.for_tiers.second_part")
Expand Down
8 changes: 7 additions & 1 deletion app/views/users/dossiers/identite.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,13 @@

.mandataire-infos{ "data-for-tiers-target" => "mandataireBlock" }
.fr-alert.fr-alert--info.fr-mb-2w
%p.fr-notice__text= t('views.users.dossiers.identite.callout_text')
%p.fr-notice__text
= t('views.users.dossiers.identite.callout_text')
= link_to(t('views.users.dossiers.identite.callout_link'),
'https://www.legifrance.gouv.fr/codes/section_lc/LEGITEXT000006070721/LEGISCTA000006136404/#LEGISCTA000006136404',
title: new_tab_suffix(t('views.users.dossiers.identite.callout_link_title')),
**external_link_attributes)


%fieldset.fr-fieldset
%legend.fr-fieldset__legend--regular.fr-fieldset__legend
Expand Down
4 changes: 3 additions & 1 deletion config/locales/en.yml
Original file line number Diff line number Diff line change
Expand Up @@ -400,7 +400,9 @@ en:
archived_dossier: "Your file will be kept %{duree_conservation_dossiers_dans_ds} more months"
identite:
self_title: Your identity
callout_text: "You are acting as a proxy for a principal, either professionally (such as accountant, lawyer) or personally (family). Make sure to respect the conditions of Articles 1984 and following of the Civil Code."
callout_text: "You are acting as a proxy for a principal, either professionally (such as accountant, lawyer) or personally (family). Make sure to respect the conditions of"
callout_link: Articles 1984 and following of the Civil Code.
callout_link_title: Articles 1984 and following of the Civil Code
beneficiaire_title: "Identity of the beneficiary"
identity_siret: Identify your establishment
civility: Civility
Expand Down
4 changes: 3 additions & 1 deletion config/locales/fr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -404,7 +404,9 @@ fr:
archived_dossier: "Votre dossier sera conservé %{duree_conservation_dossiers_dans_ds} mois supplémentaire"
identite:
self_title: Votre identité
callout_text: Vous agissez en tant que mandataire, soit professionnellement (comme expert-comptable, avocat) soit personnellement (famille). Assurez-vous de respecter les conditions des Articles 1984 et suivants du Code civil.
callout_text: Vous agissez en tant que mandataire, soit professionnellement (comme expert-comptable, avocat) soit personnellement (famille). Assurez-vous de respecter les conditions
callout_link: des Articles 1984 et suivants du Code civil.
callout_link_title: Articles 1984 et suivants du Code civil
beneficiaire_title: Identité du bénéficiaire
identity_siret: Identifier votre établissement
civility: Civilité
Expand Down
1 change: 1 addition & 0 deletions config/locales/views/layouts/mailers/en.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ en:
second_part: To find out more, please contact
en_construction: has been submited %{processed_at}.
en_instruction: has been received and taken care of on %{processed_at}. The administration is reviewing your file.
repasser_en_instruction: will be re-examined, the previous decision on this file is obsolete.
accepte: has been accepted on %{processed_at}.
refuse: has been refused on %{processed_at}.
sans_suite: has been closed without continuation on %{processed_at}.
1 change: 1 addition & 0 deletions config/locales/views/layouts/mailers/fr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ fr:
second_part: Pour en savoir plus, veuillez vous rapprocher de
en_construction: a été déposé le %{processed_at}.
en_instruction: a bien été reçu et pris en charge le %{processed_at}. Il va maintenant être examiné par le service.
repasser_en_instruction: va être réexaminé, la précédente décision sur ce dossier est caduque.
accepte: a été accepté le %{processed_at}.
refuse: a été refusé le %{processed_at}.
sans_suite: a été classé sans suite le %{processed_at}.
12 changes: 12 additions & 0 deletions spec/mailers/notification_mailer_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,18 @@

it { expect(subject.subject).to include("Votre dossier rempli par le mandataire #{dossier_for_tiers.mandataire_first_name} #{dossier_for_tiers.mandataire_last_name} a été mis à jour") }
it { expect(subject.to).to eq([dossier_for_tiers.individual.email]) }
it { expect(subject.body).to include("a été déposé le") }
it { expect(subject.body).to include("Pour en savoir plus, veuillez vous rapprocher de\r\n<a href=\"mailto:#{dossier_for_tiers.user.email}\">#{dossier_for_tiers.user.email}</a>.") }
end

describe 'send_notification_for_tiers for repasser_en_instruction' do
let(:dossier_for_tiers) { create(:dossier, :accepte, :for_tiers_with_notification, procedure: create(:simple_procedure)) }

subject { described_class.send_notification_for_tiers(dossier_for_tiers, repasser_en_instruction: true) }

it { expect(subject.subject).to include("Votre dossier rempli par le mandataire #{dossier_for_tiers.mandataire_first_name} #{dossier_for_tiers.mandataire_last_name} a été mis à jour") }
it { expect(subject.to).to eq([dossier_for_tiers.individual.email]) }
it { expect(subject.body).to include("va être réexaminé, la précédente décision sur ce dossier est caduque.") }
it { expect(subject.body).to include("Pour en savoir plus, veuillez vous rapprocher de\r\n<a href=\"mailto:#{dossier_for_tiers.user.email}\">#{dossier_for_tiers.user.email}</a>.") }
end

Expand Down