chore(doc): more information about many maintenance tasks
This commit is contained in:
parent
0d5b0e81e7
commit
9eb9e80232
28 changed files with 82 additions and 3 deletions
|
@ -2,6 +2,9 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class BackfillBulkMessagesWithProcedureIdTask < MaintenanceTasks::Task
|
class BackfillBulkMessagesWithProcedureIdTask < MaintenanceTasks::Task
|
||||||
|
# Périmètre: envoi d’un email groupé aux usagers ayant dossiers en brouillon.
|
||||||
|
# Change la manière dont ces messages sont liés aux démarches.
|
||||||
|
# 2024-03-12-01 PR #10071
|
||||||
def collection
|
def collection
|
||||||
BulkMessage
|
BulkMessage
|
||||||
.where(procedure: nil)
|
.where(procedure: nil)
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class BackfillCityNameTask < MaintenanceTasks::Task
|
class BackfillCityNameTask < MaintenanceTasks::Task
|
||||||
|
# corrige des données du champ adresse suite à un bug
|
||||||
|
# introduit pendant quelques jours début mars
|
||||||
|
# 2024-04-09-02 PR #10290
|
||||||
attribute :champ_ids, :string
|
attribute :champ_ids, :string
|
||||||
validates :champ_ids, presence: true
|
validates :champ_ids, presence: true
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class BackfillClonedChampsPrivatePieceJustificativesTask < MaintenanceTasks::Task
|
class BackfillClonedChampsPrivatePieceJustificativesTask < MaintenanceTasks::Task
|
||||||
|
# Supprime les PJ d’annotations privées
|
||||||
|
# qui étaient conservées par erreur lorsqu’un dossier était cloné
|
||||||
|
# 2024-05-27-01 PR #10435
|
||||||
def collection
|
def collection
|
||||||
Dossier.en_brouillon.where.not(parent_dossier_id: nil)
|
Dossier.en_brouillon.where.not(parent_dossier_id: nil)
|
||||||
end
|
end
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class BackfillClosingReasonInClosedProceduresTask < MaintenanceTasks::Task
|
class BackfillClosingReasonInClosedProceduresTask < MaintenanceTasks::Task
|
||||||
|
# Remet les messages de cloture d'une démarche proprement (sinon affichage KO).
|
||||||
|
# Suite de UpdateClosingReasonIfNoReplacedByIdTask
|
||||||
|
# 2024-05-27-01 PR #9930
|
||||||
def collection
|
def collection
|
||||||
Procedure
|
Procedure
|
||||||
.with_discarded
|
.with_discarded
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class BackfillCommuneCodeFromNameTask < MaintenanceTasks::Task
|
class BackfillCommuneCodeFromNameTask < MaintenanceTasks::Task
|
||||||
|
# corrige structure champs commune pour une démarche donnée. Suite à un bug ?
|
||||||
|
# 2024-05-31-01 PR #10469
|
||||||
|
|
||||||
attribute :procedure_id, :string
|
attribute :procedure_id, :string
|
||||||
validates :procedure_id, presence: true
|
validates :procedure_id, presence: true
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class BackfillDepartementServicesTask < MaintenanceTasks::Task
|
class BackfillDepartementServicesTask < MaintenanceTasks::Task
|
||||||
|
# Fait le lien service – département pour permettre
|
||||||
|
# le filtrage des démarches par département
|
||||||
|
# 2023-10-30-01 PR #9647
|
||||||
def collection
|
def collection
|
||||||
Service.where.not(etablissement_infos: nil)
|
Service.where.not(etablissement_infos: nil)
|
||||||
end
|
end
|
||||||
|
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class BackfillDeposeAtOnDeletedDossiersTask < MaintenanceTasks::Task
|
class BackfillDeposeAtOnDeletedDossiersTask < MaintenanceTasks::Task
|
||||||
|
# Améliore les stats à propos des dates de dépôts pour les dossiers supprimés
|
||||||
|
# 2024-04-05-01 PR #10259
|
||||||
def collection
|
def collection
|
||||||
DeletedDossier.where(depose_at: nil)
|
DeletedDossier.where(depose_at: nil)
|
||||||
end
|
end
|
||||||
|
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class BackfillEffectifAnnuelAnneeTask < MaintenanceTasks::Task
|
class BackfillEffectifAnnuelAnneeTask < MaintenanceTasks::Task
|
||||||
|
# API entreprise: rattrape les informations d'effectif
|
||||||
|
# 2024-05-27-01 PR #10053
|
||||||
def collection
|
def collection
|
||||||
Etablissement.where.not(entreprise_effectif_annuel: nil).where(entreprise_effectif_annuel_annee: nil)
|
Etablissement.where.not(entreprise_effectif_annuel: nil).where(entreprise_effectif_annuel_annee: nil)
|
||||||
end
|
end
|
||||||
|
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class BackfillInvalidDossiersForTiersTask < MaintenanceTasks::Task
|
class BackfillInvalidDossiersForTiersTask < MaintenanceTasks::Task
|
||||||
|
# Corrige les dossiers declarés pour un tiers mais sans avoir renseigné les infos du tiers
|
||||||
|
# 2024-05-22-01
|
||||||
def collection
|
def collection
|
||||||
Dossier.where(for_tiers: true).where(mandataire_first_name: nil)
|
Dossier.where(for_tiers: true).where(mandataire_first_name: nil)
|
||||||
end
|
end
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class CreatePreviewsForPjOfLatestDossiersTask < MaintenanceTasks::Task
|
class CreatePreviewsForPjOfLatestDossiersTask < MaintenanceTasks::Task
|
||||||
|
# Génère les vignettes de PJ existantes pour les dossiers déposés entre 2 dates (facultatif)
|
||||||
|
# Elles sont affichées dans le nouvel onglet "Pièces jointes" des instructeurs.
|
||||||
|
# 2024-07-11-01
|
||||||
attribute :start_text, :string
|
attribute :start_text, :string
|
||||||
validates :start_text, presence: true
|
validates :start_text, presence: true
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class CreateVariantsForPjOfLatestDossiersTask < MaintenanceTasks::Task
|
class CreateVariantsForPjOfLatestDossiersTask < MaintenanceTasks::Task
|
||||||
|
# Génère les vignettes de fichiers PDF pour les dossiers déposés entre 2 dates (facultatif)
|
||||||
|
# Elles sont affichées dans le nouvel onglet "Pièces jointes" des instructeurs.
|
||||||
|
# 2024-07-11-01
|
||||||
attribute :start_text, :string
|
attribute :start_text, :string
|
||||||
validates :start_text, presence: true
|
validates :start_text, presence: true
|
||||||
|
|
||||||
|
|
|
@ -2,10 +2,10 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class DeleteDraftRevisionTypeDeChampsTask < MaintenanceTasks::Task
|
class DeleteDraftRevisionTypeDeChampsTask < MaintenanceTasks::Task
|
||||||
csv_collection
|
# Modifie le form d’une démarche à partir d’un CSV (dev spécifique Fonds Verts).
|
||||||
|
|
||||||
# See UpdateDraftRevisionTypeDeChampsTask for more information
|
# See UpdateDraftRevisionTypeDeChampsTask for more information
|
||||||
# Just add delete_flag with "true" to effectively remove the type de champ from the draft.
|
# Just add delete_flag with "true" in CSV to effectively remove the type de champ from the draft.
|
||||||
|
csv_collection
|
||||||
|
|
||||||
def process(row)
|
def process(row)
|
||||||
return unless row["delete_flag"] == "true"
|
return unless row["delete_flag"] == "true"
|
||||||
|
|
|
@ -2,6 +2,10 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class DestroyIncompleteBulkMessagesTask < MaintenanceTasks::Task
|
class DestroyIncompleteBulkMessagesTask < MaintenanceTasks::Task
|
||||||
|
# Périmètre: envoi d’un email groupé aux usagers ayant dossiers en brouillon.
|
||||||
|
# Change la manière dont ces messages sont liés aux démarches.
|
||||||
|
# Suite de BackfillBulkMessagesWithProcedureIdTask
|
||||||
|
# 2024-03-12-01 PR #10071
|
||||||
def collection
|
def collection
|
||||||
BulkMessage.where(procedure: nil).where.missing(:groupe_instructeurs)
|
BulkMessage.where(procedure: nil).where.missing(:groupe_instructeurs)
|
||||||
end
|
end
|
||||||
|
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class DestroyProcedureWithoutAdministrateurAndWithoutDossierTask < MaintenanceTasks::Task
|
class DestroyProcedureWithoutAdministrateurAndWithoutDossierTask < MaintenanceTasks::Task
|
||||||
|
# suppression de procédures closes sans admin et sans dossier
|
||||||
|
# 2024-03-18-01 PR #10125
|
||||||
def collection
|
def collection
|
||||||
Procedure.with_discarded.where.missing(:administrateurs, :dossiers)
|
Procedure.with_discarded.where.missing(:administrateurs, :dossiers)
|
||||||
end
|
end
|
||||||
|
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class DisableRemainingInvalidMonAvisTask < MaintenanceTasks::Task
|
class DisableRemainingInvalidMonAvisTask < MaintenanceTasks::Task
|
||||||
|
# Supprime les codes d’intégration « mon avis » invalides
|
||||||
|
# 2024-03-18-01 PR #10120
|
||||||
def collection
|
def collection
|
||||||
# rubocop:disable DS/Unscoped
|
# rubocop:disable DS/Unscoped
|
||||||
Procedure.unscoped.where.not(monavis_embed: nil)
|
Procedure.unscoped.where.not(monavis_embed: nil)
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class FixDecimalNumberWithSpacesTask < MaintenanceTasks::Task
|
class FixDecimalNumberWithSpacesTask < MaintenanceTasks::Task
|
||||||
|
# normalise les champs nombres en y supprimant les éventuels espaces
|
||||||
|
# 2024-07-01-01 PR #10554
|
||||||
|
|
||||||
ANY_SPACES = /[[:space:]]/
|
ANY_SPACES = /[[:space:]]/
|
||||||
def collection
|
def collection
|
||||||
Champs::DecimalNumberChamp.where.not(value: nil)
|
Champs::DecimalNumberChamp.where.not(value: nil)
|
||||||
|
|
|
@ -2,6 +2,10 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class FixDureeConservationGreaterThanMaxDureeConservationTask < MaintenanceTasks::Task
|
class FixDureeConservationGreaterThanMaxDureeConservationTask < MaintenanceTasks::Task
|
||||||
|
# Corrige la durée de conservation des dossiers :
|
||||||
|
# pour toutes les démarches dont la durée de conservation est supérieure
|
||||||
|
# à celle de l'instance, on prend la durée max de DS (12 mois)
|
||||||
|
# 2024-05-27-01 PR #10107
|
||||||
def collection
|
def collection
|
||||||
Procedure.where('duree_conservation_dossiers_dans_ds > max_duree_conservation_dossiers_dans_ds')
|
Procedure.where('duree_conservation_dossiers_dans_ds > max_duree_conservation_dossiers_dans_ds')
|
||||||
end
|
end
|
||||||
|
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class FixOpenProceduresWithClosingReasonTask < MaintenanceTasks::Task
|
class FixOpenProceduresWithClosingReasonTask < MaintenanceTasks::Task
|
||||||
|
# Corrige des démarches avec un motif de fermerture alors qu’elles ont été publiées
|
||||||
|
# 2024-05-27-01 PR #10181
|
||||||
def collection
|
def collection
|
||||||
Procedure
|
Procedure
|
||||||
.with_discarded
|
.with_discarded
|
||||||
|
|
|
@ -2,6 +2,10 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class MoveDolToColdStorageTask < MaintenanceTasks::Task
|
class MoveDolToColdStorageTask < MaintenanceTasks::Task
|
||||||
|
# Opération de rattrapage suite à un cron qui ne fonctionnait plus.
|
||||||
|
# Permet de déplacer toutes les traces fonctionnelles (DossierOperationLog)
|
||||||
|
# vers le stockage object plutot que de les conserver en BDD
|
||||||
|
# 2024-04-15-01
|
||||||
attribute :start_text, :string
|
attribute :start_text, :string
|
||||||
validates :start_text, presence: true
|
validates :start_text, presence: true
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,11 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class RecomputeBlobChecksumTask < MaintenanceTasks::Task
|
class RecomputeBlobChecksumTask < MaintenanceTasks::Task
|
||||||
|
# Avant février 2024, les filigranes ont corrompu les hash des fichiers.
|
||||||
|
# Régulièrement, des dossiers en brouillon étaient déposés avec ce problème
|
||||||
|
# (on retrouve les fichiers corrompu dans l'onglet retry de sidekiq).
|
||||||
|
# Cette tache recalcule les hashes.
|
||||||
|
# 2024-05-27-01
|
||||||
attribute :blob_ids, :string
|
attribute :blob_ids, :string
|
||||||
validates :blob_ids, presence: true
|
validates :blob_ids, presence: true
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class SamsungBrowserIsSupportedTask < MaintenanceTasks::Task
|
class SamsungBrowserIsSupportedTask < MaintenanceTasks::Task
|
||||||
|
# Corrige une donnée si le navigateur utilisé
|
||||||
|
# dans l’historique des Traitements des dossiers
|
||||||
|
# 2024-02-21-01
|
||||||
def collection
|
def collection
|
||||||
Traitement.where(browser_name: 'Samsung Browser', browser_version: 12..)
|
Traitement.where(browser_name: 'Samsung Browser', browser_version: 12..)
|
||||||
end
|
end
|
||||||
|
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class SpreadDossierDeletionTask < MaintenanceTasks::Task
|
class SpreadDossierDeletionTask < MaintenanceTasks::Task
|
||||||
|
# Contourne un égorgement de suppression de millions de dossiers qui aurait eu lieu le même jour
|
||||||
|
# 2024-05-27-01 PR #10062
|
||||||
ERROR_OCCURED_AT = Date.new(2024, 2, 14)
|
ERROR_OCCURED_AT = Date.new(2024, 2, 14)
|
||||||
ERROR_OCCURED_RANGE = ERROR_OCCURED_AT.at_midnight..(ERROR_OCCURED_AT + 1.day)
|
ERROR_OCCURED_RANGE = ERROR_OCCURED_AT.at_midnight..(ERROR_OCCURED_AT + 1.day)
|
||||||
SPREAD_DURATION_IN_DAYS = 150
|
SPREAD_DURATION_IN_DAYS = 150
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class UpdateClosingReasonIfNoReplacedByIdTask < MaintenanceTasks::Task
|
class UpdateClosingReasonIfNoReplacedByIdTask < MaintenanceTasks::Task
|
||||||
|
# Remet les messages de cloture d'une démarche proprement (sinon affichage KO).
|
||||||
|
# Avant BackfillClosingReasonInClosedProceduresTask
|
||||||
|
# 2024-03-21-01 PR #10158
|
||||||
def collection
|
def collection
|
||||||
Procedure
|
Procedure
|
||||||
.with_discarded
|
.with_discarded
|
||||||
|
|
|
@ -2,6 +2,10 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class UpdateConditionsBasedOnCommuneOrEpciChampTask < MaintenanceTasks::Task
|
class UpdateConditionsBasedOnCommuneOrEpciChampTask < MaintenanceTasks::Task
|
||||||
|
# Met à jour les conditions et règles de routage
|
||||||
|
# pour les champs communes et ECPI suite à l'ajout de nouveaux opérateurs
|
||||||
|
# Voir aussi UpdateRoutingRulesBasedOnCommuneOrEpciChampTask
|
||||||
|
# 2023-12-20-01 PR #9850
|
||||||
include Logic
|
include Logic
|
||||||
|
|
||||||
def collection
|
def collection
|
||||||
|
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class UpdateDraftRevisionTypeDeChampsTask < MaintenanceTasks::Task
|
class UpdateDraftRevisionTypeDeChampsTask < MaintenanceTasks::Task
|
||||||
|
# Modifie le form d’une démarche à partir d’un CSV (dev pour les Fonds Verts)
|
||||||
|
|
||||||
csv_collection
|
csv_collection
|
||||||
|
|
||||||
# CSV structure:
|
# CSV structure:
|
||||||
|
|
|
@ -2,6 +2,10 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class UpdateRoutingRulesBasedOnCommuneOrEpciChampTask < MaintenanceTasks::Task
|
class UpdateRoutingRulesBasedOnCommuneOrEpciChampTask < MaintenanceTasks::Task
|
||||||
|
# Ces 2 tâches mettent à jour les conditions et règles de routage
|
||||||
|
# pour les champs communes et ECPI suite à l'ajout de nouveaux opérateurs
|
||||||
|
# Voir aussi UpdateConditionsBasedOnCommuneOrEpciChampTask
|
||||||
|
# 2023-12-20-01 PR #9850
|
||||||
include Logic
|
include Logic
|
||||||
|
|
||||||
def collection
|
def collection
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class UpdateServiceEtablissementInfosTask < MaintenanceTasks::Task
|
class UpdateServiceEtablissementInfosTask < MaintenanceTasks::Task
|
||||||
|
# Géocode les services à partir des établissements
|
||||||
|
# 2024-05-27-01 PR #10106
|
||||||
|
|
||||||
# No more 20 geocoding by 10 seconds window
|
# No more 20 geocoding by 10 seconds window
|
||||||
THROTTLE_LIMIT = 20
|
THROTTLE_LIMIT = 20
|
||||||
THROTTLE_PERIOD = 10.seconds
|
THROTTLE_PERIOD = 10.seconds
|
||||||
|
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
module Maintenance
|
module Maintenance
|
||||||
class UpdateZonesTask < MaintenanceTasks::Task
|
class UpdateZonesTask < MaintenanceTasks::Task
|
||||||
|
# Synchronise les zones en base à partir du fichier de config zones.yml
|
||||||
|
# 2024-05-27-01 PR #10077
|
||||||
def collection
|
def collection
|
||||||
config = Psych.safe_load(Rails.root.join("config", "zones.yml").read)
|
config = Psych.safe_load(Rails.root.join("config", "zones.yml").read)
|
||||||
config['ministeres']
|
config['ministeres']
|
||||||
|
|
Loading…
Reference in a new issue