Commit Graph

1095 Commits

Author SHA1 Message Date
Luis Ramos
c37218fdc5 Merge pull request #4719 from luisramos0/stripe_card_to_pm
Make StripeSCA payment method work with existing credit cards (the ones saved through the Stripe Charges API)
2020-03-02 17:22:07 +00:00
Luis Ramos
dad21a52b2 Merge pull request #4672 from luisramos0/stripe_sca_method
Add new Stripe payment method compatible with the new Stripe Payment Intents API
2020-03-02 17:19:05 +00:00
Pau Pérez Fabregat
97a65d760f Merge pull request #4527 from luisramos0/subs_logs
Improve Subscriptions logging
2020-03-02 15:48:45 +01:00
Luis Ramos
60e12063cd Merge pull request #4758 from luisramos0/fix_incomplete_stripe
Make the payment methods filter handle misconfigured stripe payment methods
2020-02-25 18:47:09 +00:00
luisramos0
404e7c1f37 Make credit card cloner clone the payment method even if the customer is not given
This makes the payments without saving card work again in the frontoffice as well as the payments taken by the seller in the backoffice
2020-02-21 14:11:13 +00:00
Luis Ramos
ccb4c77d1f Adapt credit card cloner to not clone card if it's a card to be used only once
Adapt stripe_sca specs to new cloner logic
2020-02-21 10:56:32 +00:00
luisramos0
5ef1510fc7 Adapt CreditCard cloner to clone not 'cards of the platform account to payment_methods of the connected accounts' but instead 'cards or payment_methods of the platform account to payment_methods of the connected accounts'
This process mimicks the existing process of generating a token on the connected account from a card on the platform account. In the Payment Intents API we need to create a payment method in the connected account, a token is not enough
2020-02-21 10:56:32 +00:00
luisramos0
1afd712ff4 Make StripeSCA store cards (and delete them) on the Stripe platform account and not the Stripe Connected account (the sellers accounts)
This is important so that cards can be re-used across sellers in OFN
2020-02-21 10:56:32 +00:00
luisramos0
3fb1df9bb3 Rename CardCloner to CreditCardCloner because it's dependent on Spree:CreditCard attributes 2020-02-21 10:56:32 +00:00
luisramos0
14c03ead31 Extract CardCloner to separate class 2020-02-21 10:56:32 +00:00
luisramos0
b3ac5d8f41 Improve code readability a little 2020-02-21 10:52:56 +00:00
luisramos0
4e84310d63 Add StripeSCA where StripeConnect is treated as an exception in the setting up of process of a payment method and subscriptions
Here we are copy pasting and adding stripe SCA because we are planning to delete the StripeConnect that will be replaced by the stripe sca implementation
2020-02-21 10:52:56 +00:00
luisramos0
b8457ebece Make profile storer a bit easier to read 2020-02-21 10:52:56 +00:00
Luis Ramos
6bb04f6cc6 Adapt stripe_sca_spec to actual stripe SCA API 2020-02-21 10:52:55 +00:00
luisramos0
ac8f3c811f Fix rubocop issues in some stripe integration related files 2020-02-21 10:52:55 +00:00
luisramos0
ec7b91bb68 Make ProfileStorer a bit easier to read 2020-02-21 10:52:29 +00:00
luisramos0
db1065a69e Make saving a card on checkout work with the payment intents api by making profile storer work with the slightly different api responses from stripe 2020-02-21 10:52:29 +00:00
luisramos0
5724c3bb0a Add code from ActiveMerchant v1.98.0 that supports the Stripe Payment Intents API
This commit can be reverted once we upgrade to v1.98.0
2020-02-21 10:52:29 +00:00
Luis Ramos
d99cba3b6e Merge pull request #4709 from mkllnk/4172-js-pluralize
Pluralize common variant unit names
2020-02-19 22:28:54 +00:00
luisramos0
01d69c89aa Add some log messages to help debug problems in subscription placement and subscription confirmation processes 2020-02-07 10:06:58 +00:00
luisramos0
a2801e40a2 Improve readability of proxy_order_syncer and add some log messages 2020-02-07 10:06:58 +00:00
luisramos0
b0f2e01c70 Delete extra inventory_units that are for some unknown reason connected to shipments of orders to delete but not to orders to delete 2020-02-05 16:30:14 +11:00
Luis Ramos
a8b48a561f Merge pull request #4733 from lin-d-hop/master
Fixing incorrect payment and balance calculation
2020-02-04 18:11:48 +00:00
Luis Ramos
ea75714561 Merge pull request #4635 from luisramos0/main_app_routes
Replace use of spree.root_path and root_url with main_app.root_path and main_app.root_url
2020-02-04 16:02:48 +00:00
luisramos0
6e78ae762a Make it work even if preferred_enterprise_id is null 2020-02-04 10:01:18 +00:00
Maikel Linke
9535c5647f Make pluralisation code an independent lib
I considered moving the code to a service but I think that this code
can be completely independent of the Open Food Network use case. It
would be easy to move to a gem. The downcasing may need reconsidering
for general use.
2020-01-31 09:48:32 +11:00
Maikel Linke
1cce106977 Use our unit name pluralization in Ruby
This code will be used for the shop front and reports.
2020-01-31 09:48:32 +11:00
lin-d-hop
baf1ecb436 Fixing incorrect payment and balance calculation
Corrections and added specs
2020-01-29 16:06:06 +00:00
Matt-Yorkley
7d36c3b5aa Make some private methods public in orders_and_fulfillments_report.rb
Fixes errors for "call to private method ..."
2020-01-15 13:05:36 +01:00
luisramos0
cbec495620 Fix some rubocop issues in order_and_distributor_report 2019-12-29 19:01:44 +00:00
luisramos0
55eea21bb0 Adapt order_and_distributor_report to the new editable_orders query 2019-12-29 19:01:44 +00:00
luisramos0
a8a6fce385 Prefix root_path with main_app so that ofn's route is used. The spree root path will no longer be defined when spree_backend is dropped 2019-12-28 18:45:57 +00:00
luisramos0
0202b59634 Remove eager loding of shipping_methods and shipping_rates from customer_totals so that report runs faster
Something makes the query run much slower with these includes
2019-12-10 21:18:17 +00:00
Luis Ramos
6db15a0a20 Merge pull request #4524 from Matt-Yorkley/packing_reports
Packing reports performance
2019-12-02 17:32:52 +00:00
luisramos0
1e948735fb Fix major performance problem by inverting the logic, instead of looking for line_items that are hidden, it looks for line items that are not editable using a merge statement that performs much better
Also, remove unnecessary if clause, merge will return an empty relation if no items are found, no need to test for empty.

