Commit Graph

628 Commits

Author SHA1 Message Date
Nihal M. Kelanthodika
c6219a47c3 Remove stray space 2021-10-06 15:06:56 +05:30
Nihal Mohammed
1c72cd799d Permit :id attribute in PermittedAttributes:BusinessAddress 2021-10-06 15:06:56 +05:30
Nihal Mohammed
3cd5ed58c0 Add checkbox to clear business_address form 2021-10-06 15:06:56 +05:30
Nihal Mohammed
26c7cb2bd3 Fix business_address attribute permissions 2021-10-06 15:06:56 +05:30
Nihal Mohammed
783b055d55 Add business address permitted attributes 2021-10-06 15:06:20 +05:30
Jean-Baptiste Bellet
78bbee49e9 Search for orders that are finalized
Thus, we display the orders that contains at least one line item (whatever its state) + the finalized orders

NB // Finalized state : complete canceled resumed awaiting_return returned
2021-09-23 11:06:15 +02:00
Maikel
02a10ede15 Merge pull request #7938 from dacook/product-image-import
Add script to import product images from URL
2021-09-20 16:57:23 +10:00
Maikel
9affc6a945 Merge pull request #8108 from Matt-Yorkley/andand
Remove `andand` gem
2021-09-10 15:06:00 +10:00
Andy Brett
069cb043ee Merge pull request #8148 from jibees/5236-remove-incomplete-orders-from-admin-interface-2
Only shows order that actually have at least one line_item V2
2021-09-09 16:49:30 -07:00
Andy Brett
f8486bcbf8 Merge pull request #7769 from Matt-Yorkley/payment-status-checking
Stripe: payment status debugging
2021-09-08 15:21:38 -07:00
Andy Brett
afa1861181 pass payment to Stripe Validator instead of the status object 2021-09-08 12:26:56 -07:00
Matt-Yorkley
1d5077061e Remove andand
This old gem implemented some functionality for handling nils which is no longer needed, as it's provided natively by Ruby with the &. operator.
2021-09-08 14:28:31 +01:00
Jean-Baptiste Bellet
0ec35b1f0d Only shows order that actually have at least one line_item
Filter inside the API to shows only orders that have at least one line items
2021-09-07 17:25:46 +02:00
Matt-Yorkley
3bcfc673f7 Ensure selected shipping method is actually selected
Hashes with symbol keys != hashes with string keys 🙈
2021-09-06 20:58:22 +01:00
Matt-Yorkley
fb7a3a681b Validate attributes per checkout step and decouple order-advancing 2021-09-06 14:25:16 +01:00
Matt-Yorkley
4cff185b4b Extract params handling to service 2021-09-01 15:04:53 +01:00
Matt-Yorkley
2786fb30ba Simplify order advancing process 2021-09-01 15:04:33 +01:00
Andy Brett
fba7699d0b select shipping method when advancing to payment 2021-08-31 11:00:54 +02:00
Matt-Yorkley
dbefd95b5e Improve order workflow shipping method selection 2021-08-12 12:53:45 +01:00
Matt-Yorkley
e91a8d603f Return a boolean in OrderWorkflow#advance_to_state
Returns true if advancing was successful, which is helpful in control flows that use the method in a conditional
2021-08-11 15:53:01 +01:00
Matt-Yorkley
4d77d4df77 Add confirm event and update workflow helpers 2021-08-11 15:53:01 +01:00
Matt-Yorkley
886e03af2f Merge pull request #7805 from Matt-Yorkley/adjustments-admin
[Adjustments] Admin adjustments
2021-07-27 12:23:29 +02:00
Matt-Yorkley
6daa37a5c0 Ensure TaxRateFinder returns an array if the given adjustment has no tax 2021-07-25 22:47:40 +01:00
Matt-Yorkley
cab36f375b Update app/services/order_tax_adjustments_fetcher.rb
Co-authored-by: Maikel <maikel@email.org.au>
2021-07-25 22:47:40 +01:00
David Cook
c156d0c2e6 Add script to import product images from URL
With new ImageImporter.

