simon lehericey
528b7ec3f8
refactor(champ): add required?
...
used for the `required` html attribute. It check visibility to avoid hidden required input which prevent the form from being sent.
2022-10-18 11:13:41 +02:00
Paul Chavard
c075a4e415
fix(dossier): we should never detroy user’s dossiers in cascade
2022-10-14 14:14:51 +02:00
simon lehericey
d5d031e15d
fix(export): do not export invisible champ
2022-10-14 10:30:27 +02:00
simon lehericey
40a3fff593
perf(dossiers_controller): do not load pj template in update, -10ms
2022-10-13 22:36:56 +02:00
simon lehericey
f8ee6386b9
perf(champ): check condition.present? without json deserializationl, -6ms
2022-10-13 22:36:56 +02:00
simon lehericey
73b4ee64e6
perf(champ_value): use champ_type instead of tdc.type_champ, -22ms
2022-10-13 22:36:56 +02:00
Eric Leroy-Terquem
c6082ded09
no select for usager if only one groupe_instructeur
2022-10-13 19:49:32 +02:00
Martin
d09c47f5ce
correctif(usager.fusion): leve une erreur quand on essaie de fusionner un compte sur lui même
2022-10-13 17:00:20 +02:00
Paul Chavard
1fd1878370
feat(jobs): add request_id to jobs payload
2022-10-12 14:32:23 +02:00
Paul Chavard
7f1dd49bdc
chore(flipper): always use feature_enabled? helper
2022-10-12 14:14:30 +02:00
Damien Le Thiec
29a97fac43
Merge branch 'main' into feature/add_rna_type_de_champs
2022-10-11 18:59:45 +02:00
Damien Le Thiec
0e995c8bcc
Update app/models/champs/rna_champ.rb
...
Co-authored-by: Paul Chavard <paul.chavard@beta.gouv.fr>
2022-10-11 16:34:00 +02:00
simon lehericey
7672ad3fe9
fix(editor champ): do not raise on destroy replay
2022-10-11 16:27:49 +02:00
Damien Le Thiec
73f6063c87
Merge branch 'main' into feature/add_rna_type_de_champs
2022-10-11 15:36:46 +02:00
Damien Le Thiec
2e8c0512a5
Remove skip_cleanup option
2022-10-11 15:11:51 +02:00
Damien Le Thiec
bcdc9c18ae
Remove skip_fetch_data mechanism
2022-10-11 11:52:59 +02:00
Paul Chavard
a19bf050ef
fix(iban): format iban after validation
2022-10-11 10:43:32 +02:00
simon lehericey
157c3778df
refactor(dossier_preloader): add option to laod pj_template
2022-10-10 12:31:40 +02:00
simon lehericey
7e03f0c825
refactor(dossier_preloader): add load_one api
2022-10-10 12:31:40 +02:00
simon lehericey
5920168077
refactor(dossier_preloader): preload piece_justificative_template
2022-10-10 12:31:40 +02:00
simon lehericey
1f95f68fcc
refactor(dossier_preloader): assign champ.parent
2022-10-10 12:31:40 +02:00
simon lehericey
5df76d9fec
refactor(dossier_preloader): remove weird set_inverse_instance
2022-10-10 12:31:40 +02:00
Martin
c921e6e1ee
fix(ProcedureExportService): downloadable_sorted_batch is scoped by export, no need to re-filter them via downloadablable_sorted_batch otherwise export for supprimes_recemment does not includes dossier.supprimes_recemment
2022-10-10 11:11:21 +02:00
Eric Leroy-Terquem
1177d861f4
add validation on routing_criteria_name
2022-10-10 09:48:11 +02:00
Martin
6752da40a9
test(procedure.direction): can we drop this column ?
2022-10-07 18:39:17 +02:00
simon lehericey
ceaf8ebbe7
fix: orphan tdc due to reset_draft
2022-10-07 17:44:30 +02:00
krichtof
44018a86de
a procedure without zone is finally valid
2022-10-07 16:59:12 +02:00
Christophe Robillard
272c8cae09
cannot publish a procedure if no zones
2022-10-07 10:48:35 +02:00
Christophe Robillard
bdcb451d3c
procedure publiee must have one zone at least
2022-10-07 10:48:35 +02:00
Christophe Robillard
94ca93e130
can choose multiple zones
2022-10-07 10:48:35 +02:00
Christophe Robillard
bffd9d61a9
add habtm between procedures and zones
2022-10-07 10:48:34 +02:00
simon lehericey
0e75f9960b
fix: send_dossier_decision preview
2022-10-06 17:43:09 +02:00
Martin
a256dfbaa0
fix(spec): missed a failed spec previously. sorry
2022-10-06 15:34:29 +02:00
mfo
8a3550cda4
Merge pull request #7860 from mfo/US/procedure-duree-up-to-manager
...
feat(procedure.max_duree_conservation_dossiers_dans_ds): make it more flexible
2022-10-06 11:36:50 +02:00
mfo
e76b97fcb5
Merge pull request #7862 from mfo/US/cleanup-other-col
...
clean(procedure.columns): :durees_conservation_required, :cerfa_flag, :test_started_at
2022-10-06 11:36:00 +02:00
Martin
883ba8717f
clean(procedure.columns): :durees_conservation_required, :cerfa_flag, :test_started_at
2022-10-05 18:03:49 +02:00
Martin
405a885160
feat(procedure.max_duree_conservation_dossiers_dans_ds): make it more flexible
2022-10-05 17:27:09 +02:00
Damien Le Thiec
abbbef1461
Fix tests
2022-10-05 13:07:39 +02:00
Damien Le Thiec
0131a41266
Merge branch 'main' into feature/add_rna_type_de_champs
2022-10-05 12:38:24 +02:00
Paul Chavard
432c4690b5
feat(tags): replace regexp based parser with a parser combinator
2022-10-05 11:25:37 +02:00
Eric Leroy-Terquem
acd874ccdf
reorder inside categories
2022-10-05 09:21:08 +02:00
Eric Leroy-Terquem
6925ca66e6
add grouped options for select
2022-10-05 09:21:08 +02:00
Damien Le Thiec
0d9f02c88d
First draft autofetch data for RNA
2022-10-04 22:11:01 +02:00
Damien Le Thiec
e694ff1f60
Fix update external id after validation
2022-10-04 17:19:16 +02:00
Martin
7125e8538a
clean(engagement): remove last pieces of engagement champs
2022-10-04 07:17:47 +02:00
simon lehericey
6a5a82ce06
fix(instructeur dashboard): dossiers filtered on multiple states
2022-10-03 15:18:46 +02:00
Martin
aceb8996c1
feat(instructeur/procedure#show): enhance sort by notifications as planned by UX
...
Update app/javascript/controllers/checkbox_controller.ts
Co-authored-by: Paul Chavard <github@paul.chavard.net>
2022-09-30 10:29:51 +02:00
Paul Chavard
462cc41caa
refactor(block): use block? instead of repetition?
2022-09-29 17:49:14 +02:00
Paul Chavard
df47f4a7ab
feat(graphql): new tokens should carry administrateur_id
2022-09-29 11:58:58 +02:00
Martin
d7cce3c982
fix(instructeur/procedures#show): Procedure presentation filterable state field is in conflict with projected state field. quick fix, maybe will refactor both to align them
2022-09-28 15:28:51 +02:00
Kara Diaby
e1999d5729
fix checkbox mandatory champ
2022-09-28 10:53:24 +02:00
simon lehericey
8efd305256
add upper_tdcs to condition_form
2022-09-28 10:06:31 +02:00
simon lehericey
7e1963865e
compatibility from left
2022-09-28 10:06:31 +02:00
simon lehericey
43f926a1de
to_s
2022-09-28 10:06:31 +02:00
simon lehericey
f98d1463a6
compatible_type
2022-09-28 10:06:31 +02:00
simon lehericey
cd2b08e39b
options
2022-09-28 10:06:31 +02:00
simon lehericey
12b6a0d6d6
errors
2022-09-28 10:06:31 +02:00
simon lehericey
70022450cf
type
2022-09-28 10:06:31 +02:00
Martin
17ed80b18a
clean(Champs::Engagement): migrate to Champs::Checkbox, some for TypeDeChamp
2022-09-27 19:09:28 +02:00
Martin
ba6c5b4db7
feat(instructeur/procedure#index): enhance filter to support processed_at and state [plus en_instruction_at/since]
...
feat(filter): enable filter on dossiers.state, dossiers.processed_at(since), dossiers.en_instruction_at(since)
2022-09-27 17:19:54 +02:00
Colin Darie
e18dbb976f
fix(graphql/serializer): PersonneMorale#date_creation may be null
...
Ça fix le passage du dossier dans un dossier "terminé" pour un dossier
dont un champ avec SIRET correspond à un établissement sans date de creation
connue.
2022-09-26 18:05:04 +02:00
Christophe Robillard
ddd5f6ece2
make label method name more explict
2022-09-26 16:58:53 +02:00
Christophe Robillard
f452e1014a
make label_at more concise
2022-09-26 16:58:53 +02:00
Christophe Robillard
240f1b249f
makes the NA label for zone more explicit
2022-09-26 16:58:53 +02:00
Christophe Robillard
9a9330159c
choose zone options with correct label
...
label of the zone is the one available when the procedure has been published (or at the creation if the procedure has not been published)
2022-09-26 16:58:53 +02:00
Christophe Robillard
62f19aba8a
get all available zones at specific date
2022-09-26 16:58:53 +02:00
Christophe Robillard
9773977496
know if a zone exist at a specific date
2022-09-26 16:58:53 +02:00
Christophe Robillard
59cce4203a
get zone label at specific date
2022-09-26 16:58:53 +02:00
Christophe Robillard
a504e82021
add zone label
2022-09-26 16:58:53 +02:00
simon lehericey
f53e8608ae
refactor(conditional): error message system
2022-09-26 10:21:15 +02:00
simon lehericey
ab42b27176
refactor(logic): add comments
2022-09-26 10:21:15 +02:00
simon lehericey
fcb9b55bc4
feat(conditional): add include operator
2022-09-26 10:21:15 +02:00
Damien Le Thiec
542c5b518f
Improve and connect RNA Adapter
2022-09-22 17:13:53 +02:00
Colin Darie
6a4a9c8e03
fix(cron/procedure-declarative): don't auto accept a dossier still in degraded mode
2022-09-22 16:26:14 +02:00
Colin Darie
9b929c86ea
Merge pull request #7760 from betagouv/dsfr-dossier-top-form
...
DSFR: convert dossier top form elements
2022-09-21 16:44:51 +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
Colin Darie
a5e1d8865b
style(france_connect_account): convert notice about FC user to DSFR
2022-09-21 15:47:35 +02:00
Paul Chavard
16bba911ba
Revert "Merge pull request #7637 from tchak/chore-add-missing-foreign-keys"
...
This reverts commit b21ee46dc2
, reversing
changes made to dd85b5c35c
.
2022-09-21 15:20:42 +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
Paul Chavard
84b9644bcd
fix(db): add missing foreign keys
2022-09-20 15:16:52 +02:00
Martin
eae05b0a6f
feat(export.xslx): add code commune to geo_area.label
2022-09-17 08:59:06 +02:00
Colin Darie
95a4e8a907
feat(api_entreprise): create etablissement with fallback when API is down
...
On créé l'établissement uniquement avec le SIRET, sans que ce soit bloquant
pour compléter le dossier. On demande à l'utilisateur de vérifier
lui-même la concordance du SIRET avec son entreprise.
Cf #7766
2022-09-16 10:43:59 +02:00
simon lehericey
c43bf2e5c9
fix(conditional): only parse user input as int if compared with a number
2022-09-09 11:28:32 +02:00
Paul Chavard
d35ceb7214
fix(champs): finish EditableChampComponent refactor
2022-09-08 11:26:29 +02:00
simon lehericey
ac0ac171ad
perf(dossier): remove unused row validation
...
Gain, one request per champ not child
2022-09-07 15:00:40 +02:00
Paul Chavard
c05bc61c99
fix(revisions): improuve changes information display
2022-09-07 13:52:44 +02:00
Colin Darie
91c735a219
chore(service): SIRET is required
2022-09-06 09:23:52 +02:00
Colin Darie
9d59a50cd4
chore(manager/services): show etablissement adresse & geopoint
2022-09-06 09:23:52 +02:00
Colin Darie
67cbc61e1e
chore(services): update etablissement adresse & geocode when siret changes
2022-09-06 09:23:52 +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
64ce2719ed
feat(services): accept an optional SIRET
...
Closes #7359
2022-09-06 09:23:52 +02:00
Colin Darie
a4d9a45280
chore(schema): +services#siret
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
simon lehericey
8c884b4869
fix(migration): fix avis email notification migration
2022-09-02 17:23:04 +02:00
Kara Diaby
f8d4644f73
models
2022-09-02 16:23:27 +02:00
Martin
5f2b290407
feat(Procedure.clone): reset subject.duree_conservation_dossiers_dans_ds when procedure.duree_conservation_etendue_par_ds was extended. only extends it on demand otherwise admin could clone old procedure with higher duree_conservation_dossiers_dans_ds
2022-08-31 14:56:00 +02:00
Martin
6e31decc2d
feat(Procedure.clone): stop cloning procedure service which is confusing for some administrateurs
2022-08-31 14:56:00 +02:00
Colin Darie
4ece7c2494
fix(champ): remove null byte before save
...
Les null bytes peuvent être injectés lors de c/c depuis certains documents,
et ne sont pas sauvegardables en base, rendant la sauvegarde d'un dossier impossible.
Closes #7656
https://sentry.io/organizations/demarches-simplifiees/issues/3194932607/activity/?project=1429550&query=is%3Aunresolved
2022-08-31 11:39:34 +02:00
Christian
63a4a13323
Graphql: Fix champs sort in repetition
2022-08-31 11:15:28 +02:00
Martin
2f5528398f
feat(manager#outdated_procedure): allow super admin to enable procedure_expires_when_termine_enabled for old procedure
...
revew(typo): various typo, tx christophe :-)
fix(spec): due to typo fixes
2022-08-24 13:10:48 +02:00
Martin
dc524cf615
fix(spec): broken spec due to TDD and refacto on former code
2022-08-23 13:28:10 +02:00
Martin
711b2ee2e4
feat(ExportComponent): only render it when connected instructeur/administrateur is not from manager
2022-08-23 13:28:10 +02:00
Martin
d1297bc1f5
tech(rubocopify): ... just clean up ...
2022-08-23 13:28:10 +02:00
Martin
c2e0994e11
feat(Administrateur::ArchivesController#*): prevent SuperAdmin to index/download archives
2022-08-23 13:28:10 +02:00
Martin
ef67958324
feat(manager): add #add_administrateur_with_confirmation and #confirm_add_administrateur so SuperAdmin requires another SuperAdmin approval to add an administrator to a procedure. Add #add_administrateur_and_instructeur for SuperAdmin willing to be administrateur/instructeur for 24
2022-08-23 13:28:10 +02:00
Martin
f0a4cbb61e
feat(assign_tos): add manager column to assign_tos table. Same idea as administrateur_procedures.manager which flag a link between procedure/administrateur coming from a SuperAdmin [target: able to avoid SuperAdmin sec issues]
2022-08-23 13:28:10 +02:00
simon lehericey
650c36e3e2
feat(conditional): add not eq operator
2022-08-10 11:59:09 +02:00
simon lehericey
898badb579
a champ is mandatory when visible with a mandatory tdc
2022-08-09 10:25:47 +02:00
Paul Chavard
a24885c2ee
feat(champ): can condition on other option
2022-08-04 15:28:54 +02:00
Paul Chavard
bbca7344e5
fix(conditional): mandatory champs inside hidden repetition should not be validated
2022-08-04 14:48:40 +02:00
Colin Darie
adced0f33a
fix(revision): fix stable siblings order when there are multiple identical position
...
Ça arrive parfois dans les tests, et potentiellement en prod :
après avoir créé un nouveau `revision_type_de_champ`,
on se retrouve très momentanément avec 2
RTDC ayant le même position en attendant le renumérotation peu près.
https://github.com/betagouv/demarches-simplifiees.fr/blob/main/app/models/procedure_revision.rb#L55
Ceci conduisait à une renumérotation erronnée quand la db renvoyait
le nouveau RTDC créé *avant* les précédents.
2022-08-03 18:29:48 +02:00
Colin Darie
8dc966feb4
fix(dossier_transfer): requires an actual email
...
Closes #7621
2022-08-03 11:44:54 +02:00
Paul Chavard
435a635b3d
fix(procedure_presentation): find last instance of type_de_champ through coordinates
2022-08-02 15:24:52 +02:00
Paul Chavard
48a4e8bec5
chore(db): remove already dropped ignored columns
2022-08-02 15:24:52 +02:00
Paul Chavard
782af3322a
fix(patron): when rendering “patron” champs should have dossier
2022-07-28 12:10:32 +02:00
Colin Darie
197fa54ea4
fix(archives): purge stuck pending archives
...
Cf 0cb096b3d6440a4da05ca2902ed6fa72a93e6579
2022-07-27 15:26:59 +02:00
Colin Darie
f1957e51f8
fix(exports): purge stuck (pending) exports, not generated or failed
...
Avec l'autre PR, ça reproduit le comportement d'avant, c'est à dire
que quoiqu'il arrive un export est purgé :
- soit 16h après sa génération (on a 16h pour le télécharger)
- soit 12h après sa création, et qu'il est bloqué
Auparavant, tous les exports étaient purgés au bout de 3h quelle que soit
le statut.
2022-07-27 15:26:59 +02:00
Colin Darie
67d2cb2061
chore(schema): add exports#job_status
...
Same behavior as Archive
On destroy tous les exports existants qui n'ont pas cette notion de status.
2022-07-26 17:53:24 +02:00
Colin Darie
6845b2ed08
fix(export): fix PurgeStaledExportsJob regression with stale
scope
...
cc #7547
2022-07-26 14:26:22 +02:00
Colin Darie
11cd73b4ac
feat(export/csv): list etablisement entreprise_etat_administratif
2022-07-25 10:58:02 +02:00
Colin Darie
f05e9331a7
chore(entreprises): save etat_administratif from API
2022-07-25 10:58:02 +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
simon lehericey
0d3856e84a
fix(conditional): handle incorrect user input
2022-07-22 15:55:43 +02:00
Paul Chavard
d9eea35ae8
fix(dossier): decoralate dropdown behaviour from autosave
2022-07-21 18:40:16 +02:00
Paul Chavard
3e40b6d7bc
fix(graphql): handle annotations inside blocks
2022-07-21 14:54:14 +02:00
Paul Chavard
902dc678de
perf(graphql): improuve dossier loading
2022-07-21 12:29:08 +02:00
Paul Chavard
042703cead
refactor(dossier): extract dossier preloader
2022-07-21 12:29:08 +02:00
simon lehericey
821fd2394b
small refactor
2022-07-20 15:48:16 +02:00
simon lehericey
72583f846b
champ value return nil if champ is hidden
2022-07-20 11:23:57 +02:00
Paul Chavard
e85fe71887
fix(champ): allow to submit when secondary options are empty
2022-07-20 10:49:07 +02:00
simon lehericey
2d26ba3507
fix: binary operator computes false by default
2022-07-19 10:11:24 +02:00
Martin
05b6b462b6
feat(new_max_duree_conservation): make it configurable for other instances
2022-07-18 14:08:53 +02:00
Martin
24c8dc5829
feat(procedure.duree_conservation_dossiers_dans_ds): decrease max duree_conservation_dossiers_dans_ds from 36 to 12
2022-07-18 14:08:53 +02:00
Paul Chavard
98a0bc8c71
refactor(condition): use dom_id with stable_id
2022-07-13 15:38:43 +02:00
Paul Chavard
0adfd92213
refactor(condition): use standard revision change ops
2022-07-13 15:32:25 +02:00
simon lehericey
2cad0e11d3
display condition change between version
2022-07-13 15:10:23 +02:00
Paul Chavard
0f9d8b6a39
feat(dossier): exclude conditionally invisible fields from mandatory check
2022-07-12 17:33:42 +02:00
Paul Chavard
120b593015
feat(dossier): toggle conditional champs visibility
2022-07-12 17:33:42 +02:00
simon lehericey
6f7fb9841c
fix: make edition annotation work again
2022-07-12 14:17:05 +02:00
Colin Darie
d805114a72
Revert "feat(revision): list updated placeholder option for generic type de champ"
...
This reverts commit fe0282e904
.
Continue 2bd33ada45b036f73f3fc78150621092e0667693
2022-07-12 11:37:58 +02:00
Colin Darie
8c08d0295b
Revert "feat(champ): customizable placeholders for text & textarea champs"
...
This reverts commit 9e26ee932e
.
Finalement les champs génériques ne doivent pas avoir de placeholder
personnalisable, ce sera uniquement via la description.
2022-07-12 11:37:58 +02:00
simon lehericey
c4c0c275e1
fix: coordinate_and_tdc return nil if not found
2022-07-12 10:44:40 +02:00
simon lehericey
faa2797d80
fix: champ_value for tdc destroyed
2022-07-12 10:44:40 +02:00
simon lehericey
2fee0ddfd4
feature: type_de_champ_controller
2022-07-12 10:44:40 +02:00
simon lehericey
256d4e4fda
refactor: reorder -> renumber
2022-07-12 10:44:40 +02:00
simon lehericey
64d82798a6
fix create_tdc after_stable_id
2022-07-12 10:16:22 +02:00
Colin Darie
fe0282e904
feat(revision): list updated placeholder option for generic type de champ
2022-07-11 17:16:20 +02:00
Colin Darie
9e26ee932e
feat(champ): customizable placeholders for text & textarea champs
...
Closes #7429
2022-07-11 17:16:20 +02:00