Maikel Linke
f8bd0a1cc7
Adjust backorder for stock controlled items
...
We aggregate quantities over the whole order cycle to account for
cancelations and order adjustments by admins.
2024-10-03 15:58:53 +10:00
Maikel Linke
09de223c93
Backorder stock controlled products
2024-10-03 13:30:16 +10:00
Maikel Linke
74c80c9fff
Prepare BackorderJob for stock controlled items
...
We want to trigger the backordering for any linked product now. So let's
do that check early and then select the variants in the background.
It means less data passed to the job and less space for race conditions.
2024-10-03 13:28:20 +10:00
Maikel Linke
11f3bbc566
Remove leftover recording
2024-10-03 13:28:17 +10:00
Maikel Linke
e5ee398f26
Re-use default stock location in specs
2024-10-03 08:24:16 +10:00
Maikel Linke
99c098f567
Ignore StockLocation#active, it's always active
2024-10-03 08:24:16 +10:00
Maikel Linke
4b1d7d8a41
Remove dead permission to access StockLocation
...
We don't have any UI to edit stock locations. So this ability is unused.
2024-10-03 08:24:15 +10:00
Maikel Linke
1e3c18f3f6
Remove unneeded method StockLocation#propagate_variant
2024-10-03 08:24:15 +10:00
Gaetan Craig-Riou
22428fc78d
ConnectedApps controller, handle ConnectedApps::Vine
...
Add logiv to connect and disconnect VINE API plus spec
2024-10-02 16:44:27 +10:00
Gaetan Craig-Riou
f980cb45f6
Add logic for ConnectedApps::Vine#connect and disconnect
2024-10-02 16:44:27 +10:00
Gaetan Craig-Riou
097c6dee2f
Add VineApiService and specs
...
It handles connection to the VINE API
2024-10-02 16:44:21 +10:00
Gaetan Craig-Riou
1a30cf6495
Hide VINE token
2024-10-02 16:19:03 +10:00
Gaetan Craig-Riou
f7708d69a7
Add VineJwtService
...
Generate a JWT token to be used to connect to the VINE api
2024-10-02 16:16:28 +10:00
Maikel Linke
ac3730096f
Update specs to assume backorderable default
2024-10-02 15:13:00 +10:00
Gaetan Craig-Riou
aa5feb6605
Remove system spec
...
It's covered by unit test of order updater
2024-10-02 09:33:02 +10:00
Maikel Linke
17c32ae09a
Spec change more clearly
2024-10-01 13:16:16 +10:00
Maikel Linke
0474c591de
Fix date-dependent spec
2024-10-01 13:14:09 +10:00
Maikel
196956140e
Merge pull request #12856 from mkllnk/dfc-order
...
Place backorders for linked products via DFC integration
2024-10-01 10:51:00 +10:00
Gaetan Craig-Riou
b2b6847882
Fix test data
...
The future is now ! :D
2024-10-01 10:38:33 +10:00
Gaetan Craig-Riou
a74cf97083
Fix spec when adding a product with transaction fee
...
Previous iteration did not actually check the payment fee had been
updated. It also checks the order total get correctly updated.
Spec is passing, so fixing the order updater also fix this bug
: https://github.com/openfoodfoundation/openfoodnetwork/issues/12512
2024-10-01 09:49:44 +10:00
Gaetan Craig-Riou
03dbd54b25
Fix order updater to update payment fees
...
The order updater did not take into account payment fees on pending
payment.
2024-09-30 16:15:59 +10:00
Gaetan Craig-Riou
fafd86a2db
Revert change made in https://github.com/openfoodfoundation/openfoodnetwork/pull/12538
...
Although the change fix the issue in the back office scenario, it has
the side effect of getting the order total out of sync. Updating a
payment adjustment need to be followed by udpating the order total and
payment amount to keep everything in sync.
2024-09-30 16:04:44 +10:00
Gaetan Craig-Riou
91f2ca9286
Merge pull request #12734 from cillian/replace-text-angular-with-trix
...
Replace text angular editor with trix editor in About Us and Shopfront message fields
2024-09-30 09:40:48 +10:00
Filipe
da0660c119
Merge pull request #12857 from chahmedejaz/task/12626-add-clone-failure-explaination
...
[BUU] Fix No explanation why cloning failed
2024-09-27 17:58:31 -06:00
wandji20
84a2e6c24d
Add browser unsaved changes modal when navigation form order sumary page [OFN-11600]
2024-09-27 16:52:55 -06:00
Cillian O'Ruanaidh
f474afaceb
Merge in latest :master and resolve conflict in app/models/enterprise.rb
2024-09-27 10:11:26 +01:00
wandji20
a11873559b
Make OC edit warning modal cancel button redirect user to OC list [OFN-12774]
2024-09-27 10:02:49 +02:00
Maikel Linke
51b3770188
Keep failed backorder job in dead set
...
From Sidekiq's view, the job is successful when we rescue an error and
it will discard it. But we want the option to inspect the job and retry
it. Failing jobs are also reported to Bugsnag automatically.
I didn't specify `retry: false` because that discards the job as well.
But `retry: 0` should sent it straight to the dead set. No automatic
retries but it's treated like a failed job.
2024-09-26 14:32:55 +10:00
Maikel Linke
989a6d57e0
Notify user of failed backorder completion
2024-09-26 14:32:55 +10:00
Maikel Linke
495634b60c
Send error notification to owner
2024-09-26 14:32:55 +10:00
Maikel Linke
49fd1dc4a6
Report backorder errors instead of failing checkout
2024-09-26 14:32:55 +10:00
Maikel Linke
e31e45b875
Place backorders in the background
2024-09-26 14:32:55 +10:00
Maikel Linke
eece738865
Restore concurrency spec for the checkout
...
This was abandoned when the checkout was re-designed. But I want to
refactor the order locking mechanism and it would be good to know that I
don't break anything.
2024-09-26 14:32:55 +10:00
Gaetan Craig-Riou
eb8050d61d
Add spec reproducing the bug
2024-09-25 15:58:28 +10:00
Maikel Linke
66f080232f
Import DFC product images
2024-09-25 10:55:41 +10:00
Maikel Linke
7f62b49da5
Move catalog loading to where it's needed
2024-09-25 10:55:41 +10:00
Maikel Linke
070b93c531
Fall back to givin product id w/o retail variant
2024-09-25 10:55:40 +10:00
Maikel Linke
fb96f8f936
Fall back to given product w/o wholesale variant
...
The class is moving to providing all data with several methods instead
of a data class containing the information. That should be more
flexible. Still some work to do.
2024-09-25 10:55:40 +10:00
Maikel Linke
4303f0e974
Build API URLs to work with any FDC Shopify shop
...
We can extend this service class when there are other APIs. And
hopefully the DFC will provide a standard for this discovery at some
point.
2024-09-25 10:55:40 +10:00
Maikel Linke
2eec4c73bf
Apply 4 hour completion delay only to one enterprise
2024-09-25 10:55:40 +10:00
Maikel Linke
5ef85aef3e
Handle backorder cancellations
2024-09-25 10:55:40 +10:00
Maikel Linke
283db8f9d0
Adjust quantities of backorder before completion
2024-09-25 10:55:40 +10:00
Maikel Linke
95e620a78b
Add lookup of variants by semantic id
2024-09-25 10:55:40 +10:00
Maikel Linke
c948efd9ce
Add structure to adjust final quantities
2024-09-25 10:55:40 +10:00
Maikel Linke
efe2b724e6
Find wholesale offer for retail variant
2024-09-25 10:55:40 +10:00
Maikel Linke
8f4f873ba0
Move offer finding into separate class
...
It's going to be more complicated.
2024-09-25 10:55:40 +10:00
Maikel Linke
c0ae2ede2c
Complete order 4 hours after order cycle closed
2024-09-25 10:55:40 +10:00
Maikel Linke
3ec53a7d71
Parse updated order result
2024-09-25 10:55:40 +10:00
Maikel Linke
3849db7c48
Simplify order update call
2024-09-25 10:55:39 +10:00
Maikel Linke
7b286ea31d
Complete test for FDC Orders API
...
Previous specs testing the live API assumed an order to be present or
not present. You needed to provide the right state before recording. I
condensed more into one test that completes the cycle and is repeatable,
assuming no order to start with.
2024-09-25 10:55:39 +10:00