Commit Graph

407 Commits

Author SHA1 Message Date
luisramos0
60ee17204b Merge branch 'master' into 2-0-stable-Mar16 2019-03-16 16:17:38 +00:00
luisramos0
a36722cebf Merge branch '2-0-stable' into 2-0-remove-variant-count-on-hand 2019-02-26 12:47:11 +00:00
Pau Perez
915b5cf09e Inline also the active product properties query
This makes it easier to spot what are the differences and similarities
between active and non-active, which in turn, it'll help remove the N+1
the "active" branch causes.

Make it look `#distributed_producer_properties` with which seems to
share a lot.
2019-02-26 11:39:43 +01:00
Pau Perez
19cbda4128 Fix Rubocop violation 2019-02-26 11:39:43 +01:00
Pau Perez
24c031b3cd Extract #distributed_product_properties method 2019-02-26 11:39:43 +01:00
Pau Perez
d4635bd7cb Fetch Property instead of ProducerProps from query
By not having to treat producer properties differently we can filter and
fetch all properties from DB without having to process it with Ruby and
with a single query.
2019-02-26 11:36:36 +01:00
Pau Perez
8eb35e491d Don't fetch rows by ids of DISTINCT records
There's no point on fetching the same records again by the resulting ids
of the previous query (nasty way of removing duplicates), when that
query has a DISTINCT.
2019-02-26 11:36:36 +01:00
Pau Perez
328cda66f5 Stop using PropertyMerge in serializer 2019-02-26 11:36:36 +01:00
Pau Perez
64fb230297 Make it more obvious we talk about an enterprise 2019-02-26 11:36:36 +01:00
Pau Perez
a5f890cf36 Fix styling on method 2019-02-26 11:36:36 +01:00
Maikel Linke
99f0be2f1c Remove unnecessary scope Variant.not_deleted
Spree made that scope default so that we don't need to define or call
it. There might be cases in which we were showing deleted variants and
now we are not, but I have not idea how to find them.

Related Spree commit:
- cd3add960e
2019-02-19 14:25:18 +11:00
luisramos0
30967a5ffa Fix bulk product edit page. on_hand and on_demand should never be mixed on the server side, the UI can make the decision to show on_demand on the on_hand column if on_demand is true 2019-02-18 22:01:48 +00:00
luisramos0
f0842fcbe5 Convert all calls to variant.count_on_hand to variant.on_hand 2019-02-18 21:54:07 +00:00
luisramos0
c652cfe4d5 Merge branch 'master' into 2-0-stable-Feb12 2019-02-12 16:03:33 +00:00
Kristina Lim
b691d727a7 Move OFN::SubscriptionService to SubscriptionVariantsService 2019-01-26 02:03:55 +08:00
Kristina Lim
c23002102c Add warning for unavailable subscription items 2019-01-26 02:03:55 +08:00
luisramos0
cdee7c0422 Merge branch 'master' into 2-0-stable-dec-10th 2018-12-10 16:41:29 +00:00
Pau Perez
96202ab00d Fix Rubocop violations 2018-11-28 16:23:56 +01:00
Pau Perez
e0f43191e2 Make helper methods private
Otherwise next dev might think these are attributes of the resulting
JSON serialized object.

They just made the refactoring a bit easier.
2018-11-28 16:21:40 +01:00
Pau Perez
c330d931ce Eager load product properties to avoid N+1
This totally removes the following N+1 query from the GET /shops request

```sql
SELECT "spree_properties".* FROM "spree_properties"
  INNER JOIN "spree_product_properties"
    ON "spree_product_properties"."property_id" = "spree_properties"."id"
  INNER JOIN "spree_products"
    ON "spree_products"."id" = "spree_product_properties"."product_id"
  INNER JOIN "enterprises"
    ON "enterprises"."id" = "spree_products"."supplier_id"
  WHERE "spree_products"."supplier_id" = 24;
```

The product properties of the corresponding enterprises are now loaded
in a single query fired from the controller.
2018-11-28 16:21:40 +01:00
Pau Perez
149fc1ac6f Inline PropertyMerge's #merge into serializer
Now that it has become a plain Ruby #uniq, there's no point on having
the abstraction and indirection.
2018-11-28 16:21:40 +01:00
Pau Perez
8e1f9a1ba3 Refactor #product_properties not to fetch ids 2018-11-28 16:21:40 +01:00
Pau Perez
bc7258d43b Test #supplied_properties helper methods 2018-11-28 16:21:40 +01:00
Pau Perez
23f629cfd6 Autofix all Rubocop violations in serializer 2018-11-28 13:54:42 +01:00
Pau Perez
c6ab5feb81 Move cached & uncached serializers to their files 2018-11-28 13:54:42 +01:00
Luis Ramos
0ea0016fc9 Merge pull request #2998 from coopdevs/adapt-product-on-demand
[Spree Upgrade] Adapt product on demand
2018-11-08 19:21:46 +00:00
luisramos0
fcdb5cd7af Merge branch 'master' into 2-0-stable-nov-8th 2018-11-08 11:18:54 +00:00
Luis Ramos
0c02e8c15f Merge pull request #2981 from coopdevs/remove-commented-out-code
Remove old commented out code
2018-11-06 16:06:59 +00:00
Pau Perez
71702af3c3 Have a single attributes list in serializer 2018-11-06 15:52:02 +00:00
Pau Perez
51155bb368 Remove old commented out code
You know, git already keeps old code for us.
2018-11-06 14:23:15 +00:00
Pau Perez
26d95b7250 Fix long lines 2018-11-06 13:59:51 +00:00
Matt-Yorkley
d0b7b57017 Remove OrderSerializer#show_path and adjust to use #edit over #show 2018-11-06 11:07:14 +00:00
luisramos0
d0d9038308 Removed order.shipments_path from order serializer. In order list page the shipment state is now a label, not a link. The shipmeents page is gone in spree 2 2018-10-22 11:24:01 +01:00
Pau Pérez Fabregat
db9669b4ce Merge pull request #2817 from coopdevs/remove-reference-to-on-demand
[Spree Upgrade] Remove on_demand from Product serializers
2018-10-16 17:52:42 +02:00
luisramos0
87cd73ddba Merge branch 'master' into 2-0-stable-oct 2018-10-15 17:09:26 +01:00
Pau Pérez Fabregat
58a99a7f89 Merge pull request #2692 from Matt-Yorkley/bi/angular_orders
Angularise orders page
2018-10-04 21:10:48 +02:00
Pau Perez
f8ec198f9f Remove on_demand from Api::CachedProductSerializer
This fixes lots of specs like the whole
spec/controllers/shop_controller_spec.rb, almost all specs of
spec/lib/open_food_network/products_renderer_spec.rb and most of
spec/features/consumer/shopping/shopping_spec.rb.
2018-10-03 14:27:59 +02:00
Pau Perez
75ad4254a6 Remove on_demand from Api::Admin::ProductSerializer
This change also moves the spec file to its appropriate place for the
sake of consistency and RSpec3-izes the test example.
2018-10-03 13:06:13 +02:00
Matt-Yorkley
55d7d5d1e4 Rename #capture_path to #payment_capture_path 2018-10-02 11:10:51 +01:00
Matt-Yorkley
54b17ac701 Use Spree::Order.pending_payments and remove service 2018-09-27 13:04:56 +01:00
Matt-Yorkley
1d9243af19 DRY and clarify serializer and service 2018-09-24 16:58:43 +01:00
Pau Pérez Fabregat
20077c99b5 Merge pull request #2618 from coopdevs/enable-style-send-cop
Favor #public_send over #send using Rubocop's cop
2018-09-20 19:03:40 +02:00
Matt-Yorkley
3cbb576b4f Move payment object logic out of order serializer and delete code 2018-09-19 13:00:30 +01:00
Matt-Yorkley
93d273f94a Convert orders index table to use angular ng-repeat 2018-09-19 09:33:25 +01:00
luisramos0
edcdf59621 In current_order_serializer, serialize shipping_method_id from order.shipping_method.id. Adapted respective spec. 2018-09-18 16:11:01 +01:00
Matt-Yorkley
e577bcb46f Prepare angular controller and serialized data 2018-09-17 14:18:23 +01:00
Pau Perez
b23cb55525 Fix current violations of Style/Send cop 2018-09-05 12:05:05 +02:00
Kristina Lim
f30032eee7 Include image URLs in serialized enterprise for admin 2018-09-04 01:18:45 +08:00
Maikel Linke
f0be8ff290 Style proxy order serializer 2018-08-03 15:07:22 +10:00
Rob Harrington
cead905d05 Use estimated subscription total for proxy orders if order has not been initialized 2018-08-03 12:14:25 +10:00