Commit Graph

1126 Commits

Author SHA1 Message Date
luisramos0
fc433ff8f0 Refactor ship methods controller destroy action: remove single action before_filter 2019-09-20 16:29:36 +01:00
luisramos0
8e33437fbb MErge ship method controller decorator with the controller that came from spree 2019-09-20 15:59:24 +01:00
luisramos0
a5103c737d Fix rubocop issues in ship methods controller from spree 2019-09-20 15:58:05 +01:00
luisramos0
37c8f42244 Bring shipping methods and categories controllers from spree_backend 2019-09-20 15:56:24 +01:00
luisramos0
0e8765636b Bring tax_settings from spree_backend to ofn 2019-09-20 15:46:33 +01:00
luisramos0
89029f46f9 Fix basic rubocop issues in newly added controller 2019-09-20 15:32:34 +01:00
luisramos0
144369e55f Add tax related controllers from spree_backend related to config 2019-09-20 15:31:30 +01:00
luisramos0
20f965731d Fix basic rubocop issues in recently added controller from spree_backend 2019-09-20 15:14:34 +01:00
luisramos0
8378dce752 Bring taxons config controller that is overriden in ofn to ofn so we can merge them with their decorator in a second step 2019-09-20 15:13:45 +01:00
luisramos0
d7a4e3a896 Add taxonomies controller from spree_backend 2019-09-20 15:12:38 +01:00
luisramos0
822a17f732 Fix basic rubocop issues in newly added controllers 2019-09-20 14:50:38 +01:00
luisramos0
ffde0307e2 Add controllers from spree_backend related to config 2019-09-20 14:50:01 +01:00
Pau Perez
55883a0efc Add implicit #bulk_management including filter
OFN it's hard enough. No need to abuse implicitness making things very
hard to follow.

I've spent around 20min trying to find out where this controller action
was implemented until I realized Rails renders the matching view if no
controller action is defined.

Making it git-greppable makes it a bit easier next time.
2019-09-06 16:02:44 +02:00
Matt-Yorkley
ff5fe66994 Fix route after big API refactor merge resolution 2019-09-02 16:29:03 +01:00
Matt-Yorkley
0623bab084 Don't respond to a successful update by querying 500 arbitrary products 2019-09-02 11:56:00 +01:00
Luis Ramos
cd263b761c Merge pull request #4055 from luisramos0/remove_spree_api
Remove dependency to spree_api - step 1 - controllers and routes
2019-08-28 15:34:08 +01:00
luisramos0
2b8ebba233 Fix some rubocop issues in product_set and admin/products_controller 2019-08-17 19:15:32 +01:00
luisramos0
758394464b Add bugsnag notification to products_controller create and update when on_hand or on_demand update fails with exception 2019-08-17 19:15:32 +01:00
Pau Pérez Fabregat
64d21969f0 Merge pull request #4064 from luisramos0/convert_search_Rabl
Replace views/admin/variants/search.rabl with Api::Admin::VariantSerializer
2019-08-05 15:07:10 +02:00
luisramos0
f77beb50ff Fix class scope in spree/api/products_controller, should not use Spree namespace here
Also, add missing dependency to spree/admin/products_controller_decorator
2019-07-31 09:32:33 +01:00
Pau Perez
c85d00fcb8 Remove N+1 while fetching distributors of OCs
What used to be done as

```sql
SELECT "order_cycles".* FROM "order_cycles"
WHERE (order_cycles.orders_open_at <= '2019-07-29 17:45:20.137294'
  AND order_cycles.orders_close_at >= '2019-07-29 17:45:20.137333')

SELECT DISTINCT "enterprises".* FROM "enterprises"
INNER JOIN "exchanges" ON "enterprises"."id" = "exchanges"."receiver_id"
WHERE "exchanges"."order_cycle_id" = 1
  AND "exchanges"."incoming" = 'f'
(...)
SELECT DISTINCT "enterprises".* FROM "enterprises"
INNER JOIN "exchanges" ON "enterprises"."id" = "exchanges"."receiver_id"
WHERE "exchanges"."order_cycle_id" = 4
  AND "exchanges"."incoming" = 'f'
```

it became

```sql
SELECT "order_cycles".* FROM "order_cycles"
WHERE (order_cycles.orders_open_at <= '2019-07-29 17:45:20.137294'
  AND order_cycles.orders_close_at >= '2019-07-29 17:45:20.137333')

SELECT "exchanges".* FROM "exchanges"
WHERE "exchanges"."incoming" = 'f'
  AND "exchanges"."order_cycle_id" IN (1, 2, 3, 4)

SELECT "enterprises".* FROM "enterprises"
WHERE "enterprises"."id" IN (3, 4, 5, 6)
```

I haven't got any perf numbers yet but each of the N+1 queries took as
long as the single `enterprises` query on my dev machine.

This should have a noticeable perf impact since the changed method
belongs to the `BaseController` seems to be executed in all HTML
requests as it gets called by

