Commit Graph

120 Commits

Author SHA1 Message Date
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
Rob Harrington
2aad722b4b WIP, SO placement job: preventing payments on standing orders from being processed when OC opens 2018-02-09 14:43:40 +11:00