Commit Graph

7324 Commits

Author SHA1 Message Date
Rob Harrington
2012c23956 Reduce cognitive complexity of ProxyOrder#state 2018-02-09 14:44:12 +11:00
Rob Harrington
88a5d4be47 Reduce cognitive complexity of LineItemSyncer#update_item_quantities 2018-02-09 14:44:12 +11:00
Rob Harrington
224249d66b Reduce cognitive complexity of OrderSyncer 2018-02-09 14:44:11 +11:00
Rob Harrington
ceab1fe16a Reduce cognitive complexity of StandingOrderPaymentUpdater 2018-02-09 14:44:11 +11:00
Rob Harrington
ce09a8dad6 Reduce cognitive complexity of StandingOrder#state 2018-02-09 14:44:11 +11:00
Rob Harrington
d6924d2866 Add comment to OrderUpdateIssues 2018-02-09 14:44:11 +11:00
Rob Harrington
3e68973812 Rename StandingOrderUpdater to OrderSyncer 2018-02-09 14:44:11 +11:00
Rob Harrington
bbc3cad67d Refactor large StandingOrderUpdater#update! method
Note: extracted line items logic into separate class
2018-02-09 14:44:11 +11:00
Rob Harrington
50d3522b2c Extract logic for recording issues with updating orders to separate class 2018-02-09 14:44:11 +11:00
Rob Harrington
2c5bfab29f Refactoring price estimation logic for StandingOrderForm 2018-02-09 14:44:11 +11:00
Rob Harrington
844cd79270 Clean-up of standing order form and spec 2018-02-09 14:44:10 +11:00
Rob Harrington
8ae4307a69 Move logic for updating orders to dedicated class 2018-02-09 14:44:09 +11:00
Rob Harrington
2c40252edb Extract validation logic for standing orders into service object 2018-02-09 14:44:09 +11:00
Rob Harrington
0c302b022a Move StandingOrderForm to app/services folder 2018-02-09 14:44:09 +11:00
Rob Harrington
7581779a0d Remove weird escape characters 2018-02-09 14:44:09 +11:00
Rob Harrington
f9727de206 Comment out interface for turning standing orders ON for an enterprise 2018-02-09 14:44:09 +11:00
Rob Harrington
76daa183d5 Add orders sub-menu to standing-order index page 2018-02-09 14:44:09 +11:00
Rob Harrington
981b874263 Remove unused method active? for order cycles 2018-02-09 14:44:09 +11:00
Rob Harrington
4362ef2cea Properly translate all error messages for StandingOrderForm 2018-02-09 14:44:09 +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
c86207212f Add confirmation summary email 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
13d01df4d8 Add mail method and template for sending placement summary emails to shop owners 2018-02-09 14:44:08 +11:00
Rob Harrington
0c0e12e165 Show edit link in placement email if changes are allowed by shop 2018-02-09 14:44:08 +11:00
Rob Harrington
8bf460c93a Manually fix remaining rubocop offences 2018-02-09 14:44:08 +11:00
Rob Harrington
f902b8cef0 Fix rubocop Style/ClassAndModuleChildren offences 2018-02-09 14:44:07 +11:00
Rob Harrington
84ad996ef8 Use guard clauses 2018-02-09 14:44:07 +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
67e05cea9c Add failed payment email to StandingOrderMailer 2018-02-09 14:44:07 +11:00
Rob Harrington
0ccb0ce0e4 Make standing order header partial more generic 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
cdf04323a9 Serialize standing order credit_card_id to enable selection in edit form 2018-02-09 14:44:06 +11:00
Rob Harrington
bdac68900f Move address and card loading logic down into DetailsController
Also switch to using CreditCardResource to load the card
2018-02-09 14:44:05 +11:00
Rob Harrington
a5ae4c801c Initialize ofn-select2 with empty array when data is a promise 2018-02-09 14:44:05 +11:00
Rob Harrington
404913dcfa Move form-saving logic into dedicated StandingOrderForm service 2018-02-09 14:44:05 +11:00
Rob Harrington
ca1485f121 Add missing translations for proxy order controller error messages 2018-02-09 14:44:04 +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
ac8e09bc11 Add credit card validation to StandingOrderForm 2018-02-09 14:44:04 +11:00
Rob Harrington
f95d1ef058 Show message when no credit cards available for a customer 2018-02-09 14:44:04 +11:00
Rob Harrington
61b64a7516 Add credit card selection element to standing orders form 2018-02-09 14:44:04 +11:00
Rob Harrington
494f2f4821 Add cards lookup action to CustomersController 2018-02-09 14:44:04 +11:00