21 lines
567 B
Ruby
21 lines
567 B
Ruby
module VirusScanConcern
|
|
extend ActiveSupport::Concern
|
|
|
|
attr_reader :attachment_attribute
|
|
|
|
def add_virus_scan_on(piece_justificative)
|
|
@attachment_attribute = piece_justificative
|
|
end
|
|
|
|
def virus_scan
|
|
VirusScan.find_by(blob_key: self.attachment_attribute.blob.key)
|
|
end
|
|
|
|
def create_virus_scan(piece_justificative)
|
|
if piece_justificative&.attachment&.blob.present?
|
|
VirusScan.find_or_create_by!(blob_key: piece_justificative.blob.key) do |virus_scan|
|
|
virus_scan.status = VirusScan.statuses.fetch(:pending)
|
|
end
|
|
end
|
|
end
|
|
end
|