Fix check force delete query

This commit is contained in:
Thiago Youssef 2022-05-20 11:29:51 +03:00
parent c53bb42976
commit 25e4083354
2 changed files with 7 additions and 7 deletions

View file

@ -1,12 +1,11 @@
desc 'Check Force Delete' desc 'Check Force Delete'
task check_force_delete: :environment do task check_force_delete: :environment do
validations = ValidationEvent.select(:validation_eventable_id) validations = ValidationEvent.failed.where(validation_eventable_type: 'Contact').uniq(&:validation_eventable_id)
.failed.where(validation_eventable_type: 'Contact')
.group(:validation_eventable_id)
invalid_contact_ids = ( invalid_contact_ids = validations.select do |validation|
validations.mx.having("count(event_data ->> 'success') > 2") + validations.regex contact = validation.validation_eventable
).pluck(:validation_eventable_id) contact.need_to_start_force_delete? || contact.need_to_lift_force_delete?
end.pluck(:validation_eventable_id)
CheckForceDeleteJob.perform_later(invalid_contact_ids) CheckForceDeleteJob.perform_later(invalid_contact_ids) if invalid_contact_ids.present?
end end

View file

@ -54,6 +54,7 @@ class CheckForceDeleteTaskTest < ActiveSupport::TestCase
action.call action.call
end end
run_task
assert_enqueued_jobs 0 assert_enqueued_jobs 0
end end