Upstream sync

This commit is contained in:
Senad Uka
2020-09-13 20:09:48 +02:00
parent 3db230de9b
commit 5cf7be6f13
59 changed files with 613 additions and 188 deletions

View File

@@ -15,6 +15,7 @@ class MatchAppearanceReleasesJob < ApplicationJob
matches = response.matches || []
key_signed_id_hash = Hash[filtered_attachments_object[:keys].zip(filtered_attachments_object[:signed_ids])]
handle_matches matches, project, key_signed_id_hash
handle_unmatches matches, project, key_signed_id_hash
matching_request.destroy
end
@@ -40,6 +41,21 @@ class MatchAppearanceReleasesJob < ApplicationJob
end
end
def handle_unmatches(matches, project, key_signed_id_hash)
matched_keys = matches.flat_map { |match| match.contracts + match.headshots }
unmatches = key_signed_id_hash.find_all { |key, _| !key.in?(matched_keys) }
unmatches.each do |key, signed_id|
blob = ActiveStorage::Blob.find_signed signed_id
if blob.image?
create_release(project, nil, signed_id, nil)
else
create_release(project, signed_id, nil, nil)
end
end
end
def create_release(project, contract, headshot, identifier)
random_contract_no = AppearanceRelease.random_contract_number.to_s
is_incomplete = contract.nil? || headshot.nil?