mirror of
https://github.com/LaCasemate/fab-manager.git
synced 2024-12-01 12:24:28 +01:00
48 lines
1.6 KiB
Ruby
48 lines
1.6 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
json.invoices do
|
|
json.array!(invoices) do |invoice|
|
|
json.extract! invoice[:invoice], :id, :stp_invoice_id, :created_at, :reference, :footprint
|
|
json.total number_to_currency(invoice[:invoice].total / 100.0)
|
|
json.invoiced do
|
|
json.type invoice[:invoice].invoiced_type
|
|
json.id invoice[:invoice].invoiced_id
|
|
if invoice[:invoice].invoiced_type == Subscription.name
|
|
json.partial! 'archive/subscription', invoiced: invoice[:invoice].invoiced
|
|
elsif invoice[:invoice].invoiced_type == Reservation.name
|
|
json.partial! 'archive/reservation', invoiced: invoice[:invoice].invoiced, vat_rate: invoice[:vat_rate]
|
|
end
|
|
end
|
|
json.user do
|
|
json.extract! invoice[:invoice].user, :id, :email, :created_at
|
|
json.profile do
|
|
json.extract! invoice[:invoice].user.profile, :id, :first_name, :last_name, :birthday, :phone
|
|
json.gender invoice[:invoice].user.profile.gender ? 'male' : 'female'
|
|
end
|
|
end
|
|
json.invoice_items invoice[:invoice].invoice_items do |item|
|
|
json.extract! item, :id, :stp_invoice_item_id, :created_at, :description, :footprint
|
|
json.partial! 'archive/vat', price: item.amount, vat_rate: invoice[:vat_rate]
|
|
end
|
|
end
|
|
end
|
|
|
|
json.totals do
|
|
json.period_total number_to_currency(period_total / 100.0)
|
|
json.perpetual_total number_to_currency(perpetual_total / 100.0)
|
|
end
|
|
|
|
json.software do
|
|
json.name 'Fab-Manager'
|
|
json.version software_version
|
|
json.code_checksum code_checksum
|
|
end
|
|
|
|
json.previous_archive do
|
|
json.filename previous_file
|
|
json.checksum last_archive_checksum
|
|
end
|
|
|
|
json.period_footprint period_footprint
|
|
json.archive_date date
|