Co-authored-by: Maikel <maikel@email.org.au>
2021-07-16 11:36:49 +10:00
Nihal Mohammed
6bd28bcad8 Update products_renderer for pagy pagination 2021-07-14 13:17:33 +01:00
Matt-Yorkley
eba60a6130 Deal with Api::OrdersController and SearchOrders service 2021-07-14 13:17:33 +01:00
Nihal Mohammed
e5bdaa603a Setup pagy 2021-07-14 13:17:33 +01:00
Matt-Yorkley
0876f2ae0d Remove tax rate guessing from TaxRateFinder
🎉
2021-07-09 21:49:36 +01:00
Matt-Yorkley
b3f5780862 Refactor OrderTaxAdjustmentsFetcher
Note: we're only dealing with tax adjustments here, and each adjustment has a single associated tax rate, not multiple.
2021-07-09 21:49:35 +01:00
Matt-Yorkley
ea9724a671 Remove dead code #adjustment_tax_amount and #no_tax_adjustments? 2021-07-09 21:49:35 +01:00
Matt-Yorkley
02fc3089d6 Remove dead code OrderTaxAdjustmentsFetcher#all 2021-07-09 21:49:35 +01:00
Matt-Yorkley
32a2610e7d Refactor arguments for PaymentIntentValidator 2021-07-09 13:42:41 +01:00
Matt-Yorkley
e1846b1030 Extract Stripe payment helper methods to a service 2021-07-09 13:42:40 +01:00
Matt-Yorkley
e5a85caef6 Refactor Stripe::PaymentIntentValidator
This makes the interface a lot simpler and moves the fetching of the information it requires inside the service itself.
2021-07-09 13:39:52 +01:00
Andy Brett
46cd05c54a Merge pull request #7712 from guidoDutra/1861-enable-shopfront-sorting-by-producer
Enable sorting by producer in shopfront
2021-07-06 09:27:42 -07:00
Andy Brett
a97b5b7c90 rename payment state machine events to be verbs 2021-06-29 11:54:51 -07:00
Andy Brett
9b1da14380 mark payment failed after failed authorization 2021-06-29 11:54:51 -07:00
Andy Brett
f61fbee52a refactor to advance_to_state method
this leaves `advance_order!` as is since it's not directly touched by this PR and the metaprogramming looks like it would decrease readability
2021-06-29 11:54:51 -07:00
Andy Brett
aa8067f96b process payments separately from completing the order 2021-06-29 11:54:48 -07:00
Andy Brett
d2701226b6 complete order immediately before adding payment 2021-06-29 11:45:33 -07:00
Pau Perez
1f3560e964 Pass in the order when it's already initialized
At `CapQuantity`'s instantiation time the proxy's order is not yet
initialized, and so `CapQuantity` was checking against nil all the time.

This went unnoticed because the job's specs were not integration-level
tests and were stubbing way too many things.
2021-06-23 13:47:42 +02:00
Pau Perez
827faef690 Fix call to #record_and_log_error 2021-06-21 10:30:12 +02:00
Pau Perez
b69aeae892 Rename PlaceOrder to PlaceProxyOrder
As discussed in
https://github.com/openfoodfoundation/openfoodnetwork/pull/7281#discussion_r650183813.
2021-06-21 10:30:12 +02:00
Pau Perez
f92ca964db Improve service name
As discussed in
https://github.com/openfoodfoundation/openfoodnetwork/pull/7281#discussion_r650069982.
2021-06-21 10:30:12 +02:00
Pau Perez
8bcb19f293 Split method into higher-level smaller methods 2021-06-21 09:49:07 +02:00
Pau Perez
f61cdb6608 Extract CapQuantityAndStoreChanges service
This is a responsiblity of its own that makes the job's tests really
complex.
2021-06-21 09:49:07 +02:00
Pau Perez
f785851236 Use time with zone 2021-06-21 09:47:49 +02:00
Pau Perez
fcb013eb2a Extract subs placement job logic into new service
While doing that we pass stock changes to the service but we
lazy-evaluate them. This way we don't fetch all this data from DB when
it might not be used due to an early return.

Also, this makes it possible to save the stock-related logic for later.

Finally, when changing things to rely on `#initialize_order`'s boolean
return value I noticed though, that we were evaluating
`proxy_order.order` too early.  When instantiating the service object it
won't exist yet.
2021-06-21 09:47:49 +02:00
Pau Pérez Fabregat
db993652c4 Merge branch 'master' into payment-states 2021-06-18 12:20:26 +02:00