mirror of
https://github.com/internetee/registry.git
synced 2025-07-29 22:16:19 +02:00
Added monthly invoice name attribute
This commit is contained in:
parent
34f5347c1f
commit
0a20f567c2
2 changed files with 15 additions and 24 deletions
|
@ -18,10 +18,10 @@ GIT
|
||||||
|
|
||||||
GIT
|
GIT
|
||||||
remote: https://github.com/internetee/e_invoice.git
|
remote: https://github.com/internetee/e_invoice.git
|
||||||
revision: 590dcd3b769ea57edd4c4626547b37120a02b127
|
revision: 9f850465697a2448a31ebddb83c1be5a5a9be3d2
|
||||||
branch: master
|
branch: master
|
||||||
specs:
|
specs:
|
||||||
e_invoice (0.1.2)
|
e_invoice (0.1.3)
|
||||||
builder (~> 3.2)
|
builder (~> 3.2)
|
||||||
nokogiri
|
nokogiri
|
||||||
savon
|
savon
|
||||||
|
|
|
@ -41,17 +41,16 @@ class Invoice
|
||||||
|
|
||||||
e_invoice_invoice_items = []
|
e_invoice_invoice_items = []
|
||||||
invoice.each do |invoice_item|
|
invoice.each do |invoice_item|
|
||||||
if invoice.monthly_invoice
|
e_invoice_invoice_item = generate_invoice_item(invoice, invoice_item)
|
||||||
e_invoice_invoice_item = generate_monthly_invoice_item(invoice, invoice_item)
|
|
||||||
else
|
|
||||||
e_invoice_invoice_item = generate_normal_invoice_item(invoice_item)
|
|
||||||
end
|
|
||||||
e_invoice_invoice_items << e_invoice_invoice_item
|
e_invoice_invoice_items << e_invoice_invoice_item
|
||||||
end
|
end
|
||||||
|
|
||||||
|
e_invoice_name_item = e_invoice_invoice_items.shift if invoice.monthly_invoice
|
||||||
|
|
||||||
e_invoice_invoice = EInvoice::Invoice.new.tap do |i|
|
e_invoice_invoice = EInvoice::Invoice.new.tap do |i|
|
||||||
i.seller = seller
|
i.seller = seller
|
||||||
i.buyer = buyer
|
i.buyer = buyer
|
||||||
|
i.name = e_invoice_name_item&.description
|
||||||
i.items = e_invoice_invoice_items
|
i.items = e_invoice_invoice_items
|
||||||
i.number = invoice.number
|
i.number = invoice.number
|
||||||
i.date = invoice.issue_date
|
i.date = invoice.issue_date
|
||||||
|
@ -75,31 +74,23 @@ class Invoice
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
def generate_normal_invoice_item(item)
|
def generate_invoice_item(invoice, item)
|
||||||
EInvoice::InvoiceItem.new.tap do |i|
|
EInvoice::InvoiceItem.new.tap do |i|
|
||||||
i.description = item.description
|
i.description = item.description
|
||||||
i.unit = item.unit
|
i.unit = item.unit
|
||||||
i.price = item.price
|
i.price = item.price
|
||||||
i.quantity = item.quantity
|
i.quantity = item.quantity
|
||||||
i.subtotal = item.subtotal
|
if invoice.monthly_invoice && item.price && item.quantity
|
||||||
i.vat_rate = item.vat_rate
|
i.product_id = item.product_id
|
||||||
i.vat_amount = item.vat_amount
|
i.vat_rate = invoice.vat_rate
|
||||||
i.total = item.total
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
def generate_monthly_invoice_item(invoice, item)
|
|
||||||
EInvoice::InvoiceItem.new.tap do |i|
|
|
||||||
i.description = item.description
|
|
||||||
i.product_id = item.product_id
|
|
||||||
i.unit = item.unit
|
|
||||||
i.price = item.price
|
|
||||||
i.quantity = item.quantity
|
|
||||||
i.vat_rate = invoice.vat_rate
|
|
||||||
if item.price && item.quantity
|
|
||||||
i.subtotal = (item.price * item.quantity).round(3)
|
i.subtotal = (item.price * item.quantity).round(3)
|
||||||
i.vat_amount = i.subtotal * (i.vat_rate / 100)
|
i.vat_amount = i.subtotal * (i.vat_rate / 100)
|
||||||
i.total = i.subtotal + i.vat_amount
|
i.total = i.subtotal + i.vat_amount
|
||||||
|
else
|
||||||
|
i.subtotal = item.subtotal
|
||||||
|
i.vat_rate = item.vat_rate
|
||||||
|
i.vat_amount = item.vat_amount
|
||||||
|
i.total = item.total
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue