Skip to content
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
2 changes: 1 addition & 1 deletion app/models/authorization_request/api_entreprise.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ class AuthorizationRequest::APIEntreprise < AuthorizationRequest
include AuthorizationExtensions::BasicInfos
include AuthorizationExtensions::PersonalData
include AuthorizationExtensions::CadreJuridique
include AuthorizationExtensions::GDPRContacts

add_documents :maquette_projet, content_type: ['application/pdf'], size: { less_than: 10.megabytes }

Expand All @@ -14,6 +13,7 @@ class AuthorizationRequest::APIEntreprise < AuthorizationRequest
})

%i[
delegue_protection_donnees
contact_metier
contact_technique
].each do |contact_kind|
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

<div class="fr-container-fluid">
<div class="fr-grid-row fr-grid-row--gutters">
<% %i[responsable_traitement delegue_protection_donnees contact_metier contact_technique].each do |contact_type| %>
<% %i[delegue_protection_donnees contact_metier contact_technique].each do |contact_type| %>
<%= render partial: 'authorization_request_forms/shared/contact', locals: { contact_type:, f: } %>
<% end %>
</div>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
class CreateBulkUpdateForAPIEntrepriseOnResponsableTraitement < ActiveRecord::Migration[8.1]
PRODUCTION_AUTHOR_ID = 43_809

def up
return if author.nil?

bulk_update = BulkAuthorizationRequestUpdate.create!(
authorization_definition_uid: 'api_entreprise',
application_date: Date.current,
reason:,
)

AuthorizationRequestEvent.create!(
name: 'bulk_update',
entity: bulk_update,
user: author,
)
end

def down; end

private

def author
@author ||= if Rails.env.production?
User.find(PRODUCTION_AUTHOR_ID)
else
User.first
end
end

def reason
<<~REASON
Le responsable de traitement n’est dorénavant plus nécessaire pour l’obtention d’une habilitation à API Entreprise. Les informations déjà renseignées sont conservées mais ne sont plus affichées ni utilisées.

Le contact métier de votre habilitation reste le référent pour les questions relatives aux aspects métiers de votre service exploitant API Entreprise.

Ces changements sont effectifs à partir du %{humanized_application_date}.
REASON
end
end
2 changes: 1 addition & 1 deletion features/habilitation_sur_une_page.feature
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ Fonctionnalité: Interactions sur une demande d'habilitation simple (sur une seu
Scénario: Je démarre une demande avec un contact à remplir ne nécessitant pas un email nominatif
Quand je veux remplir une demande pour "API Entreprise" via le formulaire "Conformité titulaires de marchés" de l'éditeur "Approval"
Et que je clique sur "Débuter ma demande"
Et que je remplis les informations du contact "Responsable de traitement" avec :
Et que je remplis les informations du contact "Délégué à la protection des données" avec :
| Email |
| mairie@gouv.fr |
Alors la page ne contient pas "doit être un email nominatif"
Original file line number Diff line number Diff line change
Expand Up @@ -40,4 +40,4 @@ Fonctionnalité: Gestion des emails automatiques d'un formulaire

Scénario: Le nombre d’emails automatiques est affiché sur le détail du formulaire
Quand je me rends sur le formulaire "API Entreprise"
Alors la page contient "4 emails automatiques"
Alors la page contient "3 emails automatiques"
10 changes: 0 additions & 10 deletions features/instructeurs/historique_habilitation.feature
Original file line number Diff line number Diff line change
Expand Up @@ -56,11 +56,6 @@ Fonctionnalité: Instruction: historique habilitation
Quand il y a 1 demande d'habilitation "Solution Portail des aides" en brouillon
Et que cette demande a été modifiée avec les informations suivantes :
| champ | nouvelle valeur |
| responsable_traitement_family_name | Dupont |
| responsable_traitement_given_name | Jacques |
| responsable_traitement_email | responsable_traitement@test.fr |
| responsable_traitement_job_title | Responsable traitement |
| responsable_traitement_phone_number | 0836656565 |
| delegue_protection_donnees_family_name | Dupond |
| delegue_protection_donnees_given_name | Jean |
| delegue_protection_donnees_email | delegue_protection_donnees@test.fr |
Expand All @@ -78,11 +73,6 @@ Fonctionnalité: Instruction: historique habilitation
Et que cette demande a été modifiée avec les informations suivantes :
| champ | nouvelle valeur |
| contact_technique_email | tech@test.fr |
| responsable_traitement_family_name | Dupont |
| responsable_traitement_given_name | Jacques |
| responsable_traitement_email | responsable_traitement@test.fr |
| responsable_traitement_job_title | Responsable traitement |
| responsable_traitement_phone_number | 0836656565 |
| delegue_protection_donnees_family_name | Dupond |
| delegue_protection_donnees_given_name | Jean |
| delegue_protection_donnees_email | delegue_protection_donnees@test.fr |
Expand Down
8 changes: 4 additions & 4 deletions features/modification_depuis_resume_habilitation.feature
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ Fonctionnalité: Modifications d'un formulaire depuis sa page de résumé
Sachant que je suis un demandeur
Et que je me connecte
Et que je me rends sur une demande d'habilitation "Solution Portail des aides" en brouillon
Et que je renseigne les informations des contacts RGPD
Et que je renseigne les informations du délégué à la protection des données
Et que je clique sur "Continuer vers le résumé"

