Add Style/CollectionMethods to rubocop
This commit is contained in:
parent
3f970eee74
commit
3b8d3b7967
37 changed files with 67 additions and 60 deletions
|
@ -866,7 +866,14 @@ Style/ClassVars:
|
||||||
Enabled: false
|
Enabled: false
|
||||||
|
|
||||||
Style/CollectionMethods:
|
Style/CollectionMethods:
|
||||||
Enabled: false
|
PreferredMethods:
|
||||||
|
collect: map
|
||||||
|
collect!: map!
|
||||||
|
inject: reduce
|
||||||
|
detect: find
|
||||||
|
select: filter
|
||||||
|
find_all: filter
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
Style/ColonMethodCall:
|
Style/ColonMethodCall:
|
||||||
Enabled: true
|
Enabled: true
|
||||||
|
|
|
@ -36,7 +36,7 @@ module CreateAvisConcern
|
||||||
|
|
||||||
if failed.any?
|
if failed.any?
|
||||||
flash.now.alert = failed
|
flash.now.alert = failed
|
||||||
.select { |avis| avis.errors.present? }
|
.filter { |avis| avis.errors.present? }
|
||||||
.map { |avis| "#{avis.email} : #{avis.errors.full_messages.join(', ')}" }
|
.map { |avis| "#{avis.email} : #{avis.errors.full_messages.join(', ')}" }
|
||||||
|
|
||||||
# When an error occurs, return the avis back to the controller
|
# When an error occurs, return the avis back to the controller
|
||||||
|
|
|
@ -76,7 +76,7 @@ module Instructeurs
|
||||||
|
|
||||||
if @current_filters.count > 0
|
if @current_filters.count > 0
|
||||||
filtered_ids = procedure_presentation.filtered_ids(@dossiers, statut)
|
filtered_ids = procedure_presentation.filtered_ids(@dossiers, statut)
|
||||||
filtered_sorted_ids = sorted_ids.select { |id| filtered_ids.include?(id) }
|
filtered_sorted_ids = sorted_ids.filter { |id| filtered_ids.include?(id) }
|
||||||
else
|
else
|
||||||
filtered_sorted_ids = sorted_ids
|
filtered_sorted_ids = sorted_ids
|
||||||
end
|
end
|
||||||
|
|
|
@ -24,11 +24,11 @@ class RootController < ApplicationController
|
||||||
.map.with_index { |type_de_champ, i| type_de_champ.champ.build(id: i) }
|
.map.with_index { |type_de_champ, i| type_de_champ.champ.build(id: i) }
|
||||||
|
|
||||||
all_champs
|
all_champs
|
||||||
.select { |champ| champ.type_champ == TypeDeChamp.type_champs.fetch(:header_section) }
|
.filter { |champ| champ.type_champ == TypeDeChamp.type_champs.fetch(:header_section) }
|
||||||
.each { |champ| champ.type_de_champ.libelle = 'un super titre de section' }
|
.each { |champ| champ.type_de_champ.libelle = 'un super titre de section' }
|
||||||
|
|
||||||
all_champs
|
all_champs
|
||||||
.select { |champ| [TypeDeChamp.type_champs.fetch(:drop_down_list), TypeDeChamp.type_champs.fetch(:multiple_drop_down_list)].include?(champ.type_champ) }
|
.filter { |champ| [TypeDeChamp.type_champs.fetch(:drop_down_list), TypeDeChamp.type_champs.fetch(:multiple_drop_down_list)].include?(champ.type_champ) }
|
||||||
.each do |champ|
|
.each do |champ|
|
||||||
champ.type_de_champ.drop_down_list = DropDownList.new(type_de_champ: champ.type_de_champ)
|
champ.type_de_champ.drop_down_list = DropDownList.new(type_de_champ: champ.type_de_champ)
|
||||||
champ.drop_down_list.value =
|
champ.drop_down_list.value =
|
||||||
|
@ -47,7 +47,7 @@ class RootController < ApplicationController
|
||||||
|
|
||||||
type_champ_values.each do |(type_champ, value)|
|
type_champ_values.each do |(type_champ, value)|
|
||||||
all_champs
|
all_champs
|
||||||
.select { |champ| champ.type_champ == type_champ }
|
.filter { |champ| champ.type_champ == type_champ }
|
||||||
.each { |champ| champ.value = value }
|
.each { |champ| champ.value = value }
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -356,7 +356,7 @@ class StatsController < ApplicationController
|
||||||
if weekly_dossiers_count == 0
|
if weekly_dossiers_count == 0
|
||||||
result = 0
|
result = 0
|
||||||
else
|
else
|
||||||
weekly_dossier_with_avis_count = weekly_dossiers.select { |dossier| dossier.avis.present? }.count
|
weekly_dossier_with_avis_count = weekly_dossiers.filter { |dossier| dossier.avis.present? }.count
|
||||||
result = percentage(weekly_dossier_with_avis_count, weekly_dossiers_count)
|
result = percentage(weekly_dossier_with_avis_count, weekly_dossiers_count)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ module Users
|
||||||
.includes(:procedure)
|
.includes(:procedure)
|
||||||
.map(&:procedure)
|
.map(&:procedure)
|
||||||
.uniq
|
.uniq
|
||||||
.select(&:publiee?)
|
.filter(&:publiee?)
|
||||||
|
|
||||||
@popular_demarches = Procedure
|
@popular_demarches = Procedure
|
||||||
.includes(:service)
|
.includes(:service)
|
||||||
|
|
|
@ -2,19 +2,19 @@ class Champs::CarteChamp < Champ
|
||||||
# We are not using scopes here as we want to access
|
# We are not using scopes here as we want to access
|
||||||
# the following collections on unsaved records.
|
# the following collections on unsaved records.
|
||||||
def cadastres
|
def cadastres
|
||||||
geo_areas.select do |area|
|
geo_areas.filter do |area|
|
||||||
area.source == GeoArea.sources.fetch(:cadastre)
|
area.source == GeoArea.sources.fetch(:cadastre)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def quartiers_prioritaires
|
def quartiers_prioritaires
|
||||||
geo_areas.select do |area|
|
geo_areas.filter do |area|
|
||||||
area.source == GeoArea.sources.fetch(:quartier_prioritaire)
|
area.source == GeoArea.sources.fetch(:quartier_prioritaire)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def parcelles_agricoles
|
def parcelles_agricoles
|
||||||
geo_areas.select do |area|
|
geo_areas.filter do |area|
|
||||||
area.source == GeoArea.sources.fetch(:parcelle_agricole)
|
area.source == GeoArea.sources.fetch(:parcelle_agricole)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -30,7 +30,7 @@ class Champs::LinkedDropDownListChamp < Champ
|
||||||
end
|
end
|
||||||
|
|
||||||
def to_s
|
def to_s
|
||||||
value.present? ? [primary_value, secondary_value].select(&:present?).join(' / ') : ""
|
value.present? ? [primary_value, secondary_value].filter(&:present?).join(' / ') : ""
|
||||||
end
|
end
|
||||||
|
|
||||||
def for_export
|
def for_export
|
||||||
|
|
|
@ -4,6 +4,6 @@ class Champs::PaysChamp < Champs::TextChamp
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.disabled_options
|
def self.disabled_options
|
||||||
pays.select { |v| (v =~ /^--.*--$/).present? }
|
pays.filter { |v| (v =~ /^--.*--$/).present? }
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -179,7 +179,7 @@ module TagsSubstitutionConcern
|
||||||
raise NameError.new("The class #{self.class.name} includes TagsSubstitutionConcern, it should define the DOSSIER_STATE constant but it does not", :DOSSIER_STATE)
|
raise NameError.new("The class #{self.class.name} includes TagsSubstitutionConcern, it should define the DOSSIER_STATE constant but it does not", :DOSSIER_STATE)
|
||||||
end
|
end
|
||||||
|
|
||||||
tags.select { |tag| tag[:available_for_states].include?(self.class::DOSSIER_STATE) }
|
tags.filter { |tag| tag[:available_for_states].include?(self.class::DOSSIER_STATE) }
|
||||||
end
|
end
|
||||||
|
|
||||||
def champ_public_tags
|
def champ_public_tags
|
||||||
|
@ -213,12 +213,12 @@ module TagsSubstitutionConcern
|
||||||
|
|
||||||
tags_and_datas
|
tags_and_datas
|
||||||
.map { |(tags, data)| [filter_tags(tags), data] }
|
.map { |(tags, data)| [filter_tags(tags), data] }
|
||||||
.inject(text) { |acc, (tags, data)| replace_tags_with_values_from_data(acc, tags, data) }
|
.reduce(text) { |acc, (tags, data)| replace_tags_with_values_from_data(acc, tags, data) }
|
||||||
end
|
end
|
||||||
|
|
||||||
def replace_tags_with_values_from_data(text, tags, data)
|
def replace_tags_with_values_from_data(text, tags, data)
|
||||||
if data.present?
|
if data.present?
|
||||||
tags.inject(text) do |acc, tag|
|
tags.reduce(text) do |acc, tag|
|
||||||
replace_tag(acc, tag, data)
|
replace_tag(acc, tag, data)
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
|
|
|
@ -426,15 +426,15 @@ class Dossier < ApplicationRecord
|
||||||
end
|
end
|
||||||
|
|
||||||
def check_mandatory_champs
|
def check_mandatory_champs
|
||||||
(champs + champs.select(&:repetition?).flat_map(&:champs))
|
(champs + champs.filter(&:repetition?).flat_map(&:champs))
|
||||||
.select(&:mandatory_and_blank?)
|
.filter(&:mandatory_and_blank?)
|
||||||
.map do |champ|
|
.map do |champ|
|
||||||
"Le champ #{champ.libelle.truncate(200)} doit être rempli."
|
"Le champ #{champ.libelle.truncate(200)} doit être rempli."
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def modifier_annotations!(instructeur)
|
def modifier_annotations!(instructeur)
|
||||||
champs_private.select(&:value_previously_changed?).each do |champ|
|
champs_private.filter(&:value_previously_changed?).each do |champ|
|
||||||
log_dossier_operation(instructeur, :modifier_annotation, champ)
|
log_dossier_operation(instructeur, :modifier_annotation, champ)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -9,7 +9,7 @@ class DropDownList < ApplicationRecord
|
||||||
end
|
end
|
||||||
|
|
||||||
def disabled_options
|
def disabled_options
|
||||||
options.select { |v| (v =~ /^--.*--$/).present? }
|
options.filter { |v| (v =~ /^--.*--$/).present? }
|
||||||
end
|
end
|
||||||
|
|
||||||
def multiple
|
def multiple
|
||||||
|
|
|
@ -74,7 +74,7 @@ class Instructeur < ApplicationRecord
|
||||||
active_procedure_overviews = procedures
|
active_procedure_overviews = procedures
|
||||||
.publiees
|
.publiees
|
||||||
.map { |procedure| procedure.procedure_overview(start_date) }
|
.map { |procedure| procedure.procedure_overview(start_date) }
|
||||||
.select(&:had_some_activities?)
|
.filter(&:had_some_activities?)
|
||||||
|
|
||||||
if active_procedure_overviews.count == 0
|
if active_procedure_overviews.count == 0
|
||||||
nil
|
nil
|
||||||
|
|
|
@ -30,7 +30,7 @@ class TypesDeChamp::LinkedDropDownListTypeDeChamp < TypesDeChamp::TypeDeChampBas
|
||||||
description: "#{description} (menu primaire)",
|
description: "#{description} (menu primaire)",
|
||||||
lambda: -> (champs) {
|
lambda: -> (champs) {
|
||||||
champs
|
champs
|
||||||
.detect { |champ| champ.type_de_champ == tdc }
|
.find { |champ| champ.type_de_champ == tdc }
|
||||||
&.primary_value
|
&.primary_value
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -41,7 +41,7 @@ class TypesDeChamp::LinkedDropDownListTypeDeChamp < TypesDeChamp::TypeDeChampBas
|
||||||
description: "#{description} (menu secondaire)",
|
description: "#{description} (menu secondaire)",
|
||||||
lambda: -> (champs) {
|
lambda: -> (champs) {
|
||||||
champs
|
champs
|
||||||
.detect { |champ| champ.type_de_champ == tdc }
|
.find { |champ| champ.type_de_champ == tdc }
|
||||||
&.secondary_value
|
&.secondary_value
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,7 +14,7 @@ class TypesDeChamp::TypeDeChampBase
|
||||||
libelle: libelle,
|
libelle: libelle,
|
||||||
description: description,
|
description: description,
|
||||||
lambda: -> (champs) {
|
lambda: -> (champs) {
|
||||||
champs.detect { |champ| champ.type_de_champ == tdc }
|
champs.find { |champ| champ.type_de_champ == tdc }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
|
@ -39,7 +39,7 @@ class AdministrateurUsageStatisticsService
|
||||||
ds_nb_demarches_brouillons: nb_demarches_by_administrateur_id_and_state[[administrateur.id, "brouillon"]],
|
ds_nb_demarches_brouillons: nb_demarches_by_administrateur_id_and_state[[administrateur.id, "brouillon"]],
|
||||||
|
|
||||||
nb_demarches_test: nb_dossiers_by_procedure_id
|
nb_demarches_test: nb_dossiers_by_procedure_id
|
||||||
.select { |procedure_id, count| count > 0 && is_brouillon(procedure_id) }
|
.filter { |procedure_id, count| count > 0 && is_brouillon(procedure_id) }
|
||||||
.count,
|
.count,
|
||||||
nb_demarches_prod: nb_dossiers_by_procedure_id
|
nb_demarches_prod: nb_dossiers_by_procedure_id
|
||||||
.reject { |procedure_id, count| count == 0 || is_brouillon(procedure_id) }
|
.reject { |procedure_id, count| count == 0 || is_brouillon(procedure_id) }
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
class PiecesJustificativesService
|
class PiecesJustificativesService
|
||||||
def self.liste_pieces_justificatives(dossier)
|
def self.liste_pieces_justificatives(dossier)
|
||||||
champs_blocs_repetables = dossier.champs
|
champs_blocs_repetables = dossier.champs
|
||||||
.select { |c| c.type_champ == TypeDeChamp.type_champs.fetch(:repetition) }
|
.filter { |c| c.type_champ == TypeDeChamp.type_champs.fetch(:repetition) }
|
||||||
.flat_map(&:champs)
|
.flat_map(&:champs)
|
||||||
|
|
||||||
champs_pieces_justificatives_with_attachments(
|
champs_pieces_justificatives_with_attachments(
|
||||||
|
@ -15,7 +15,7 @@ class PiecesJustificativesService
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.serialize_types_de_champ_as_type_pj(procedure)
|
def self.serialize_types_de_champ_as_type_pj(procedure)
|
||||||
tdcs = procedure.types_de_champ.select { |type_champ| type_champ.old_pj.present? }
|
tdcs = procedure.types_de_champ.filter { |type_champ| type_champ.old_pj.present? }
|
||||||
tdcs.map.with_index do |type_champ, order_place|
|
tdcs.map.with_index do |type_champ, order_place|
|
||||||
description = type_champ.description
|
description = type_champ.description
|
||||||
if /^(?<original_description>.*?)(?:[\r\n]+)Récupérer le formulaire vierge pour mon dossier : (?<lien_demarche>http.*)$/m =~ description
|
if /^(?<original_description>.*?)(?:[\r\n]+)Récupérer le formulaire vierge pour mon dossier : (?<lien_demarche>http.*)$/m =~ description
|
||||||
|
@ -32,7 +32,7 @@ class PiecesJustificativesService
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.serialize_champs_as_pjs(dossier)
|
def self.serialize_champs_as_pjs(dossier)
|
||||||
dossier.champs.select { |champ| champ.type_de_champ.old_pj }.map do |champ|
|
dossier.champs.filter { |champ| champ.type_de_champ.old_pj }.map do |champ|
|
||||||
{
|
{
|
||||||
created_at: champ.created_at&.in_time_zone('UTC'),
|
created_at: champ.created_at&.in_time_zone('UTC'),
|
||||||
type_de_piece_justificative_id: champ.type_de_champ.old_pj[:stable_id],
|
type_de_piece_justificative_id: champ.type_de_champ.old_pj[:stable_id],
|
||||||
|
@ -46,7 +46,7 @@ class PiecesJustificativesService
|
||||||
|
|
||||||
def self.champs_pieces_justificatives_with_attachments(champs)
|
def self.champs_pieces_justificatives_with_attachments(champs)
|
||||||
champs
|
champs
|
||||||
.select { |c| c.type_champ == TypeDeChamp.type_champs.fetch(:piece_justificative) }
|
.filter { |c| c.type_champ == TypeDeChamp.type_champs.fetch(:piece_justificative) }
|
||||||
.filter { |pj| pj.piece_justificative_file.attached? }
|
.filter { |pj| pj.piece_justificative_file.attached? }
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -122,7 +122,7 @@ class ProcedureExportService
|
||||||
@etablissements = @dossiers.flat_map do |dossier|
|
@etablissements = @dossiers.flat_map do |dossier|
|
||||||
[dossier.champs, dossier.champs_private]
|
[dossier.champs, dossier.champs_private]
|
||||||
.flatten
|
.flatten
|
||||||
.select { |champ| champ.is_a?(Champs::SiretChamp) }
|
.filter { |champ| champ.is_a?(Champs::SiretChamp) }
|
||||||
end.map(&:etablissement).compact
|
end.map(&:etablissement).compact
|
||||||
|
|
||||||
if @etablissements.any?
|
if @etablissements.any?
|
||||||
|
|
|
@ -40,7 +40,7 @@ class ProcedureExportV2Service
|
||||||
@etablissements ||= dossiers.flat_map do |dossier|
|
@etablissements ||= dossiers.flat_map do |dossier|
|
||||||
[dossier.champs, dossier.champs_private]
|
[dossier.champs, dossier.champs_private]
|
||||||
.flatten
|
.flatten
|
||||||
.select { |champ| champ.is_a?(Champs::SiretChamp) }
|
.filter { |champ| champ.is_a?(Champs::SiretChamp) }
|
||||||
end.map(&:etablissement).compact + dossiers.map(&:etablissement).compact
|
end.map(&:etablissement).compact + dossiers.map(&:etablissement).compact
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -52,7 +52,7 @@ class ProcedureExportV2Service
|
||||||
@champs_repetables ||= dossiers.flat_map do |dossier|
|
@champs_repetables ||= dossiers.flat_map do |dossier|
|
||||||
[dossier.champs, dossier.champs_private]
|
[dossier.champs, dossier.champs_private]
|
||||||
.flatten
|
.flatten
|
||||||
.select { |champ| champ.is_a?(Champs::RepetitionChamp) }
|
.filter { |champ| champ.is_a?(Champs::RepetitionChamp) }
|
||||||
end.group_by(&:libelle)
|
end.group_by(&:libelle)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@ class ZxcvbnService
|
||||||
wxcvbn = compute_zxcvbn
|
wxcvbn = compute_zxcvbn
|
||||||
score = wxcvbn.score
|
score = wxcvbn.score
|
||||||
length = @password.blank? ? 0 : @password.length
|
length = @password.blank? ? 0 : @password.length
|
||||||
vulnerabilities = wxcvbn.match_sequence.map { |m| m.matched_word.nil? ? m.token : m.matched_word }.select { |s| s.length > 2 }.join(', ')
|
vulnerabilities = wxcvbn.match_sequence.map { |m| m.matched_word.nil? ? m.token : m.matched_word }.filter { |s| s.length > 2 }.join(', ')
|
||||||
[score, vulnerabilities, length]
|
[score, vulnerabilities, length]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ namespace :'2017_07_18_clean_followed_dossiers' do
|
||||||
Follow.where(gestionnaire_id: nil).destroy_all
|
Follow.where(gestionnaire_id: nil).destroy_all
|
||||||
Follow.where(dossier_id: nil).destroy_all
|
Follow.where(dossier_id: nil).destroy_all
|
||||||
|
|
||||||
duplicate_follows = Follow.group('gestionnaire_id', 'dossier_id').count.select { |_gestionnaire_id_dossier_id, count| count > 1 }.keys
|
duplicate_follows = Follow.group('gestionnaire_id', 'dossier_id').count.filter { |_gestionnaire_id_dossier_id, count| count > 1 }.keys
|
||||||
|
|
||||||
duplicate_ids = duplicate_follows.map { |gestionnaire_id, dossier_id| Follow.where(gestionnaire_id: gestionnaire_id, dossier_id: dossier_id).pluck(:id) }
|
duplicate_ids = duplicate_follows.map { |gestionnaire_id, dossier_id| Follow.where(gestionnaire_id: gestionnaire_id, dossier_id: dossier_id).pluck(:id) }
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ require Rails.root.join("lib", "tasks", "task_helper")
|
||||||
namespace :'2017_07_26_clean_birthdate_on_individual' do
|
namespace :'2017_07_26_clean_birthdate_on_individual' do
|
||||||
task clean: :environment do
|
task clean: :environment do
|
||||||
# remove duplicates
|
# remove duplicates
|
||||||
duplicate_individuals = Individual.group("dossier_id").count.select { |_dossier_id, count| count > 1 }.keys
|
duplicate_individuals = Individual.group("dossier_id").count.filter { |_dossier_id, count| count > 1 }.keys
|
||||||
duplicate_individuals.each { |dossier_id| Individual.where(dossier_id: dossier_id, nom: nil).delete_all }
|
duplicate_individuals.each { |dossier_id| Individual.where(dossier_id: dossier_id, nom: nil).delete_all }
|
||||||
|
|
||||||
# Match "" => nil
|
# Match "" => nil
|
||||||
|
@ -11,13 +11,13 @@ namespace :'2017_07_26_clean_birthdate_on_individual' do
|
||||||
|
|
||||||
individuals_with_date = Individual.where.not(birthdate: nil)
|
individuals_with_date = Individual.where.not(birthdate: nil)
|
||||||
# Match 31/12/2017 => 2017-12-31
|
# Match 31/12/2017 => 2017-12-31
|
||||||
individuals_with_date.select { |i| /^\d{2}\/\d{2}\/\d{4}$/.match(i.birthdate) }.each do |i|
|
individuals_with_date.filter { |i| /^\d{2}\/\d{2}\/\d{4}$/.match(i.birthdate) }.each do |i|
|
||||||
rake_puts "cleaning #{i.birthdate}"
|
rake_puts "cleaning #{i.birthdate}"
|
||||||
i.update(birthdate: Date.parse(i.birthdate).iso8601) rescue nil
|
i.update(birthdate: Date.parse(i.birthdate).iso8601) rescue nil
|
||||||
end
|
end
|
||||||
|
|
||||||
# Match 31/12/17 => 2017-12-31
|
# Match 31/12/17 => 2017-12-31
|
||||||
individuals_with_date.select { |i| /^\d{2}\/\d{2}\/\d{2}$/.match(i.birthdate) }.each do |i|
|
individuals_with_date.filter { |i| /^\d{2}\/\d{2}\/\d{2}$/.match(i.birthdate) }.each do |i|
|
||||||
rake_puts "cleaning #{i.birthdate}"
|
rake_puts "cleaning #{i.birthdate}"
|
||||||
new_date = Date.strptime(i.birthdate, "%d/%m/%y")
|
new_date = Date.strptime(i.birthdate, "%d/%m/%y")
|
||||||
if new_date.year > 2017
|
if new_date.year > 2017
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
namespace :'2017_08_01_clean_assign_to' do
|
namespace :'2017_08_01_clean_assign_to' do
|
||||||
task clean: :environment do
|
task clean: :environment do
|
||||||
duplicates = AssignTo.group(:gestionnaire_id, :procedure_id).count.select { |_gestionnaire_id_procedure_id, count| count > 1 }.keys
|
duplicates = AssignTo.group(:gestionnaire_id, :procedure_id).count.filter { |_gestionnaire_id_procedure_id, count| count > 1 }.keys
|
||||||
|
|
||||||
duplicate_ids = duplicates.map { |gestionnaire_id, procedure_id| AssignTo.where(gestionnaire_id: gestionnaire_id, procedure_id: procedure_id).pluck(:id) }
|
duplicate_ids = duplicates.map { |gestionnaire_id, procedure_id| AssignTo.where(gestionnaire_id: gestionnaire_id, procedure_id: procedure_id).pluck(:id) }
|
||||||
|
|
||||||
|
|
|
@ -5,20 +5,20 @@ namespace :'2018_01_18_clean_datetime_in_champs' do
|
||||||
datetime_champs = TypeDeChamp.where(type_champ: "datetime").flat_map(&:champ)
|
datetime_champs = TypeDeChamp.where(type_champ: "datetime").flat_map(&:champ)
|
||||||
|
|
||||||
# Match " HH:MM" => nil a datetime is not valid if not composed by date AND time
|
# Match " HH:MM" => nil a datetime is not valid if not composed by date AND time
|
||||||
datetime_champs.select { |c| /^\s\d{2}:\d{2}$/.match(c.value) }.each do |c|
|
datetime_champs.filter { |c| /^\s\d{2}:\d{2}$/.match(c.value) }.each do |c|
|
||||||
rake_puts "cleaning #{c.value} => nil"
|
rake_puts "cleaning #{c.value} => nil"
|
||||||
c.update_columns(value: nil)
|
c.update_columns(value: nil)
|
||||||
end
|
end
|
||||||
|
|
||||||
# Match "dd/mm/YYYY HH:MM" => "YYYY-mm-dd HH:MM"
|
# Match "dd/mm/YYYY HH:MM" => "YYYY-mm-dd HH:MM"
|
||||||
datetime_champs.select { |c| /^\d{2}\/\d{2}\/\d{4}\s\d{2}:\d{2}$/ =~ c.value }.each do |c|
|
datetime_champs.filter { |c| /^\d{2}\/\d{2}\/\d{4}\s\d{2}:\d{2}$/ =~ c.value }.each do |c|
|
||||||
formated_date = Time.zone.strptime(c.value, "%d/%m/%Y %H:%M").strftime("%Y-%m-%d %H:%M")
|
formated_date = Time.zone.strptime(c.value, "%d/%m/%Y %H:%M").strftime("%Y-%m-%d %H:%M")
|
||||||
rake_puts "cleaning #{c.value} => #{formated_date}"
|
rake_puts "cleaning #{c.value} => #{formated_date}"
|
||||||
c.update_columns(value: formated_date)
|
c.update_columns(value: formated_date)
|
||||||
end
|
end
|
||||||
|
|
||||||
# Match "ddmmYYYY HH:MM" => "YYYY-mm-dd HH:MM"
|
# Match "ddmmYYYY HH:MM" => "YYYY-mm-dd HH:MM"
|
||||||
datetime_champs.select { |c| /^\d{8}\s\d{2}:\d{2}$/ =~ c.value }.each do |c|
|
datetime_champs.filter { |c| /^\d{8}\s\d{2}:\d{2}$/ =~ c.value }.each do |c|
|
||||||
day = c.value[0, 2]
|
day = c.value[0, 2]
|
||||||
month = c.value[2, 2]
|
month = c.value[2, 2]
|
||||||
year = c.value[4, 4]
|
year = c.value[4, 4]
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
namespace :'2018_02_28_clean_invalid_emails_accounts' do
|
namespace :'2018_02_28_clean_invalid_emails_accounts' do
|
||||||
task clean: :environment do
|
task clean: :environment do
|
||||||
Gestionnaire.pluck(:email, :id).select { |e, _id| e.include?(" ") }.each do |_email, id|
|
Gestionnaire.pluck(:email, :id).filter { |e, _id| e.include?(" ") }.each do |_email, id|
|
||||||
Gestionnaire.find_by(id: id, current_sign_in_at: nil)&.destroy # ensure account was never used
|
Gestionnaire.find_by(id: id, current_sign_in_at: nil)&.destroy # ensure account was never used
|
||||||
end
|
end
|
||||||
|
|
||||||
User.pluck(:email, :id).select { |e, _id| e.include?(" ") }.each do |_email, id|
|
User.pluck(:email, :id).filter { |e, _id| e.include?(" ") }.each do |_email, id|
|
||||||
User.find_by(id: id, current_sign_in_at: nil)&.destroy # ensure account was never used
|
User.find_by(id: id, current_sign_in_at: nil)&.destroy # ensure account was never used
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
namespace :'2018_04_03_attestation_closed_mail_discrepancy' do
|
namespace :'2018_04_03_attestation_closed_mail_discrepancy' do
|
||||||
task mail_adminstrators: :environment do
|
task mail_adminstrators: :environment do
|
||||||
Administrateur.includes(:procedures).find_each(batch_size: 10) do |admin|
|
Administrateur.includes(:procedures).find_each(batch_size: 10) do |admin|
|
||||||
procedures = admin.procedures.where(archived_at: nil).select { |p| p.closed_mail_template_attestation_inconsistency_state == :missing_tag }
|
procedures = admin.procedures.where(archived_at: nil).filter { |p| p.closed_mail_template_attestation_inconsistency_state == :missing_tag }
|
||||||
if procedures.any?
|
if procedures.any?
|
||||||
# Use `deliver_now` because the delayed job cannot find the `Mailers::AttestationClosedMailDiscrepancyMaile` class in production
|
# Use `deliver_now` because the delayed job cannot find the `Mailers::AttestationClosedMailDiscrepancyMaile` class in production
|
||||||
Mailers::AttestationClosedMailDiscrepancyMailer.missing_attestation_tag_email(admin, procedures).deliver_now!
|
Mailers::AttestationClosedMailDiscrepancyMailer.missing_attestation_tag_email(admin, procedures).deliver_now!
|
||||||
|
|
|
@ -3,7 +3,7 @@ require Rails.root.join("lib", "tasks", "task_helper")
|
||||||
namespace :'2018_06_05_resend_attestations' do
|
namespace :'2018_06_05_resend_attestations' do
|
||||||
task set: :environment do
|
task set: :environment do
|
||||||
procedure = Procedure.find(4247)
|
procedure = Procedure.find(4247)
|
||||||
dossiers = procedure.dossiers.includes(:attestation).where(state: 'accepte').select do |d|
|
dossiers = procedure.dossiers.includes(:attestation).where(state: 'accepte').filter do |d|
|
||||||
d.processed_at < procedure.attestation_template.updated_at
|
d.processed_at < procedure.attestation_template.updated_at
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@ namespace :'2018_06_06_users_for_admins_and_gestionnaires' do
|
||||||
.joins("INNER JOIN users ON #{table_name}.email = users.email")
|
.joins("INNER JOIN users ON #{table_name}.email = users.email")
|
||||||
.where(users: { confirmed_at: nil })
|
.where(users: { confirmed_at: nil })
|
||||||
.to_a
|
.to_a
|
||||||
.select(&block)
|
.filter(&block)
|
||||||
|
|
||||||
rake_puts "Sending emails to #{already_activated.count} #{table_name} that were already confirmed"
|
rake_puts "Sending emails to #{already_activated.count} #{table_name} that were already confirmed"
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@ describe ApplicationController, type: :controller do
|
||||||
it 'is present' do
|
it 'is present' do
|
||||||
before_actions = ApplicationController
|
before_actions = ApplicationController
|
||||||
._process_action_callbacks
|
._process_action_callbacks
|
||||||
.find_all { |process_action_callbacks| process_action_callbacks.kind == :before }
|
.filter { |process_action_callbacks| process_action_callbacks.kind == :before }
|
||||||
.map(&:filter)
|
.map(&:filter)
|
||||||
|
|
||||||
expect(before_actions).to include(:set_raven_context)
|
expect(before_actions).to include(:set_raven_context)
|
||||||
|
|
|
@ -5,7 +5,7 @@ describe Instructeurs::InstructeurController, type: :controller do
|
||||||
it 'is present' do
|
it 'is present' do
|
||||||
before_actions = Instructeurs::InstructeurController
|
before_actions = Instructeurs::InstructeurController
|
||||||
._process_action_callbacks
|
._process_action_callbacks
|
||||||
.find_all { |process_action_callbacks| process_action_callbacks.kind == :before }
|
.filter { |process_action_callbacks| process_action_callbacks.kind == :before }
|
||||||
.map(&:filter)
|
.map(&:filter)
|
||||||
|
|
||||||
expect(before_actions).to include(:authenticate_instructeur!)
|
expect(before_actions).to include(:authenticate_instructeur!)
|
||||||
|
|
|
@ -5,7 +5,7 @@ describe Instructeurs::ProceduresController, type: :controller do
|
||||||
it "is present" do
|
it "is present" do
|
||||||
before_actions = Instructeurs::ProceduresController
|
before_actions = Instructeurs::ProceduresController
|
||||||
._process_action_callbacks
|
._process_action_callbacks
|
||||||
.find_all { |process_action_callbacks| process_action_callbacks.kind == :before }
|
.filter { |process_action_callbacks| process_action_callbacks.kind == :before }
|
||||||
.map(&:filter)
|
.map(&:filter)
|
||||||
|
|
||||||
expect(before_actions).to include(:ensure_ownership!)
|
expect(before_actions).to include(:ensure_ownership!)
|
||||||
|
@ -46,7 +46,7 @@ describe Instructeurs::ProceduresController, type: :controller do
|
||||||
it "is present" do
|
it "is present" do
|
||||||
before_actions = Instructeurs::ProceduresController
|
before_actions = Instructeurs::ProceduresController
|
||||||
._process_action_callbacks
|
._process_action_callbacks
|
||||||
.find_all { |process_action_callbacks| process_action_callbacks.kind == :before }
|
.filter { |process_action_callbacks| process_action_callbacks.kind == :before }
|
||||||
.map(&:filter)
|
.map(&:filter)
|
||||||
|
|
||||||
expect(before_actions).to include(:redirect_to_avis_if_needed)
|
expect(before_actions).to include(:redirect_to_avis_if_needed)
|
||||||
|
|
|
@ -3,7 +3,7 @@ describe NewAdministrateur::AdministrateurController, type: :controller do
|
||||||
it 'is present' do
|
it 'is present' do
|
||||||
before_actions = NewAdministrateur::AdministrateurController
|
before_actions = NewAdministrateur::AdministrateurController
|
||||||
._process_action_callbacks
|
._process_action_callbacks
|
||||||
.find_all { |process_action_callbacks| process_action_callbacks.kind == :before }
|
.filter { |process_action_callbacks| process_action_callbacks.kind == :before }
|
||||||
.map(&:filter)
|
.map(&:filter)
|
||||||
|
|
||||||
expect(before_actions).to include(:authenticate_administrateur!)
|
expect(before_actions).to include(:authenticate_administrateur!)
|
||||||
|
|
|
@ -7,7 +7,7 @@ describe Users::DossiersController, type: :controller do
|
||||||
it 'are present' do
|
it 'are present' do
|
||||||
before_actions = Users::DossiersController
|
before_actions = Users::DossiersController
|
||||||
._process_action_callbacks
|
._process_action_callbacks
|
||||||
.find_all { |process_action_callbacks| process_action_callbacks.kind == :before }
|
.filter { |process_action_callbacks| process_action_callbacks.kind == :before }
|
||||||
.map(&:filter)
|
.map(&:filter)
|
||||||
|
|
||||||
expect(before_actions).to include(:ensure_ownership!, :ensure_ownership_or_invitation!, :forbid_invite_submission!)
|
expect(before_actions).to include(:ensure_ownership!, :ensure_ownership_or_invitation!, :forbid_invite_submission!)
|
||||||
|
|
|
@ -5,7 +5,7 @@ describe Users::UserController, type: :controller do
|
||||||
it 'is present' do
|
it 'is present' do
|
||||||
before_actions = Users::UserController
|
before_actions = Users::UserController
|
||||||
._process_action_callbacks
|
._process_action_callbacks
|
||||||
.find_all { |process_action_callbacks| process_action_callbacks.kind == :before }
|
.filter { |process_action_callbacks| process_action_callbacks.kind == :before }
|
||||||
.map(&:filter)
|
.map(&:filter)
|
||||||
|
|
||||||
expect(before_actions).to include(:authenticate_user!)
|
expect(before_actions).to include(:authenticate_user!)
|
||||||
|
|
|
@ -149,12 +149,12 @@ describe AttestationTemplate, type: :model do
|
||||||
context 'and their value in the dossier are not nil' do
|
context 'and their value in the dossier are not nil' do
|
||||||
before do
|
before do
|
||||||
dossier.champs
|
dossier.champs
|
||||||
.select { |champ| champ.libelle == 'libelleA' }
|
.filter { |champ| champ.libelle == 'libelleA' }
|
||||||
.first
|
.first
|
||||||
.update(value: 'libelle1')
|
.update(value: 'libelle1')
|
||||||
|
|
||||||
dossier.champs
|
dossier.champs
|
||||||
.select { |champ| champ.libelle == 'libelleB' }
|
.filter { |champ| champ.libelle == 'libelleB' }
|
||||||
.first
|
.first
|
||||||
.update(value: 'libelle2')
|
.update(value: 'libelle2')
|
||||||
end
|
end
|
||||||
|
|
|
@ -99,12 +99,12 @@ describe TagsSubstitutionConcern, type: :model do
|
||||||
context 'and their value in the dossier are not nil' do
|
context 'and their value in the dossier are not nil' do
|
||||||
before do
|
before do
|
||||||
dossier.champs
|
dossier.champs
|
||||||
.select { |champ| champ.libelle == 'libelleA' }
|
.filter { |champ| champ.libelle == 'libelleA' }
|
||||||
.first
|
.first
|
||||||
.update(value: 'libelle1')
|
.update(value: 'libelle1')
|
||||||
|
|
||||||
dossier.champs
|
dossier.champs
|
||||||
.select { |champ| champ.libelle == 'libelleB' }
|
.filter { |champ| champ.libelle == 'libelleB' }
|
||||||
.first
|
.first
|
||||||
.update(value: 'libelle2')
|
.update(value: 'libelle2')
|
||||||
end
|
end
|
||||||
|
@ -228,12 +228,12 @@ describe TagsSubstitutionConcern, type: :model do
|
||||||
context 'and its value in the dossier are not nil' do
|
context 'and its value in the dossier are not nil' do
|
||||||
before do
|
before do
|
||||||
dossier.champs
|
dossier.champs
|
||||||
.select { |champ| champ.type_champ == TypeDeChamp.type_champs.fetch(:date) }
|
.filter { |champ| champ.type_champ == TypeDeChamp.type_champs.fetch(:date) }
|
||||||
.first
|
.first
|
||||||
.update(value: '2017-04-15')
|
.update(value: '2017-04-15')
|
||||||
|
|
||||||
dossier.champs
|
dossier.champs
|
||||||
.select { |champ| champ.type_champ == TypeDeChamp.type_champs.fetch(:datetime) }
|
.filter { |champ| champ.type_champ == TypeDeChamp.type_champs.fetch(:datetime) }
|
||||||
.first
|
.first
|
||||||
.update(value: '2017-09-13 09:00')
|
.update(value: '2017-09-13 09:00')
|
||||||
end
|
end
|
||||||
|
|
|
@ -460,7 +460,7 @@ describe Dossier do
|
||||||
|
|
||||||
before do
|
before do
|
||||||
(dossier.champs + dossier.champs_private)
|
(dossier.champs + dossier.champs_private)
|
||||||
.select { |c| c.libelle.match?(/^specified/) }
|
.filter { |c| c.libelle.match?(/^specified/) }
|
||||||
.each { |c| c.update_attribute(:value, "specified") }
|
.each { |c| c.update_attribute(:value, "specified") }
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue