David Rodríguez
4c6d894bc0
Bump RuboCop to 1.86.6
...
There were a few changes needed:
* Plugins are now specified through `plugin:` config keyword.
* All plugin gems need to be specified explicitly in Gemfile since they
are no longer dependencies of plugins already specified explicitly.
* All plugin gems need to be updated in other to use the new APIs.
* One cop was renamed.
* New offenses safe to correct were corrected directly with `bundle exec
rubocop -a`.
* New offenses unsafe to correct were added to the TODO configuration
with `bundle exec rubocop --auto-gen-config --auto-gen-only-exclude
--exclude-limit 1400 --no-auto-gen-timestamp`.
2025-10-27 11:30:33 +01:00
Carlos Chitty
85e4f749f9
refactor: move unit price formatting logic out of model into helper
...
Solves Psych::DisallowedClass errors
Example: https://github.com/openfoodfoundation/openfoodnetwork/actions/runs/14739687958/job/41374343627?pr=13232
unit_price returns object with amount and unit, as mentioned in https://github.com/openfoodfoundation/openfoodnetwork/pull/6905\#discussion_r578401368
2025-06-16 12:53:41 +01:00
Mohamed ABDELLANI
59a9034108
remove tax rates from line_items data presenter
2024-02-19 12:36:24 +01:00
Mohamed ABDELLANI
56fe7f5e21
fix tax rates listing in invoices
2024-02-19 12:32:11 +01:00
Gaetan Craig-Riou
04db8dbd37
Remove unused method
2024-01-29 13:21:13 +11:00
Gaetan Craig-Riou
fab6a79dae
Fix various method to remove or add enterprise fee tax
2024-01-23 10:36:58 +11:00
Gaetan Craig-Riou
3cfa7e29d1
Add the enterprise fee tax to amount with taxes
2024-01-22 13:08:58 +11:00
Mohamed ABDELLANI
db653fc945
render the shipping category in the invoice.
2023-12-14 16:36:36 +01:00
Mohamed ABDELLANI
615c001c28
implement Invoice#previous_invoice
2023-12-11 08:26:32 +01:00
Mohamed ABDELLANI
fea910f8b6
update the invoice number rendering
2023-12-08 13:33:36 +01:00
Mohamed ABDELLANI
6d0f7d7c81
render null shipment when shipment adjustment doesn't exist
2023-10-30 22:53:19 +01:00
Mohamed ABDELLANI
23a56d35a0
add tax_adjustment total to the invoice
2023-10-30 22:09:22 +01:00
Mohamed ABDELLANI
e16df2777a
optimize DataPresenter#checkout_adjustments
...
reduce the complexity of the method
2023-10-30 21:58:37 +01:00
Mohamed ABDELLANI
c8f69c8778
always render shipment on the invoice
2023-10-30 19:43:57 +01:00
Mohamed ABDELLANI
c513eb5d9d
fix existing test
2023-10-30 19:43:57 +01:00
Mohamed ABDELLANI
da89860f35
fix price per unit
2023-10-30 19:43:57 +01:00
Mohamed ABDELLANI
c1ed8ed67c
update the adjustments rows
2023-10-30 19:43:57 +01:00
Mohamed ABDELLANI
a8f9b29a6d
[skip ci]add the total price columns to the invoice
2023-10-30 19:43:57 +01:00
Mohamed ABDELLANI
30537f7743
add "Weight/VOL." column to the invoice
2023-10-30 19:43:57 +01:00
Mohamed ABDELLANI
4634c2d965
add unit_price_price_and_unit to line_item serializer
...
* unit_price_price_and_unit refers UnitPrice which refers to other attributes
that belong to variant and product.
Instead of collecting all the attributes that were using indirectly by the method and adding them to the serializers
I perefered to serialize the result of the method call.
2023-10-30 19:43:57 +01:00
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