Commit Graph

34 Commits

Author SHA1 Message Date
cyrillefr
027d4ccbad Fixes some rubocop linting offenses - part I
- Lint/RedundantSafeNavigation
- Lint/SelfAssignment
- Lint/UselessMethodDefinition
2025-02-27 16:28:00 +01:00
Maikel Linke
9ca1b48d2e Move backorder amendment out of order callback
Triggering it for each order is inefficient when we cancel them in bulk.
The callback doesn't allow us to optimise this.
2024-12-11 12:40:46 +11:00
Maikel Linke
e0638b1765 Amend backorder after cancellations
The new job class blends code from the BackorderJob and the
CompleteBackorderJob for the specific case of adjusting quantities after
an order has been cancelled.

I would like to write a more general class which can be used for any
order amendmends but this was the quickest solution to cater for
currently running pilots.
2024-10-24 17:08:50 +11:00
Maikel Linke
54738fc552 Remove unnecessary method checkout_steps
It allowed introspection of a dynamic state machine. But the only two
usages of this method only referred to the first state which is always
the same. Our complicated checkout logic needs more clarity and
introducing some hardcoded state names here can only help.
2024-03-21 13:43:54 +11:00
Cillian O'Ruanaidh
b78258c505 Replace references to :split_checkout translation keys with :checkout in views, controllers, etc. 2023-12-01 12:37:13 +00:00
Gaetan Craig-Riou
5ba21e486a Recalculate voucher voucher adjusment when needed
We need to recalculate the voucher adjustment(s) in the following
scenarii :
When a voucher as been added to the order and :
  * Moving to the payment step from details step, to take into account
    potential change in shipment fees. (this happen if we return to the
    details step after reaching the summary step)
  * Moving to the summary step from payment step, to take into account
    payment fees
2023-10-20 16:49:21 +11:00
Gaetan Craig-Riou
d0e38c8d10 Add order event back_to_payment and back_to_address
It gives the possibility to move an order back to payment state or
address state when going through the checkout steps
2023-10-18 09:36:37 +11:00
Neal Chambers
ed06edda3f Fix Style/HashSyntax 2023-09-13 16:45:00 +09:00
Gaetan Craig-Riou
a5b2bc6293 Per review, Refactor VoucherAdjustmentsService
Change #calculate to #update and clean up internal code
2023-07-18 15:16:21 +10:00
Gaetan Craig-Riou
a584f9aaec Refactor VoucherAdjustmentsService
It's more inline with existing coding style
2023-07-18 14:39:01 +10:00
Gaetan Craig-Riou
ca7dcb82b8 Apply voucher after transitionning to the confirmation step
Testing that VoucherAdjustmentsService.calculate has been called after a
transition doens't work, skipping test for now.
2023-07-14 14:47:03 +10:00
Matt-Yorkley
06c9697d0d Don't try to cancel shipments that might already be cancelled 2023-06-14 10:19:30 +01:00
Matt-Yorkley
074eb4b592 Move tax charge logic out of checkout controller and update payment transition 2023-06-13 17:53:46 +01:00
Matt-Yorkley
4e7fab6914 Delete dead code Checkout#find_transition
This method is only called from tests and nowhere else in the codebase. We may as well remove it.
2023-06-13 14:58:16 +01:00
Mohamed ABDELLANI
907c65d98c run create_tax_charge! after transition to payment state 2023-06-13 14:58:16 +01:00
Matt-Yorkley
bf051fc35b Pull checkout-workflow-related callback methods out into the Checkout module which defines checkout state changes 2023-06-07 18:54:20 +01:00
Matt-Yorkley
7c72969792 Move Order #state_changed method out into Checkout concern (alongside order states logic) 2023-06-05 23:54:04 +01:00
Matt-Yorkley
35392cb117 Remove Order#set_payment_amount! 2022-02-01 11:39:07 +00:00
Matt-Yorkley
71412f8d4b Update validations 2021-09-06 14:22:28 +01:00
Matt-Yorkley
e3e53b1504 Ensure feature toggle works for non-logged-in users 2021-09-05 22:39:47 +01:00
Matt-Yorkley
57504f42d8 Move validations to state transitions 2021-09-01 15:04:53 +01:00
Matt-Yorkley
4d77d4df77 Add confirm event and update workflow helpers 2021-08-11 15:53:01 +01:00
Andy Brett
d2701226b6 complete order immediately before adding payment 2021-06-29 11:45:33 -07:00
Matt-Yorkley
e246eed99d Move #restart_chceckout_flow out of Order class 2021-06-04 17:10:50 +01:00
Maikel Linke
1364b878fe Add ApplicationRecord for customisations
Rails 5 introduced this new class to confine application-specific monkey
patches to our models only, and not leak into other libraries using
ActiveRecord::Base.

https://bigbinary.com/blog/application-record-in-rails-5
2021-04-15 15:59:03 +10:00
jibees
ca36996060 Merge pull request #7314 from Matt-Yorkley/order-payment-amount
Rename #charge_shipping_and_payment_fees! to #set_payment_amount!
2021-04-08 21:22:56 +02:00
Matt-Yorkley
ac67f7391e Update tax charging in checkout flow 2021-04-04 19:19:06 +01:00
Matt-Yorkley
2d647be8b4 Rename #charge_shipping_and_payment_fees! to #set_payment_amount!
This method sets the order's payment amount during the checkout. It doesn't really have anything to do with shipping or payment fees...
2021-04-03 16:14:38 +01:00
Matt-Yorkley
a46a0b609e Remove dead code in Order::Checkout module
🔥
2021-03-28 23:57:16 +01:00
Andy Brett
bc7469c7aa fix order test 2021-03-09 16:22:46 +01:00
Matt-Yorkley
91908a0e4c Switch from state_machine to state_machines gem
The old version is completely unmaintained and does not work with Rails 4.2
2020-11-27 14:00:28 +00:00
Luis Ramos
07b3c100e8 Remove code and specs related to dynamic checkout workflow, we have a static workflow defines in the Order class 2020-10-15 16:06:27 +01:00
Luis Ramos
e99f0dc6b7 Rubocop autocorrect and easy rubocop issues 2020-07-28 23:29:49 +01:00
Luis Ramos
d8a96c9d34 Bring order checkout workflow and some of its specs from spree_core 2020-07-28 23:29:49 +01:00