Send each registrar's monthly summary to Directo separately

This commit is contained in:
Karl Erik Õunapuu 2020-09-03 13:16:16 +03:00
parent c1b3a3f81d
commit 452fa49a71
No known key found for this signature in database
GPG key ID: C9DD647298A34764

View file

@ -28,17 +28,18 @@ class DirectoInvoiceForwardJob < Que::Job
def send_monthly_invoices def send_monthly_invoices
Registrar.where.not(test_registrar: true).find_each do |registrar| Registrar.where.not(test_registrar: true).find_each do |registrar|
@client = DirectoApi::Client.new(api_url, sales_agent, payment_term)
fetch_monthly_summary(registrar: registrar) fetch_monthly_summary(registrar: registrar)
next unless @client.invoices.count.positive?
sync_with_directo
end end
return unless @client.invoices.count.positive?
sync_with_directo
end end
def fetch_monthly_summary(registrar:) def fetch_monthly_summary(registrar:)
return unless registrar.cash_account return unless registrar.cash_account
Rails.logger.info "Fetching monthly summary for registrar #{registrar.name}"
summary = registrar.monthly_summary(month: @month) summary = registrar.monthly_summary(month: @month)
@client.invoices.add_with_schema(invoice: summary, schema: 'summary') unless summary.nil? @client.invoices.add_with_schema(invoice: summary, schema: 'summary') unless summary.nil?
end end