```ruby
before_filter :warn_invalid_order_cycles, if: :html_request?
```
2019-07-29 20:02:47 +02:00
luisramos0
7e6259da31 Replace admin/variants/search rabl template with existing admin variant serializer with a few added attributes
This commit fixes a bug as the image of the variatn was not being rendered, we need to fetch the image of the product, not the image of the variant.
2019-07-23 21:37:45 +01:00
luisramos0
dcbdfbb081 Fix rubocop issues in multiple files copied from spree_auth_devise, mostly hash rockets 2019-07-08 11:22:56 +01:00
luisramos0
fc0ffda8ec Bring routes and controllers from spree_auth_devise 2019-07-05 15:08:42 +01:00
Luis Ramos
00841cb537 Merge pull request #3923 from luisramos0/prod_image_error
User friendly error when creating a product with an image in an unsupported format
2019-06-26 15:30:18 +01:00
Maikel
71f396a44f Merge pull request #3896 from luisramos0/clear_unit_desc
Clear product.variants.unit_description if product.variant_unit is items
2019-06-21 15:00:06 +10:00
luisramos0
0cdb49818d Remove distinct from enterprise.ready_for_checkout scope
Adapt use of enterprise scope not_ready_for_checkout to rails 4 by adding enterprises table alias to selected field id
2019-06-18 10:40:49 +01:00
luisramos0
a7c970054c Add rescue in product controller create action to avoid server error and send appropriate error message to client when product image upload fails 2019-06-14 10:20:28 +01:00
luisramos0
1a4e83d633 Change products controller to clear variants unit description if variant_unit is items 2019-06-01 16:56:17 +01:00
luisramos0
07854cf372 Fix a few problems introduced by rubocop auto correct 2019-05-28 12:57:29 +01:00
luisramos0
86b0d71c7e Result of rubocop auto-correct and rebuilding rubocop_manual_todo 2019-05-28 12:57:29 +01:00
Luis Ramos
9ccf502365 Merge pull request #3797 from lin-d-hop/variant-master-price
Remove non-functional Price field from Edit Product screen
2019-05-28 10:30:05 +01:00
lin-d-hop
7b87e609c4 Set master variant price in products controller
Set master variant price in products controller

Code climate tidy up

Syntax improvement

Revert "Remove non-functional Price field from Edit Product screen"

This reverts commit 585072302c.

Syntax improvement

fixing revert

Revert "Remove non-functional Price field from Edit Product screen"

This reverts commit 585072302c.

fixing conflicts
2019-05-06 14:20:01 +01:00
Kristina Lim
f14e7e97b1 Do not check need to warn of invalid OCs unless request is HTML 2019-05-06 15:41:29 +08:00
Luis Ramos
4bf9320be8 Merge pull request #3666 from mkllnk/1830-v2-edit-shipping-fees
Close adjustments so that updates are effective
2019-04-10 21:58:22 +01:00
Luis Ramos
4478d51aee Merge pull request #3668 from luisramos0/2-0-stable-Mar29
[Spree Upgrade] Merging master into 2-0-stable (4th run in Mar2019)
2019-04-09 17:46:36 +01:00
luisramos0
bc8bca074c Switch object in the ability to access reports. This adapts to this change in Spree: 3685569db4
Adapt NavigationHelper to return the controller object for reports so that Reports tab works correctly.
2019-03-29 22:16:39 +00:00
luisramos0
527cfc1601 Merge branch 'master' into 2-0-stable-Mar29 2019-03-29 13:48:49 +00:00
Maikel Linke
fabca84001 Close adjustments so that updates are effective
Spree 2.0 keeps shipping fee adjustments open unless they are manually
closed. But open adjustments cannot be edited.
To preserve updates, like changing the amount of the shipping fee
we close the adjustment first.
2019-03-29 17:23:15 +11:00
luisramos0
010007a2c7 Merge branch '2-0-stable' into 2-0-stable-Mar22 2019-03-26 09:07:48 +00:00
Luis Ramos
9a771ecbb8 Merge pull request #3613 from luisramos0/2-0-update-variants-stock
[Spree Upgrade] Add on_hand and on_demand to the variants create and edit pages
2019-03-26 08:55:34 +00:00
luisramos0
a8c0eef3d3 Improve admin variants controller create action, it doesn't try to set on_hand and on_demand if there are previous errors in the variant 2019-03-22 23:23:10 +00:00
luisramos0
c1d14686a6 Merge branch 'master' into 2-0-stable-Mar22 2019-03-22 10:55:17 +00:00
Pau Perez
96b8c8ac2c Refresh products cache also on Variant#delete
Note that, as explained in
https://apidock.com/rails/v3.2.13/ActiveRecord/Relation/delete, `delete` does
not trigger callbacks and so it skips the products cache logic.

If we still want to avoid instantiating the AR object, we need to explicitly
call that logic for the cache to be up-to-date.
2019-03-22 09:57:15 +01:00
Pau Perez
fbc3fc6a51 Test spree/admin/variants_controller #destroy 2019-03-22 09:18:31 +01:00
Kristina Lim
94606025c9 Separate call and call! for AdvanceOrderService 2019-03-21 20:34:51 +08:00
luisramos0
21a10d0206 Add on_hand and on_demand back to variants form (both variant create and edit pagei), this is where they used to be in spree v1
The admin variants controller create action is adapted (same as in the admin ProductsController). This is necessary because variant.on_hand and on_demand cannot be mass assigned on creation in v2, see VariantStock for more details.

For now we are hiding the new stock management page that comes in spree v2 as we don't need the complexity added by the management of stock per stock location (only one stock location in ofn v2 for now)
2019-03-18 19:02:48 +00:00
luisramos0
b62e350fab Improve reports controller decorator by removing some copy pasted code and deleting some code repeated across data_load and the main action methods 2019-03-13 12:24:40 +00:00
luisramos0
05d42d475e Make reports and subscriptions specs work without product.distributors attribute 2019-03-13 12:24:40 +00:00
luisramos0
ed9321e92d Remove product distributions from product model and controller 2019-03-13 11:47:50 +00:00