|
|
|
@ -10,19 +10,18 @@ class ProcessSubmitterCompletionJob < ApplicationJob
|
|
|
|
|
|
|
|
|
|
|
|
Submissions::EnsureResultGenerated.call(submitter)
|
|
|
|
Submissions::EnsureResultGenerated.call(submitter)
|
|
|
|
|
|
|
|
|
|
|
|
if submitter.account.encrypted_configs.exists?(key: EncryptedConfig::WEBHOOK_URL_KEY)
|
|
|
|
if is_all_completed && submitter.completed_at == submitter.submission.submitters.maximum(:completed_at)
|
|
|
|
SendFormCompletedWebhookRequestJob.perform_later(submitter)
|
|
|
|
Submissions::GenerateAuditTrail.call(submitter.submission)
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return unless is_all_completed
|
|
|
|
enqueue_completed_emails(submitter)
|
|
|
|
return if submitter.completed_at != submitter.submission.submitters.maximum(:completed_at)
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
Submissions::GenerateAuditTrail.call(submitter.submission)
|
|
|
|
return if Accounts.load_webhook_configs(submitter.account).blank?
|
|
|
|
|
|
|
|
|
|
|
|
enqueue_emails(submitter)
|
|
|
|
SendFormCompletedWebhookRequestJob.perform_later(submitter)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
def enqueue_emails(submitter)
|
|
|
|
def enqueue_completed_emails(submitter)
|
|
|
|
user = submitter.submission.created_by_user || submitter.template.author
|
|
|
|
user = submitter.submission.created_by_user || submitter.template.author
|
|
|
|
|
|
|
|
|
|
|
|
if submitter.template.account.users.exists?(id: user.id)
|
|
|
|
if submitter.template.account.users.exists?(id: user.id)
|
|
|
|
|