Procedure: add legal reference
This commit is contained in:
parent
25f0b6258a
commit
a96889310b
10 changed files with 33 additions and 2 deletions
|
@ -224,7 +224,7 @@ class Admin::ProceduresController < AdminController
|
||||||
end
|
end
|
||||||
|
|
||||||
def procedure_params
|
def procedure_params
|
||||||
editable_params = [:libelle, :description, :organisation, :direction, :lien_site_web, :notice, :web_hook_url, :euro_flag, :logo, :auto_archive_on]
|
editable_params = [:libelle, :description, :organisation, :direction, :lien_site_web, :cadre_juridique, :notice, :web_hook_url, :euro_flag, :logo, :auto_archive_on]
|
||||||
if @procedure&.locked?
|
if @procedure&.locked?
|
||||||
params.require(:procedure).permit(*editable_params)
|
params.require(:procedure).permit(*editable_params)
|
||||||
else
|
else
|
||||||
|
|
|
@ -45,6 +45,7 @@ class Procedure < ApplicationRecord
|
||||||
|
|
||||||
validates :libelle, presence: true, allow_blank: false, allow_nil: false
|
validates :libelle, presence: true, allow_blank: false, allow_nil: false
|
||||||
validates :description, presence: true, allow_blank: false, allow_nil: false
|
validates :description, presence: true, allow_blank: false, allow_nil: false
|
||||||
|
validates :cadre_juridique, presence: true, allow_blank: false, allow_nil: false
|
||||||
|
|
||||||
include AASM
|
include AASM
|
||||||
|
|
||||||
|
|
|
@ -21,6 +21,10 @@
|
||||||
Un lien de rappel HTTP (aussi appelé webhook) est utilisé pour notifier un service tiers du changement de l'état d’un dossier sur demarches-simplifiees.fr. À chaque changement d’état d'un dossier, notre site va effectuer une requête sur le lien renseigné avec en paramètres : le nouvel état du dossier, l’identifiant de la procédure, l'identifiant dossier et la date du changement. Vous pourrez alors utiliser notre API pour récupérer les nouvelles informations du dossier concerné.
|
Un lien de rappel HTTP (aussi appelé webhook) est utilisé pour notifier un service tiers du changement de l'état d’un dossier sur demarches-simplifiees.fr. À chaque changement d’état d'un dossier, notre site va effectuer une requête sur le lien renseigné avec en paramètres : le nouvel état du dossier, l’identifiant de la procédure, l'identifiant dossier et la date du changement. Vous pourrez alors utiliser notre API pour récupérer les nouvelles informations du dossier concerné.
|
||||||
= f.text_field :web_hook_url, class: 'form-control', placeholder: 'https://callback.exemple.fr/'
|
= f.text_field :web_hook_url, class: 'form-control', placeholder: 'https://callback.exemple.fr/'
|
||||||
|
|
||||||
|
.form-group
|
||||||
|
%h4 Cadre juridique : indiquez la référence ou l'URL du texte juridique ou chargez la délibération qui justifie cette procédure *
|
||||||
|
= f.text_field :cadre_juridique, class: 'form-control', placeholder: 'https://www.legifrance.gouv.fr/'
|
||||||
|
|
||||||
.form-group
|
.form-group
|
||||||
%h4 Notice explicative de la procédure
|
%h4 Notice explicative de la procédure
|
||||||
- notice = @procedure.notice
|
- notice = @procedure.notice
|
||||||
|
|
|
@ -3,3 +3,17 @@ fr:
|
||||||
attributes:
|
attributes:
|
||||||
procedure:
|
procedure:
|
||||||
organisation: Organisme
|
organisation: Organisme
|
||||||
|
errors:
|
||||||
|
models:
|
||||||
|
procedure:
|
||||||
|
attributes:
|
||||||
|
libelle:
|
||||||
|
blank: Attribut manquant
|
||||||
|
description:
|
||||||
|
blank: Attribut manquant
|
||||||
|
lien_demarche:
|
||||||
|
blank: Attribut manquant
|
||||||
|
organisation:
|
||||||
|
blank: Attribut manquant
|
||||||
|
'cadre_juridique':
|
||||||
|
blank: Attribut manquant
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
class AddCadreJuridiqueToProcedure < ActiveRecord::Migration[5.2]
|
||||||
|
def change
|
||||||
|
add_column :procedures, :cadre_juridique, :string
|
||||||
|
end
|
||||||
|
end
|
|
@ -481,6 +481,7 @@ ActiveRecord::Schema.define(version: 2018_05_30_095508) do
|
||||||
t.bigint "service_id"
|
t.bigint "service_id"
|
||||||
t.integer "duree_conservation_dossiers_dans_ds"
|
t.integer "duree_conservation_dossiers_dans_ds"
|
||||||
t.integer "duree_conservation_dossiers_hors_ds"
|
t.integer "duree_conservation_dossiers_hors_ds"
|
||||||
|
t.string "cadre_juridique"
|
||||||
t.index ["hidden_at"], name: "index_procedures_on_hidden_at"
|
t.index ["hidden_at"], name: "index_procedures_on_hidden_at"
|
||||||
t.index ["parent_procedure_id"], name: "index_procedures_on_parent_procedure_id"
|
t.index ["parent_procedure_id"], name: "index_procedures_on_parent_procedure_id"
|
||||||
t.index ["service_id"], name: "index_procedures_on_service_id"
|
t.index ["service_id"], name: "index_procedures_on_service_id"
|
||||||
|
|
|
@ -15,6 +15,7 @@ describe Admin::ProceduresController, type: :controller do
|
||||||
let(:quartiers_prioritaires) { '0' }
|
let(:quartiers_prioritaires) { '0' }
|
||||||
let(:cadastre) { '0' }
|
let(:cadastre) { '0' }
|
||||||
let(:cerfa_flag) { true }
|
let(:cerfa_flag) { true }
|
||||||
|
let(:cadre_juridique) { 'cadre juridique' }
|
||||||
|
|
||||||
let(:procedure_params) {
|
let(:procedure_params) {
|
||||||
{
|
{
|
||||||
|
@ -24,6 +25,7 @@ describe Admin::ProceduresController, type: :controller do
|
||||||
direction: direction,
|
direction: direction,
|
||||||
lien_demarche: lien_demarche,
|
lien_demarche: lien_demarche,
|
||||||
cerfa_flag: cerfa_flag,
|
cerfa_flag: cerfa_flag,
|
||||||
|
cadre_juridique: cadre_juridique,
|
||||||
module_api_carto_attributes: {
|
module_api_carto_attributes: {
|
||||||
use_api_carto: use_api_carto,
|
use_api_carto: use_api_carto,
|
||||||
quartiers_prioritaires: quartiers_prioritaires,
|
quartiers_prioritaires: quartiers_prioritaires,
|
||||||
|
|
|
@ -6,6 +6,7 @@ FactoryBot.define do
|
||||||
description "Demande de subvention à l'intention des associations"
|
description "Demande de subvention à l'intention des associations"
|
||||||
organisation "Orga DINSIC"
|
organisation "Orga DINSIC"
|
||||||
direction "direction DINSIC"
|
direction "direction DINSIC"
|
||||||
|
cadre_juridique "un cadre juridique important"
|
||||||
published_at nil
|
published_at nil
|
||||||
cerfa_flag false
|
cerfa_flag false
|
||||||
administrateur { create(:administrateur) }
|
administrateur { create(:administrateur) }
|
||||||
|
|
|
@ -14,6 +14,7 @@ feature 'As an administrateur I wanna clone a procedure', js: true do
|
||||||
page.find_by_id('from-scratch').click
|
page.find_by_id('from-scratch').click
|
||||||
fill_in 'procedure_libelle', with: 'libelle de la procedure'
|
fill_in 'procedure_libelle', with: 'libelle de la procedure'
|
||||||
page.execute_script("$('#procedure_description').val('description de la procedure')")
|
page.execute_script("$('#procedure_description').val('description de la procedure')")
|
||||||
|
fill_in 'procedure_cadre_juridique', with: 'cadre juridique'
|
||||||
page.find_by_id('save-procedure').click
|
page.find_by_id('save-procedure').click
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -32,13 +32,14 @@ feature 'As an administrateur I wanna create a new procedure', js: true do
|
||||||
expect(page).to have_current_path(new_admin_procedure_path)
|
expect(page).to have_current_path(new_admin_procedure_path)
|
||||||
end
|
end
|
||||||
|
|
||||||
scenario 'Finding save button for new procedure, libelle and description required' do
|
scenario 'Finding save button for new procedure, libelle, description and cadre_juridique required' do
|
||||||
page.find_by_id('new-procedure').click
|
page.find_by_id('new-procedure').click
|
||||||
page.find_by_id('from-scratch').click
|
page.find_by_id('from-scratch').click
|
||||||
page.find_by_id('save-procedure').click
|
page.find_by_id('save-procedure').click
|
||||||
page.find_by_id('flash_message').visible?
|
page.find_by_id('flash_message').visible?
|
||||||
fill_in 'procedure_libelle', with: 'libelle de la procedure'
|
fill_in 'procedure_libelle', with: 'libelle de la procedure'
|
||||||
page.execute_script("$('#procedure_description').val('description de la procedure')")
|
page.execute_script("$('#procedure_description').val('description de la procedure')")
|
||||||
|
fill_in 'procedure_cadre_juridique', with: 'cadre juridique'
|
||||||
page.find_by_id('save-procedure').click
|
page.find_by_id('save-procedure').click
|
||||||
expect(page).to have_current_path(admin_procedure_types_de_champ_path(Procedure.first.id.to_s))
|
expect(page).to have_current_path(admin_procedure_types_de_champ_path(Procedure.first.id.to_s))
|
||||||
end
|
end
|
||||||
|
@ -50,6 +51,7 @@ feature 'As an administrateur I wanna create a new procedure', js: true do
|
||||||
page.find_by_id('from-scratch').click
|
page.find_by_id('from-scratch').click
|
||||||
fill_in 'procedure_libelle', with: 'libelle de la procedure'
|
fill_in 'procedure_libelle', with: 'libelle de la procedure'
|
||||||
page.execute_script("$('#procedure_description').val('description de la procedure')")
|
page.execute_script("$('#procedure_description').val('description de la procedure')")
|
||||||
|
fill_in 'procedure_cadre_juridique', with: 'cadre juridique'
|
||||||
page.find_by_id('save-procedure').click
|
page.find_by_id('save-procedure').click
|
||||||
|
|
||||||
procedure = Procedure.last
|
procedure = Procedure.last
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue