Commit Graph

2163 Commits

Author SHA1 Message Date
Mohamed ABDELLANI
e25f4b1daa integrate ReportRenderingOptions in the View/Controller 2022-11-25 09:10:53 +01:00
Mohamed ABDELLANI
b6a7ca3047 create ReportRenderingOptions model 2022-11-24 10:25:59 +01:00
Konrad
c6178f5df9 Merge pull request #9877 from mkllnk/ignored-columns
Remove outdated ignoring of Paperclip columns
2022-11-11 21:08:42 +01:00
Filipe
4b3184a6ef Merge pull request #9923 from mkllnk/cache-country
Cache default country for an hour
2022-11-10 19:10:29 +00:00
Filipe
a7353eb69f Merge pull request #9575 from apricot12/9487-Dimensions-Packing-Reports
Added HEIGHT, WEIGHT, WIDTH, DEPTH columns to packing reports by customer.
2022-11-10 09:55:26 +00:00
Maikel Linke
a2c4242994 Simplify Address code
The DefaultCountry code has a fallback already.
2022-11-02 16:21:15 +11:00
Maikel Linke
f971131888 Cache default country for an hour
The default country usually never changes after the initial setup of an
instance.
2022-11-02 15:33:43 +11:00
Rachel Arnould
2652bc086a Merge pull request #9755 from cillian/order-cycle-payment-methods
Let people choose which payment methods are available to customers on order cycles
2022-10-26 20:10:34 +02:00
Maikel Linke
3ebd896c3e Remove outdated ignoring of columns
Those columns have been removed from the database and don't need to be
ignored any more.
2022-10-26 10:42:19 +11:00
Jean-Baptiste Bellet
23b5e73c97 Weight is computed with unit_value and product variant_unit_scale 2022-10-25 10:22:35 +02:00
Maikel Linke
7081e712e8 Flag style issue on todo list for later
The code needs some bigger refactoring to avoid this style issue.
2022-10-25 10:09:26 +02:00
Nihal Mohammed
f8657aaf41 Copy dimensions from variants to line items before validation 2022-10-25 10:09:26 +02:00
Maikel
55ef4dfe0d Merge pull request #8809 from Matt-Yorkley/dead-code-variants-check
Remove dead code: Product#variants?
2022-10-25 10:49:01 +11:00
Rachel Arnould
3c9b7a10f4 Merge pull request #9058 from Matt-Yorkley/oidc-redux
Add OIDC authentication for Les Communs
2022-10-24 13:18:36 +02:00
Cillian O'Ruanaidh
f5bd23b4d8 Remove unused Spree::Order#available_payment_methods method
This was introduced in 47d2f698ef but we are using OrderAvailablePaymentMethods now.
2022-10-21 17:21:31 +01:00
Cillian O'Ruanaidh
4e6d64c0a1 Let people choose which payment methods are available to customers on order cycles 2022-10-21 17:21:31 +01:00
Matt-Yorkley
0ca86344d2 Update use of deprecated #add_tab method to #add_metadata 2022-10-19 17:36:53 +11:00
Matt-Yorkley
c0ee72319f Remove dead code: Product#variants?
This only makes sense in the context of Products which only have "master" variants, and we removed that option a while back.

Remove #variants? check from ProductStock concern
2022-10-19 16:30:12 +11:00
Maikel Linke
f00aeb006e Allow enterprise users to authorize via OIDC 2022-10-18 11:32:14 +11:00
Matt-Yorkley
617164684c Configure OIDC 2022-10-18 11:32:14 +11:00
AthiraKadampatta
80eef9c302 9726 Add attachment_width and attachment_height to the list of ignored columns for spree images 2022-10-10 16:52:02 +02:00
AthiraKadampatta
1f161bee1f Add paperclip columns to ignored columns list for enterprise, enterprise group, terms_of_service_file, spree/image models 2022-10-10 16:52:02 +02:00
Maikel
5894246474 Merge pull request #9682 from binarygit/picked_up_email
Send picked up emails when orders are picked up
2022-10-10 13:15:24 +11:00
Maikel Linke
52e934ec2b Consistently use our FeatureToggle module
Direct calls to Flipper have the downside that we can't add any new
functionality like storing the feature in the database when used.
2022-10-08 16:23:17 +02:00
binarygit
44db511e66 Send a picked up email (rather than shipped email) when orders are picked up by customers 2022-10-08 12:31:26 +02:00
binarygit
25ae10dbe8 Create bulk orders cancellation feature 2022-10-04 16:57:31 +02:00
jibees
0c64720a9e Merge pull request #9710 from mkllnk/9002-customer-association-updates
Associate and update customer records when ordering
2022-09-30 16:36:01 +02:00
Cillian O'Ruanaidh
87431c188e Use ShippingMethod :frontend method and drop :backend to avoid ClassLength Rubocop error 2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
0673f9a5ae Use a more simple layout on the order cycle checkout options form
Before there was a row for each distributor and a 'shared' row for shipping methods which were shared among more than one distributor. This layout displays a single list of shipping methods with the distributor or distributors it belongs to beside it as suggested by @lin-d-hop
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
80b7a5d39a Remove OrderCycleShippingMethod model and use a :has_and_belongs_to_many association instead
Before the OrderCycleShippingMethod had a validation which checked the shipping method belonged to the order cycle distributor. Instead of this validation this just ignores shipping methods which don't belong to one of the order cycle's distributors when they are being attached in the OrderCycleForm service. This pattern is already being used in the OrderCycleForm service for ignoring Schedules that the person doesn't own.

Co-authored-by: Maikel <maikel@email.org.au>
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
541a340dcf If an OrderCycle or Spree::ShippingMethod is destroyed then remove it's associated OrderCycleShippingMethod records too 2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
593da4996f A shop won't be shown as open if it doesn't have useable shipping method so these shipping method validations are really necessary 2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
9296686384 Make backend, frontend scopes on Spree::ShippingMethod neater
Co-authored-by: Co-authored-by: Maikel <maikel@email.org.au>
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
fc4f951a1a Only require OrderCycleShippingMethod records if people want to override the default shipping methods
It makes things much simpler if we return all shipping methods by default without needing OrderCycleShippingMethod records to be added to the database.

Co-authored-by: Maikel <maikel@email.org.au>
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
855ec1a708 Add new 'Checkout options' step to the edit order cycle form so people can attach shipping methods 2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
1e817af5aa Validate deleting a shipping method or switching it to backoffice only doesn't invalidate any order cycles 2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
94d71b8dce Remove extra unnecessary :display_on_checkout scope and reuse :frontend scope instead 2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
a5daee39e3 Extract out a DISPLAY_ON_OPTIONS constant in Spree::ShippingMethod instead of magic strings 2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
37617f63ea Remove non-functional :backend scope from Spree::ShippingRate
It finds shipping methods where 'display_on != front_end' but :front_end values were removed in a1317be19b/db/migrate/20200508101630_convert_frontend_shipping_method_to_both.rb so it will always return true.
2022-09-30 13:13:39 +01:00
Maikel Linke
8011d85968 Clarify updating only pre-existing customers 2022-09-29 12:06:06 +02:00
Maikel Linke
a7de56460d Further simplify Order by outsourcing to service class 2022-09-29 12:06:06 +02:00
Maikel Linke
1f19642dad Simplify Order by outsourcing to service class
This is work in progress and calling the service will be simplified in a
few commits.
2022-09-29 12:06:06 +02:00
Maikel Linke
a0260c4ff7 Move customer update logic to own service file
The Order class is too big already. We can move more code in the next
commits.
2022-09-29 12:06:06 +02:00
Maikel Linke
cec81a3ae6 Clarify condition to create customer record 2022-09-29 12:06:06 +02:00
Maikel Linke
37eac5ed49 Remove dead code branch in customer check
We only try to create a customer when none is present. So the check for
validating the customer always returned false because we didn't have a
customer.
2022-09-29 12:06:06 +02:00
Maikel Linke
b232fa3d0c Deal with conflicting customer entries 2022-09-29 12:06:06 +02:00
Maikel Linke
f6ac02dce5 Update customer's email after user changed it
This may fail if there's already a customer record with the same email
address for the same enterprise. I will fix that in the next commit.
2022-09-29 12:06:06 +02:00
Maikel Linke
9dbba35019 Find customers by user id as well as email
Also fixing up a spec which became brittle due to too much mocking.
2022-09-29 12:06:06 +02:00
Maikel Linke
cf634d8d9b Simplify customer association 2022-09-29 12:06:06 +02:00
Maikel Linke
5fefd3b14b Remove useless customer loading and clarify name
The method `associate_customer` only loads a customer but doesn't
actually associate one. So the deleted line doesn't have any effect.

The intention was to reset the customer after switching shops but the
before_validation logic on the order model takes care of that already.

I'm renaming this private method here for clarity.
2022-09-29 12:06:06 +02:00