Commit Graph

28 Commits

Author SHA1 Message Date
Mohamed ABDELLANI
1c2aa1c370 fix linter issue 2023-10-11 11:00:37 +01:00
Mohamed ABDELLANI
c750602b52 remove duplicated code 2023-10-11 10:38:45 +01:00
Mohamed ABDELLANI
7cb200e21e fix linting errors 2023-10-11 09:27:16 +01:00
Mohamed ABDELLANI
9950dd90f7 fix display_checkout_taxes_hash 2023-10-11 09:27:16 +01:00
Mohamed ABDELLANI
7eabb9a170 move include ::ActionView::Helpers::NumberHelper to Invoice::DataPresenter::Base 2023-10-11 09:27:16 +01:00
Mohamed ABDELLANI
aa4798d35c add adjustables to the list of objects to serialize when creating an invoice 2023-10-11 09:27:16 +01:00
Mohamed ABDELLANI
d40338bed5 add adjustment originators to the order serialization
for some helpers like display_checkout_taxes_hash, it's needed to access the tax rates through the adjument's originator.
The adjustment's originator will store the minimal details: id, type and amount
2023-10-11 09:26:50 +01:00
Mohamed ABDELLANI
a2b06fa200 fix cloning all_eligible_adjustments array on DataPresenter#checkout_adjustments 2023-10-11 09:26:50 +01:00
Mohamed ABDELLANI
68a6fb132a implement display_adjustment_tax_rates helper on the adjustment presenter
For every adjustment a list of tax rates will be created using TaxRateFinder.tax_rates_of.
This will prevent running the queries to find the tax rates during the invoice generation.
2023-10-11 09:26:50 +01:00
Mohamed ABDELLANI
33826631a3 reimplement the display_line_item_tax_rates helper on the line item presenter
1. reimplment the helper on the LintItem presenter
2. add the tax rate associated to the line items to the list of objects to serialize during the order serialization.
3. implement a presenter for the introducer tax rates.
2023-10-11 09:26:49 +01:00
Neal Chambers
4ffd3759cc Fix Style/HashSyntax 2023-09-12 23:19:05 +09:00
Rachel Arnould
2b108dfeee Merge pull request #11116 from abdellani/fix-show-date-only-on-invoices-list
render date without time on invoices list
2023-08-09 14:33:40 +02:00
Mohamed ABDELLANI
6c53f3b8b0 move pretty_date helper into invoice presenter 2023-08-03 15:12:02 +01:00
Mohamed ABDELLANI
5358802ab5 replace Presenter#invoice_date with a delagator 2023-08-03 15:11:58 +01:00
Mohamed ABDELLANI
9a3aef525a add distributor's phone number to list of attributes to serialize 2023-08-03 15:06:04 +01:00
Mohamed ABDELLANI
24b1918df5 implment blank? on Address presenter
To keep the same method calls that are used on the legacy invoice template. I needed to redefine blank? on the address presenter.
2023-08-03 14:53:40 +01:00
Mohamed ABDELLANI
0ce8fae7c9 replace invoice_number method with delegate 2023-07-31 16:31:24 +01:00
Mohamed ABDELLANI
e66cd5aaa3 add order number & invoice number to invoices 2023-07-31 16:31:24 +01:00
Mohamed ABDELLANI
639567e903 replace attr with attr_reader 2023-06-18 21:03:13 +02:00
Mohamed ABDELLANI
73cdcca022 fix linter issues 2023-06-18 21:03:13 +02:00
Matt-Yorkley
352ad20681 Fix display_checkout_taxes_hash in invoice_table4 template 2023-06-18 21:03:13 +02:00
Matt-Yorkley
68ab539ed3 Include completed_at attribute 2023-06-18 21:03:13 +02:00
Matt-Yorkley
113e1344f2 Include tax adjustments in serializer and presenter 2023-06-18 21:03:13 +02:00
Matt-Yorkley
72e537b598 Update *_amount_with_adjustments methods on LineItem presenter
These methods are slightly different and they're both needed in the template for invoice4
2023-06-18 21:03:13 +02:00
Matt-Yorkley
a44f24ad43 Remove prefixes from invoice data representation so it conforms to the same interface as order 2023-06-18 21:03:13 +02:00
Mohamed ABDELLANI
61d58df56f fix linter issues 2023-06-18 21:03:13 +02:00
Mohamed ABDELLANI
d9efd10ac0 update attributes relevant for the comparaison 2023-06-18 21:03:13 +02:00
Mohamed ABDELLANI
0fbf88190e Generate invoice model
There are three main components:
1. The invoice model
2. order serializers: serialize the order for the invoice
3. data presenters: the object that will be use to access the order's serialize data
2023-06-18 21:03:13 +02:00