mirror of
https://github.com/LaCasemate/fab-manager.git
synced 2024-11-29 10:24:20 +01:00
25 lines
762 B
Ruby
25 lines
762 B
Ruby
class InvoiceWorker
|
|
include Sidekiq::Worker
|
|
|
|
def perform(invoice_id, subscription_expiration_date)
|
|
# generate a invoice
|
|
invoice = Invoice.find invoice_id
|
|
pdf = ::PDF::Invoice.new(invoice, subscription_expiration_date).render
|
|
|
|
# store invoice on drive
|
|
File.binwrite(invoice.file, pdf)
|
|
|
|
# notify user + send invoice by mail
|
|
if invoice.is_a?(Avoir)
|
|
NotificationCenter.call type: 'notify_user_when_avoir_ready',
|
|
receiver: invoice.user,
|
|
attached_object: invoice
|
|
else
|
|
NotificationCenter.call type: 'notify_user_when_invoice_ready',
|
|
receiver: invoice.user,
|
|
attached_object: invoice
|
|
end
|
|
end
|
|
|
|
end
|