Commit Graph

121 Commits

Author SHA1 Message Date
Matt-Yorkley
627b101be9 Don't process proxy_order if the order has been cancelled 2019-02-24 12:06:58 +00:00
Maikel Linke
e6adb8a3b9 Extract email setup in specs for easy upgrade
The way we set up email sending completely changes with Spree 2. This
change encapsulates that code in a single method so that it can be
changed easily and doesn't create further merge conflicts while we are
still working on the master branch and the Spree upgrade.
2018-10-25 13:53:22 +11:00
Rob Harrington
3dacd06b6b Reload order before sending emails to ensure state is up to date 2018-07-05 19:26:12 +10:00
Pau Pérez Fabregat
7ff7fe4891 Merge pull request #2122 from oeoeaio/subs-unplaced-fees
Subs: prevent fees from displaying in email when subscription order cannot be fulfilled
2018-06-06 07:57:18 +02:00
Rob Harrington
e3ea60fda5 Process proxy orders even if underlying subscription has been paused or cancelled 2018-06-01 16:57:56 +10:00
Rob Harrington
6a71aafce1 Update totals for empty order before sending email 2018-04-16 17:07:07 +10:00
Rob Harrington
f5e77cdcec Ensure order total for uplaced subscription orders is zero 2018-04-16 17:07:07 +10:00
Rob Harrington
50ffd7ca01 Clear adjustments on subs orders when no items are able to be fulfilled
This prevents shipping and payment fees from being displayed in the notification email
2018-04-16 17:07:07 +10:00
Pau Perez
aa4bd7f397 Improve code style and docs of job 2018-02-09 09:53:39 +01:00
Rob Harrington
b7876ebfbf Replace references to 'standing order' with 'subscription' (spec) 2018-02-09 14:44:14 +11:00
Rob Harrington
902802594f Renaming standing order files (lib, spec) 2018-02-09 14:44:13 +11:00
Rob Harrington
fe7b86ff60 Fix broken call to log_order which should have been record_order 2018-02-09 14:44:12 +11:00
Rob Harrington
ceab1fe16a Reduce cognitive complexity of StandingOrderPaymentUpdater 2018-02-09 14:44:11 +11:00
Rob Harrington
7ca60e1990 Use activerecord error translations properly 2018-02-09 14:44:09 +11:00
Rob Harrington
8ba1a909ca Use summarizer for standing order confirm job 2018-02-09 14:44:08 +11:00
Rob Harrington
b49c44f7ce Generalise record_failure method to record_and_log_error 2018-02-09 14:44:08 +11:00
Rob Harrington
818af47613 Move rescue clause to process method
This prevents a placement email from being sent unless the order is processed successfully
2018-02-09 14:44:08 +11:00
Rob Harrington
ef6c9ec0f0 Integrate standing order summarizer into placement job 2018-02-09 14:44:08 +11:00
Rob Harrington
fb28940952 Use Time.zone.now instead of Time.now 2018-02-09 14:44:07 +11:00
Rob Harrington
03f1980b1b Auto-correct rubocop offences for standing-orders 2018-02-09 14:44:07 +11:00
Rob Harrington
26a325e6e0 Handle payment processing errors for standing orders 2018-02-09 14:44:07 +11:00
Rob Harrington
6e83c6dc86 Move standing order emails to a dedicated StandingOrderMailer 2018-02-09 14:44:07 +11:00
Rob Harrington
d6a9d63de5 Replace StandingOrderSyncJob with ProxyOrderSyncer service object 2018-02-09 14:44:06 +11:00
Rob Harrington
3aee0b5e70 Allow proxy order syncer to accept both ActiveRecord::Relation or StandingOrder 2018-02-09 14:44:06 +11:00
Rob Harrington
6d5c920a95 Split proxy order sync logic out into dedicated service object 2018-02-09 14:44:06 +11:00
Rob Harrington
c20c9e2e78 Use the rails logger instead of Bugsnag 2018-02-09 14:44:04 +11:00
Rob Harrington
f4f6fb6a7a Update and process standing order payments prior to confirmation 2018-02-09 14:44:04 +11:00
Rob Harrington
f969caa2d1 Do not place standing order when no items are available
Send notification to customer informing them that an order was not placed...
2018-02-09 14:44:02 +11:00
Rob Harrington
ae209f72b9 Removing unrequired OrderCycleOpenCloseJob 2018-02-09 14:43:58 +11:00
Rob Harrington
2859075e43 WIP: StandingOrderConfirmJob no longer scoped to an order cycle 2018-02-09 14:43:58 +11:00
Rob Harrington
0e50009875 WIP: StandingOrderPlacementJob no longer scoped to an order cycle 2018-02-09 14:43:58 +11:00
Rob Harrington
514a462f7b WIP: Refactor, of standing order placement and confirmation jobs
ie. Transfering responsibility for tracking standing order placement and confirmation to proxy orders
2018-02-09 14:43:58 +11:00
Rob Harrington
15fb493d9a StandingOrderPlacementJob: cap quantity at 0 for items not available through OC 2018-02-09 14:43:56 +11:00
Rob Harrington
994baf12c4 Adding specs to ensure placement emails are sent 2018-02-09 14:43:56 +11:00
Rob Harrington
d0f4cc2ee2 PlacementJob loads ProxyOrders based on order cycle close date 2018-02-09 14:43:55 +11:00
Rob Harrington
c4c9c92d7e Refactoring StandingOrderPlacementJob, loading ProxyOrders and initialsing where necessary 2018-02-09 14:43:55 +11:00
Rob Harrington
875557dc9d WIP: ProxyOrders don't require an order, fixing remainder of specs 2018-02-09 14:43:55 +11:00
Rob Harrington
2231d4c6cf Using factories to build spec data rather than StandingOrderForm 2018-02-09 14:43:54 +11:00
Rob Harrington
64206bc35b ProxyOrders belong to order cycles 2018-02-09 14:43:54 +11:00
Rob Harrington
e351c3e355 Renaming StandingOrderOrder to ProxyOrder 2018-02-09 14:43:54 +11:00
Rob Harrington
fc845a36f1 Fix weird spec failure cause by a Rails.cache.clear call resetting the currency to USD on CI only 2018-02-09 14:43:54 +11:00
Rob Harrington
e068c4831b Adding job to send confirm emails for standing orders on order cycle close 2018-02-09 14:43:54 +11:00
Rob Harrington
f7229ab229 Uninitialised but recently updated order_cycles also trigger StandingOrderPlacementJob 2018-02-09 14:43:53 +11:00
Rob Harrington
ef5ff3a663 Adding job to re-sync standing orders when order cycles are added to or removed from schedules 2018-02-09 14:43:53 +11:00
Rob Harrington
9a984963a7 Ensuring that only active standing orders are processed when order cycle opens 2018-02-09 14:43:53 +11:00
Rob Harrington
8c9765749e Ensuring that backorders are disabled when testing quantity capping for standing orders 2018-02-09 14:43:43 +11:00
Rob Harrington
f14c36ed6b Sending placement email when standing order order in placed on OC open 2018-02-09 14:43:42 +11:00
Rob Harrington
ef00dca5a0 Changing format of changes object in standing order placement job 2018-02-09 14:43:41 +11:00
Rob Harrington
3edfd07a40 WIP: adding method to StandingOrderPlacementJob to send emails 2018-02-09 14:43:41 +11:00
Rob Harrington
5e0186fa1f Standing Order Placement Job: capping line items quantities to available stock level 2018-02-09 14:43:41 +11:00