Scénario: Les blocs fixes n'ont pas de bouton modifier
Expand All @@ -27,15 +27,15 @@ Fonctionnalité: Modifications d'un formulaire depuis sa page de résumé
@javascript
Scénario: Modification avec des données valides
Quand je clique sur "Modifier" dans le bloc de résumé "Les personnes impliquées"
Et que je remplis les informations du contact "Responsable de traitement" avec :
Et que je remplis les informations du contact "Délégué à la protection des données" avec :
| Nom | Prénom | Email | Téléphone | Fonction |
| Nouveau | Louis | nouveau.louis@gouv.fr | 0836656560 | Directeur d'exploitation |
Et que je clique sur "Enregistrer les modifications"
Alors la page contient "Vérifiez le récapitulatif de votre demande"

Scénario: Modification avec des données invalides
Quand je clique sur "Modifier" dans le bloc de résumé "Les personnes impliquées"
Et que je remplis les informations du contact "Responsable de traitement" avec :
Et que je remplis les informations du contact "Délégué à la protection des données" avec :
| Nom | Prénom | Email | Téléphone | Fonction |
| | Louis | nouveau.louis@gouv.fr | 0836656560 | Directeur d'exploitation |
Et que je clique sur "Enregistrer les modifications"
Expand All @@ -45,6 +45,6 @@ Fonctionnalité: Modifications d'un formulaire depuis sa page de résumé
Scénario: Tentative de sauvegarde sans modification
Quand je clique sur "Modifier" dans le bloc de résumé "Les personnes impliquées"
Alors je peux voir le bouton "Enregistrer les modifications" grisé et désactivé
Et que je remplis "Fonction du responsable de traitement" avec "Directeur d'exploitation"
Et que je remplis "Fonction du délégué à la protection des données" avec "Directeur d'exploitation"
Et que je clique sur "Enregistrer les modifications"
Alors la page contient "Vérifiez le récapitulatif de votre demande"
2 changes: 1 addition & 1 deletion features/reouverture_habilitation.feature
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ Fonctionnalité: Réouverture d'une habilitation validée
Alors il y a un bouton "Annuler ma demande de modification"
Et il n'y a pas de bouton "Envoyer ma demande de modification"
Quand je clique sur "Modifier" dans le bloc de résumé "Les personnes impliquées"
Et que je remplis les informations du contact "Responsable de traitement" avec :
Et que je remplis les informations du contact "Délégué à la protection des données" avec :
| Nom | Prénom | Email | Téléphone | Fonction |
|Jean | Louis | nouveau.louis@gouv.fr | 0836656560 | Directeur associé d'exploitation |
Et que je clique sur "Enregistrer les modifications"
Expand Down
2 changes: 1 addition & 1 deletion features/soumission_demande_scan_antivirus.feature
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Fonctionnalité: Soumission d'une demande d'habilitation API Entreprise

* je renseigne les infos concernant les données personnelles
* je clique sur "Suivant"
* je renseigne les informations des contacts RGPD
* je renseigne les informations du délégué à la protection des données
* je renseigne les informations du contact métier
* je renseigne les informations du contact technique
* je clique sur "Suivant"
Expand Down
2 changes: 1 addition & 1 deletion spec/interactors/deliver_gdpr_contacts_mails_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
end

