Commit Graph

52 Commits

Author SHA1 Message Date
Maikel Linke
25b7f1749c Simplify error when tax rate can't be inherited
I changed the text to focus on the resolution: the user needs to choose
a tax category or a different calculator.

I associated the error to the model to prevent the attribute name from
being included in the error message. Alternatively, we could have
changed the name of the attribute to match the UI. But this error
affects the combination of two attributes, none of them is invalid on
its own.

I'm using Rails' default lazy lookup for error messages which results in
shorter code and a standard structure.

I also added a simple spec.
2023-05-11 12:46:17 +01:00
Mohamed ABDELLANI
7eca32e84f prevent saving the enterprise fee when a per order calculator is selected along with 'Inherit from product' 2023-05-11 12:46:17 +01:00
Jean-Baptiste Bellet
434f9600b7 Enterprise fee must be linked with an enterprise
Add 2 validation / errorproof options:
 - Add rails validation on `enterprise_id`  on enterprise_fee model
 - Do not add a blank option on the select: ie. user can select a blank enterprise in the form

Update tests as well
2021-07-27 15:39:40 +02:00
Matt-Yorkley
2d69810c5d Convert CalculatedAdjustments into a proper Concern and remove class_eval 2021-07-24 21:28:13 +01:00
Luis Ramos
e52937c113 Use rubocop auto correct to add frozen string literal to all files
This is an unsafe auto corection, we will need to trust our build here
2021-06-17 23:07:26 +01:00
Luis Ramos
23627c5453 Run rubocop -a (safe corrections) removing all exceptions so all possible fixes are applied
9290 issues fixed
2021-06-17 22:19:26 +01:00
Maikel Linke
1364b878fe Add ApplicationRecord for customisations
Rails 5 introduced this new class to confine application-specific monkey
patches to our models only, and not leak into other libraries using
ActiveRecord::Base.

https://bigbinary.com/blog/application-record-in-rails-5
2021-04-15 15:59:03 +10:00
Matt-Yorkley
8d4733b3d5 Update EnterpriseFee#clear_all_adjustments 2021-03-18 13:18:20 +00:00
Matt-Yorkley
3ecdfca9cf Rename fee adjustment clear-all method 2021-01-29 21:52:28 +00:00
Matt-Yorkley
c4a8a38c8d Soft-delete enterprise fees
These objects can hold critical information related to adjustments and tax categories. If they are hard-deleted we lose vital data that's needed by associated records.
2021-01-19 16:46:14 +00:00
Luis Ramos
0b79e7c48c Fix rubucop issue in enterprise_fee model 2020-07-07 17:26:24 +01:00
Luis Ramos
5e8438c446 Move all calculators outside the spree namespace 2020-07-07 17:26:23 +01:00
Luis Ramos
32a4355f09 Merge branch 'master' into 3-0-stable-mar6 2020-03-12 16:54:09 +00:00
Matt-Yorkley
3896644a04 Remove attr_accessible declarations
Needed for using Strong Parameters in Rails 4
2020-02-22 14:03:16 +01:00
Matt-Yorkley
98fdbb8621 Update deprecated #scoped calls
Model#scoped is now deprecated. Model#where(nil) in Rails 4 returns the same result as Model#scoped in Rails 3
2020-02-22 11:06:51 +00:00
Luis Ramos
1eba17f048 Make select column explicit to avoid too many columns sql error 2020-02-18 18:32:52 +00:00
Matt-Yorkley
ab330e882e Remove product cache 2019-10-18 21:15:11 +01:00
luisramos0
86b0d71c7e Result of rubocop auto-correct and rebuilding rubocop_manual_todo 2019-05-28 12:57:29 +01:00
luisramos0
4768ca27c7 Remove all dependencies to product distributions including the validation to avoid deleting fees with product distributions 2019-03-13 11:50:35 +00:00
Hugo Daniel
a162a2c50b Move product distributions check as a before_destroy in EnterpriseFee model 2018-11-15 14:05:15 +01:00
Hugo Daniel
28009afbea Calculate price sack fees and tests 2018-04-04 11:25:25 +10:00
Rohan Mitchell
858576d870 CalculatedAdjustments requires include first 2017-09-08 23:55:48 +10:00
Rohan Mitchell
38da4c8e12 Adjustments now have state instead of locked/unlocked 2017-09-08 23:55:48 +10:00
Rohan Mitchell
a0b740f52d Generalise fix for missing EnterpriseFee::Calculator to any use of calculated_adjustments 2016-11-04 09:39:17 +11:00
Rohan Mitchell
0d4c4f20df Fix missing EnterpriseFee::Calculator error
Conflicts:
	app/models/enterprise_fee.rb