The test report runs in a little over one minute instead of 8minutes
2019-11-30 22:38:03 +00:00
luisramos0
0ef4247914 Convert Report::LineItems to class and memoize orders so it's only executed once (this improves the report in 3secs for the case I am testing) 2019-11-29 21:51:54 +00:00
Matt-Yorkley
6d1fb63a21 Eager-load option_values on line_item objects instead of variants in packing reports. 2019-11-29 20:16:48 +01:00
Matt-Yorkley
9bcd303f4f Remove shipping_category N+1 from packing reports 2019-11-29 20:16:48 +01:00
Matt-Yorkley
51177b833e Remove customer_code N+1 from packing reports 2019-11-29 17:09:12 +01:00
luisramos0
cc3368704a Fix rubocop issues in reports_controller_decorator and in report line_items 2019-11-29 13:54:30 +00:00
luisramos0
3959f16d65 Switch some more references from Permissions to Permissions::Order 2019-11-29 12:22:50 +00:00
luisramos0
beaa8ffa27 Use more specific selector to avoid ambigous column error 2019-11-29 11:45:22 +00:00
luisramos0
da6d035a1d Rename some reports permissions to order_permissions 2019-11-29 11:23:17 +00:00
luisramos0
5cb77c443b Fix rubocop issues 2019-11-29 10:53:40 +00:00
luisramos0
484cdd1e07 Make managed_and_related_enterprises public so they can be used by other permissions classes 2019-11-29 10:49:27 +00:00
luisramos0
89056e13ed Extract order permissions to a separate class 2019-11-29 10:48:58 +00:00
luisramos0
df0458743b Replace pluck with select in permissions to avoid extra queries 2019-11-28 23:37:49 +00:00
Matt-Yorkley
cbb3f202ca Eager-load option_values in OpenFoodNetwork::ScopeVariantsForSearch 2019-11-23 10:58:18 +01:00
Matt-Yorkley
07fe8e8390 Eager-load option_values in various reports 2019-11-23 10:58:18 +01:00
Matt-Yorkley
6e58ffa927 Enable variant option_values to be successfully eager-loaded 2019-11-23 10:58:18 +01:00