context 'when all GDPR contacts exist on authorization request' do
let(:authorization_request) { create(:authorization_request, :api_entreprise, fill_all_attributes: true) }
let(:authorization_request) { create(:authorization_request, :api_scolarite, fill_all_attributes: true) }

it 'delivers notification emails to these contacts' do
expect { subject }.to have_enqueued_mail(GDPRContactMailer, :responsable_traitement)
Expand Down
1 change: 0 additions & 1 deletion spec/notifiers/definition_automated_emails.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,6 @@ authorization_definitions:
- event_name: approve
emails:
- GDPRContactMailer#delegue_protection_donnees
- GDPRContactMailer#responsable_traitement
- definition_id: api_ficoba
events: *with_gdpr_and_dgfip
- definition_id: api_ficoba_sandbox
Expand Down
12 changes: 6 additions & 6 deletions spec/organizers/create_authorization_request_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
let(:authorization_request_params) do
ActionController::Parameters.new(
invalid: 'invalid',
responsable_traitement_family_name: 'New Dupont',
delegue_protection_donnees_family_name: 'New Dupont',
)
end

Expand All @@ -74,7 +74,7 @@

expect(authorization_request.scopes).to be_present
expect(authorization_request.scopes).to include('open_data_unites_legales_etablissements_insee')
expect(authorization_request.responsable_traitement_family_name).to eq('New Dupont')
expect(authorization_request.delegue_protection_donnees_family_name).to eq('New Dupont')
end
end

Expand All @@ -83,7 +83,7 @@
let(:authorization_request_params) do
ActionController::Parameters.new(
invalid: 'invalid',
responsable_traitement_family_name: 'New Dupont',
delegue_protection_donnees_family_name: 'New Dupont',
)
end

Expand All @@ -97,7 +97,7 @@
expect(authorization_request.scopes).to be_present
expect(authorization_request.scopes).to include('open_data_unites_legales_etablissements_insee')
expect(authorization_request.scopes).to include('unites_legales_etablissements_insee')
expect(authorization_request.responsable_traitement_family_name).to eq('New Dupont')
expect(authorization_request.delegue_protection_donnees_family_name).to eq('New Dupont')
end
end

Expand All @@ -106,7 +106,7 @@
let(:authorization_request_params) do
ActionController::Parameters.new(
invalid: 'invalid',
responsable_traitement_family_name: 'New Dupont',
delegue_protection_donnees_family_name: 'New Dupont',
)
end

Expand All @@ -117,7 +117,7 @@

authorization_request = AuthorizationRequest.last

expect(authorization_request.responsable_traitement_family_name).to eq('New Dupont')
expect(authorization_request.delegue_protection_donnees_family_name).to eq('New Dupont')
expect(authorization_request.contact_technique_email).to eq('contact-mgdis@yopmail.com')
end
end
Expand Down
2 changes: 1 addition & 1 deletion spec/queries/authorization_requests_mentions_query_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
let(:relation) { AuthorizationRequest.all }

let!(:valid_authorization_request) { create(:authorization_request, :api_entreprise, contact_metier_email: user.email) }
let!(:another_valid_authorization_request) { create(:authorization_request, :api_entreprise, responsable_traitement_email: user.email) }
let!(:another_valid_authorization_request) { create(:authorization_request, :api_entreprise, delegue_protection_donnees_email: user.email) }
let!(:another_valid_authorization_request_with_uppercase_email) { create(:authorization_request, :api_entreprise) }
let!(:invalid_authorization_request) { create(:authorization_request, :api_entreprise) }

Expand Down
2 changes: 1 addition & 1 deletion spec/queries/authorizations_mentions_query_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
let(:relation) { Authorization.all }

let!(:valid_authorization_request) { create(:authorization_request, :api_entreprise, contact_metier_email: user.email) }
let!(:another_valid_authorization_request) { create(:authorization_request, :api_entreprise, responsable_traitement_email: user.email) }
let!(:another_valid_authorization_request) { create(:authorization_request, :api_entreprise, delegue_protection_donnees_email: user.email) }
let!(:invalid_authorization_request) { create(:authorization_request, :api_entreprise) }

let!(:valid_authorization) { create(:authorization, request: valid_authorization_request) }
Expand Down
Loading