2016-11-04 09:39:17 +11:00
Rohan Mitchell
422061f137 Merge branch 'master' into products-caching
Conflicts:
	app/controllers/shop_controller.rb
	app/models/enterprise_fee.rb
	app/models/order_cycle.rb
	app/models/variant_override.rb
	db/schema.rb
	lib/open_food_network/products_renderer.rb
	spec/lib/open_food_network/products_renderer_spec.rb
2016-03-03 09:42:52 +11:00
Rob Harrington
59745fbc73 EnterpriseFees can inherit tax_category from product 2016-03-02 11:56:46 +11:00
Rob Harrington
caa8818f02 Adding option to 'Inherit From Product' for enterprise_fee tax categories 2016-03-02 11:56:46 +11:00
Rohan Mitchell
8bd5a36aaf Remove enterprise fee destruction cache callback - responsibility to be handled by dependent models 2016-02-24 15:05:03 +11:00
Rohan Mitchell
540687515e Reify coordinator_fees HABTM join table as CoordinatorFee model using HMT 2016-02-24 15:05:03 +11:00
Rohan Mitchell
f756749e02 Fix specs 2016-02-24 15:05:02 +11:00
Rohan Mitchell
0c65d1ddd8 Trigger products cache refresh when enterprise fee changed or destroyed 2016-02-24 15:05:02 +11:00
Rob Harrington
7eb735f87e Adding for_enterprises scope on enterprise fee 2015-04-06 10:24:40 +10:00
Rohan Mitchell
53fa71d1f3 Admin can set enterprise fee's tax category 2015-03-05 10:44:25 +11:00
Rohan Mitchell
61c08997a1 EnterpriseFee has a TaxCategory 2015-03-05 10:44:22 +11:00
Rohan Mitchell
50b8eaecab Add fundraising fees 2014-08-13 15:07:32 +10:00
Rohan Mitchell
4cbe434573 Remove trailing relations on destruction for EnterpriseFee and Variant 2014-04-24 13:20:15 +10:00
Rohan Mitchell
b720a1d8f2 EnterpriseFee.clear_all_adjustments_on_order clears adjustments from per-order fees 2014-02-26 14:33:28 +11:00
Rohan Mitchell
5057e236a9 Find enterprise fees with per-order calculators 2014-02-26 13:48:51 +11:00
Rohan Mitchell
febbe087e9 Find EnterpriseFees with per-item calculators 2014-02-26 10:39:39 +11:00
Rohan Mitchell
31a078a53c Enterprise manager can access enterprise fees for enterprises they manage - fixes fees on order cycles interface 2013-08-20 16:26:46 +10:00
Rohan Mitchell
562365311e Lock enterprise fee adjustments on creation to avoid them being recalculated against order by update hooks 2013-08-19 14:38:51 +10:00
Rohan Mitchell
ba4d3d5d7d Removing a product from cart removes its fees 2013-08-19 12:19:03 +10:00
Rohan Mitchell
591f6a8a57 Move ProductDistribution#clear_all_enterprise_fee_adjustments_for to EnterpriseFee class 2013-08-19 10:41:14 +10:00
Rohan Mitchell
af6b16ecc4 Admin can assign enterprise fees to product distributions 2013-08-12 11:05:00 +10:00
Rohan Mitchell
cfb8c05cb5 Remove association that's already added by Spree's calculated_adjustments 2013-08-06 13:47:17 +10:00
Rohan Mitchell
2a645d04ae Move presentation to presenter, display calculator fields 2012-11-22 14:37:38 +11:00
Rohan Mitchell
b7bd21e498 Full-text search of form 2012-11-22 12:15:39 +11:00
Rohan Mitchell
a4d10ab4e0 Create new enterprise fee, display errors when present 2012-11-21 09:47:51 +11:00
Rohan Mitchell
98143ffe5b Add calculator to EnterpriseFee, test passes for listing enterprise fees 2012-11-16 16:07:40 +11:00