Lisa Durand
b2ba15a277
add specs
2023-07-04 11:40:11 +02:00
Eric Leroy-Terquem
a2c636d784
fix(tests): create groupe instructeurs with factory
2023-07-03 14:47:56 +02:00
Eric Leroy-Terquem
16676a3d3f
test(groupe instructeur): toggle routing in after create in factory
2023-07-03 14:47:56 +02:00
Paul Chavard
6723bdcd9d
fix(carto): no crash on points with elevation
2023-06-12 14:56:52 +02:00
Paul Chavard
c4432b1b47
perf(carto): use json schema to validate geojson instead of rgeo
2023-06-06 15:43:56 +02:00
Colin Darie
5ab44fc7a9
chore: rename dossier_resolution => dossier_correction
2023-06-02 16:16:14 +02:00
Colin Darie
2c79ca94f5
chore(schema): create dossier_corrections
2023-06-02 16:13:15 +02:00
krichtof
0051face93
Merge pull request #9014 from demarches-simplifiees/8859-default_zones
...
Etq admin, lors de la création ou modification d'une démarche, des zones par défaut me sont suggérées
2023-05-26 17:25:21 +00:00
simon lehericey
6f41f0e1c6
factories: add traits about files
2023-05-16 14:49:36 +02:00
Christophe Robillard
3705dc2553
determine default zones according to tchap hs
2023-05-16 09:40:53 +02:00
Colin Darie
25956c5141
fix(geoarea): geometry must not be nil
2023-04-22 16:23:39 +02:00
Paul Chavard
586286cb08
Merge pull request #8916 from demarches-simplifiees/can-update-defaut-groupe-instructeur-2
...
feat(routage): permet de changer le groupe par défaut
2023-04-20 08:28:46 +00:00
Martin
b9faa26560
amelioration(editeur-de-champs): permet de choisir un niveau de titre (de 1 à 3) pour les champs de type Champs::HeaderSectionChamp. Gère les erreurs dans le cas ou un administrateur supprimerait un HeaderSection qui casserait l'ordre des titre [ex: titre 1,2,3. et l'admin supprime le titre 1 et il reste que 2,3].
2023-04-20 08:22:02 +02:00
simon lehericey
79131cc294
fix spec
2023-04-19 13:52:42 +02:00
Colin Darie
7aba5ccc3e
chore(rubocop): fix Rails/DurationArithmetic
2023-04-19 12:55:13 +02:00
Paul Chavard
21b548d32b
fix(dossier): delete all champs starting with children
2023-04-13 11:08:10 +02:00
Martin
4f9c45c489
bug(export.pdf): ETQ expert, lorsque j'exporte un dossier, celui ci devrait contenir les avis non confidentiels ainsi que mes avis
2023-03-28 16:55:12 +02:00
Damien Le Thiec
731cd56594
Merge branch 'main' into feature/prefill_repetible
2023-02-22 19:49:06 +01:00
Martin
5e10e680dc
chore(spec): corrige les spec cassées et remanie un peu des specs ecrites
2023-02-20 11:47:14 +01:00
Martin
a89f5d373f
amelioration(procedures#filtres): filtre par regions avec un enum sur la collection des regions normalisés
2023-02-20 11:47:14 +01:00
Martin
68de0c6566
correctif(procedures#filtres): le filtre par departement ne fonctionnait plus. utilise un enum sur la collection des departements possible normalisés
2023-02-20 11:47:14 +01:00
Damien Le Thiec
dce4c84f9a
Merge branch 'main' into feature/prefill_repetible
2023-02-16 17:08:30 +01:00
sebastiencarceles
d5ffd61ab6
validate values inclusion
2023-02-16 10:49:15 +01:00
Damien Le Thiec
dbb92e7fd3
Merge branch 'main' into feature/prefill_repetible
2023-02-11 22:40:56 +01:00
Damien Le Thiec
b9c2d1251b
Add missing tests repetition prefill
2023-02-06 17:38:59 +01:00
Martin
6a25120f80
amelioration(dolist_api): echoue avec un fail pour remonter dans notre gestion des retry
2023-02-03 17:19:36 +01:00
Damien Le Thiec
63e7c17fda
First tests for prefill repetition
2023-02-03 12:14:18 +01:00
Colin Darie
eb9cd90ee8
chore(schema): +procedure#estimated_duration_visible
2023-02-01 11:02:55 +01:00
Paul Chavard
a4cbbe721e
feat(types de champ): add EPCI champ
2023-01-20 11:32:36 +01:00
Paul Chavard
cdb3ce65cb
feat(graphql): expose more information on demarche descriptor
2023-01-18 13:46:40 +01:00
Colin Darie
784b0458fe
feat(dolist): consolidate dispatched events with delivered emails
2023-01-18 09:56:40 +01:00
Sébastien Carceles
5c7b2ba1f3
feat(dossier): prefill drop down list champ ( #8361 )
...
* feat(dossier): prefill drop down list champ
* decorate the types de champ to avoid if / else
In order to avoid doing if this a drop down ? / else at several places,
we decorate the types de champ and let the decorator give the possible
and example values.
* show all possible values when there are too many
* allow to prefill 'other' option
* review: remove duplicate
* review: refactor for readability
* validate that value is in options
* review: exclude disabled options
2023-01-18 09:47:22 +01:00
Martin
0aba708b34
correctif(spec): associe le dossier suivis a l'instructeur du batch operation. sinon c'est un autre instructeur qui est crée
2023-01-16 11:14:29 +01:00
Lisa Durand
06c6a4ab0c
add action 'unfollow' to page 'suivis'
2023-01-16 11:14:29 +01:00
Lisa Durand
2f666b487e
add action 'repasser en construction' to page 'suivis'
2023-01-16 11:14:29 +01:00
Paul Chavard
af33d5d65c
refactor(repetition): use row_id instead of row
2023-01-10 19:31:41 +01:00
Lisa Durand
25a7fa5a34
add bulk action 'follow'
2023-01-09 11:58:51 +01:00
Lisa Durand
d7ebb67889
implement first step - accepte without motivation and PJ
2023-01-05 16:20:18 +01:00
Sébastien Carceles
fa6fc077b4
normalize boolean values ( #8320 )
...
* extract parent for yes no and checkbox champs
* checkbox stores true / false instead of on / off
* normalize blank value to nil
* normalize invalid value to false
* after party task: normalize checkbox values
* after party task: normalize yes_no values
2023-01-05 11:18:27 +00:00
Sébastien Carceles
20136b7ac8
feat(demarche): create and prefill a dossier with POST request ( #8233 )
...
* add base controller for public api
* add dossiers controller with basic checks
* create the dossier
* ensure content-type is json
* prefill dossier with given values
* mark a dossier as prefilled
When a dossier is prefilled, it's allowed not to have a user.
Plus, we add a secure token to the dossier, which we will need later to set a
user after sign in / sign up.
* set user as owner of an orphan prefilled dossier
When a visitor comes from the dossier_url answered by the public api,
the dossier is orphan:
- when the user is already authenticated: they become the owner
- when the user is not authenticated: they can sign in / sign up / france_connect
and then they become the owner
So here is the procedure:
- allow to sign in / sign up / france connect when user is unauthenticated
- set dossier ownership when the dossier is orphan
- check dossier ownership when the dossier is not
- redirect to brouillon path when user is signed in and owner
* mark the dossier as prefilled when it's prefilled
(even with a GET request, because it will be useful later on, for
exmample in order to cleanup the unused prefilled dossiers)
* system spec: prefilling dossier with post request
2023-01-03 14:46:10 +01:00
Martin
186d4e6539
correctif(ChampDepartement): gere les departement a 3 codes
2022-12-27 14:55:57 +01:00
Martin
48c80e9387
correctif(api/v1): ajoute la methode manquante for_api sur le type de champs departement
2022-12-27 11:45:43 +01:00
Damien Le Thiec
9e083ea3f7
Merge branch 'main' into feature/prefill_civility
2022-12-26 11:31:52 +01:00
Christophe Robillard
f4977f358b
fix spec procedure_cloning
...
add zone to new procedure
2022-12-21 09:02:16 +01:00
Damien Le Thiec
c4e427642f
Allow prefill civility
2022-12-20 14:38:05 +01:00
Sébastien Carceles
0a10a08c21
feat(demarche): describe procedure prefilling ( #8187 )
...
* feat(demarche): description
Show the description of an opendata procedure (published or draft),
with help about how to prefill a dossier for this procedure.
Co-authored-by: Damien Le Thiec <damien.lethiec@gmail.com>
2022-12-19 11:32:09 +00:00
Lisa Durand
89730b485b
add bulk action feature for 'passer_en_instruction'
2022-12-15 10:04:25 +01:00
Paul Chavard
243a8301bb
fix(dossier): authorize passage en instruction if auto archive is on and is in the past
2022-12-14 22:16:13 +01:00
Paul Chavard
ebbada752f
feat(api_token): add APIToken model
2022-12-07 18:19:37 +01:00
Martin
ea8bd13bcf
poc(batch_operation.purge): nettoie les batch terminé ou inutiles
2022-12-06 11:28:48 +01:00
Martin
b0ae2e8a0f
clean(spec): rubocopify / fix specs
2022-12-06 11:28:48 +01:00
Martin
eaf72162da
poc(batch_operation): some rewrite to avoid various conflict (when an instructeur try to create a job with an incompatible dossier regarding the current task). also soome cleanup to isole spec in least involved model
2022-12-06 11:28:48 +01:00
Martin
7df86c50fb
poc(batch_operations_controller): implement simple [not yet with procedure_presentation] action to create a batch operation
2022-12-06 11:28:48 +01:00
Martin
b11dbafc59
poc(batch_operation_job): implement archive dossiers with async behaviour, lock, run_at, finished_at, failed_dossier_ids, success_dossier_ids
2022-12-06 11:28:48 +01:00
Martin
61f4cded75
poc(batch_operation): just the model and some specs and a poc for archive them without async
2022-12-06 11:28:48 +01:00
Colin Darie
b8296c6d4d
feat(piece_justificative): supports multiple files
...
Closes #7924
2022-12-05 10:47:10 +01:00
Paul Chavard
c5901fbb95
clean(type_de_champ): remove magic factory
2022-12-01 16:36:59 +01:00
Paul Chavard
cafda4f6f0
refactor(attestation_template): move to procedure
2022-11-23 12:26:26 +01:00
Martin
90f7d265c6
amelioration(clone.piece_justificative): gestion du clonage des piece justificative dans une tache asynchrone
2022-11-14 09:13:54 +01:00
Martin
844004818a
amelioration(dossier.clone): dossier.clone, permet de cloner un dossier
2022-11-14 09:13:52 +01:00
Paul Chavard
e6288c39f2
refactor(dossier): champs -> champs_public
2022-11-10 22:44:39 +00:00
Eric Leroy-Terquem
aca2775874
remove routee? method
2022-11-04 12:03:44 +01:00
Martin
50c43f4819
correct(export): la creation d'archive pour un groupe d'instructeur, avec des filtres differents et identique doit etre consistante
2022-10-31 09:29:27 +01:00
Damien Le Thiec
73f6063c87
Merge branch 'main' into feature/add_rna_type_de_champs
2022-10-11 15:36:46 +02:00
Martin
6752da40a9
test(procedure.direction): can we drop this column ?
2022-10-07 18:39:17 +02:00
Christophe Robillard
bdcb451d3c
procedure publiee must have one zone at least
2022-10-07 10:48:35 +02:00
Martin
a256dfbaa0
fix(spec): missed a failed spec previously. sorry
2022-10-06 15:34:29 +02:00
Damien Le Thiec
0131a41266
Merge branch 'main' into feature/add_rna_type_de_champs
2022-10-05 12:38:24 +02:00
Martin
17ed80b18a
clean(Champs::Engagement): migrate to Champs::Checkbox, some for TypeDeChamp
2022-09-27 19:09:28 +02:00
Christophe Robillard
a504e82021
add zone label
2022-09-26 16:58:53 +02:00
Colin Darie
e7de19b24d
fix(dossier): avoir final state if etablissement is still in degraded mode
...
Maintenant qu'on autorise un dossier pour entreprise a être créé en mode "dégradé",
(avec établissement incomplet suite à API Entreprise/INSEE down…),
on empêche de l'accepter/refuser/classer sans suite tant qu'on a pas
vérifié son SIRET.
Fix https://sentry.io/organizations/demarches-simplifiees/issues/2839832517/?project=1429550&query=is%3Aunresolved
2022-09-21 16:00:59 +02:00
Damien Le Thiec
d8afe81034
Setup RNA champ
2022-09-21 15:18:08 +02:00
Damien Le Thiec
606ac48964
Add new RNA Type de champ
2022-09-21 15:17:23 +02:00
sebastiencarceles
b643660017
'Choix parmi une liste' becomes 'Choix unique'
...
closes #7374
2022-09-06 11:26:30 +02:00
Colin Darie
7d39cc6b3e
chore(schema): +services#etablissement_{infos,geopoint}
...
- `etablissement_infos` est une représentation partielle en jsonb
de ce qui est renvoyé par l'API Entreprise.
(On ne conserve que l'adresse pour le moment, utilisée pour le geocodage)
- `etablissement_geopoint` est le point (x,y) issu du géocodage de
l'établissement
2022-09-06 09:23:52 +02:00
Colin Darie
4e3b063b87
feat(carte/export): list geo labels
2022-09-05 11:02:51 +02:00
Martin
d1544bc4ae
feat(Administrateurs::ProcedureAdministrateurs): ensure admin from super admin can not add administrateur
2022-08-23 13:28:10 +02:00
Paul Chavard
a24885c2ee
feat(champ): can condition on other option
2022-08-04 15:28:54 +02:00
Paul Chavard
65e96002b1
refactor(spec): raise if old style factory is used
2022-08-04 12:10:32 +02:00
Paul Chavard
5e890cdb36
fix(factory): fix options handling on drop_down_list
2022-08-04 11:37:56 +02:00
Paul Chavard
ee9851091f
test(factory): add a new way to build/create types_de_champ
2022-08-02 16:21:33 +02:00
Colin Darie
e1d3d1f844
chore(schema): add entreprise_etat_administratif to etablissements
2022-07-25 10:58:02 +02:00
Martin
3e56fdd1d7
fix(export): when it takes more than 3 hours, exports are purge before being generated. make it possible to have an export that takes more than 3 hours and share this behaviour with kind of same class archive
2022-07-25 10:48:54 +02:00
Paul Chavard
3e40b6d7bc
fix(graphql): handle annotations inside blocks
2022-07-21 14:54:14 +02:00
Paul Chavard
430365768a
test(dossier.pdf): add a test case with piece_justificative inside repetition
2022-07-21 11:46:28 +02:00
Paul Chavard
fb37f8c5a8
fix(dossier): fix some reset draft changes edge cases
2022-07-06 16:52:12 +02:00
Martin
274b5eab2e
feat(invite): wrap invitation with targeted_user_links
2022-06-17 16:44:37 +02:00
Martin
cb890343ff
feat(targeted_user_link): add targeted user link to wrap expert invitation in order to avoid access issue when the expert is connected with another account
...
feat(user.merge): ensure to merge user.targeted_user_link
Update app/models/targeted_user_link.rb
Co-authored-by: LeSim <mail@simon.lehericey.net>
Update app/models/targeted_user_link.rb
Co-authored-by: LeSim <mail@simon.lehericey.net>
Update app/models/targeted_user_link.rb
Co-authored-by: LeSim <mail@simon.lehericey.net>
feat(db/create_targeted_user_links): ensure not null with fk
2022-05-31 14:50:31 +02:00
Paul Chavard
02675a104d
fix(revision): fix tests to use new revison system
2022-05-31 08:58:53 +02:00
simon lehericey
4d97f6aa8c
types_de_champ_for_revision
2022-05-18 11:40:34 +02:00
Paul Chavard
cdd597db19
refactor(dossier): fix champ repetition factories
2022-05-18 11:24:14 +02:00
simon lehericey
7f23449f24
remove set_position
2022-05-18 10:11:31 +02:00
Paul Chavard
b6ea44f7e7
refactor(revision): remove type_de_champ#revision_id
2022-05-17 11:31:49 +02:00
simon lehericey
64175db4dd
link children tdc by ProcedureRevisionTypeDeChamp
2022-05-06 10:34:40 +02:00
Martin
b1340586de
bug(type_de_champ.repetition): on repetition, when there is a TypeDeChamp::Commune, champs for export should contain 2 entries [one with commune (postal_code), the other for commune (code_insee)].
2022-05-06 09:38:45 +02:00
Pierre de La Morinerie
59d8479b85
dossiers: fix dossier_vide with drop_down_list
...
Previously a drop-down list with an ["Autre", "__other__"] value crashed
the PDF generation.
2022-05-04 16:34:37 +02:00
Paul Chavard
3384b535c5
refactor(champ): simplify siret champ
2022-05-03 16:14:54 +02:00
simon lehericey
ea361643be
types_de_champ -> types_de_champs_public
2022-05-03 11:05:24 +02:00
Paul Chavard
be1a2f916d
feat(exports): add statut and procedure_presentation to exports
2022-04-06 17:08:38 +02:00
Paul Chavard
51d7fd6190
test(dossier): update spec to use visible_by_administration
2022-03-10 14:29:40 +01:00