Aktionen
GX-Task #69231
geschlossenRefactor taxes calculation in ProductPriceConversionService::getPrice() to include multiple tax rates
Status:
Erledigt
Priorität:
Dringend
Zugewiesen an:
Moritz Bunjes
Kategorie:
Optionen
Zielversion:
% erledigt:
0%
Steps to reproduce:
Betroffene Versionen:
4.5.1.0 beta3
Release Notes Langtext:
Alle Steuersätze wurden in die Berechnung des Preises der Zusatzoptionen einbezogen
Beschreibung
Refactor the following:
-
src/GambioAdmin/Modules/Price/App/Data/ProductPriceConversionReader.php::getTaxClassRatesTotal()
to get all tax rates -
src/GambioAdmin/Modules/Price/App/ProductPriceConversionService.php::getProductTaxes()
to calculate all the taxes according to its type (percent/fixed) and priority
Expected:
ALL tax rates should be included in the gross/net price calculations.
- Tax rates with the same priority should be added
- Tax rates with different priorities should be compounded
Actual:
If multiple tax rates are returned it will use the highest to calculate the final price.
Steps to test:
- Navigate/Search for Settings > System > Gambio Admin > Gross Admin
- Make sure that Gross Admin switch is enabled
- Navigate/Search for Settings > Language, Countries, Taxes > Tax Rates (Open)
- Create new tax rate with the following information
- Tax class title: Standardsatz
- Zone: Deutschland
- Tax rate (%): 21
- Description: 21% MwSt.
- Priority: 1
- Create new tax rate with the following information
- Tax class title: Standardsatz
- Zone: Deutschland
- Tax rate (%): 10
- Description: 10% MwSt.
- Priority: 2
- Navigate to Catalog > Options
- Create new option
- Create new option value (01) with price 0
- Create new option value (02) with price 5
- Navigate to Catalog > Categories / Products
- Create new product with the following information
- Product Price: 15.4
- Tax Class: Standardsatz
- Navigate to the Options tab in the product edit page
- Click on Attach product option(s)
- Choose the option with both values created earlier in steps: 7, 8, 9 then save
- Create new option value (03) with price 10 (still from inside product options tab for the same option)
- Check expected results for gross admin option enabled
- Disable the admin configuration "Gross Admin" (enabled in step.1 )
- Check expected results for gross admin option disabled
Expected
ENABLED Gross Admin configurations
- Product option value 01 price: 0
- Product option value 02 price: 5
- Product option value 03 price: 10
DISABLED Gross Admin configurations
- Product option value 01 price: 0
- Product option value 02 price: 3.25
- Product option value 03 price: 6.49
Product prices in frontend:
- Starting from (first load): 15.40
- Selected option value 01: 15.40
- Selected option value 02: 20.40 (+ 5.0)
- Selected option value 03: 25.40 (+ 10.0)
Really WRONG results
ENABLED Gross Admin configurations
- Product option value 02 price: 4.2 / 4.2017 / 6.05 / 7.50
- Product option value 03 price: 8.4 / 8.4034 / 11.90 / 15.0
Zugehörige Tickets
Aktionen
#1
Von Ahmed Hamouda vor etwa 3 Jahren aktualisiert
- Beziehung mit GX-Bug #69025: Gross Admin is active but has no effect on option surcharges wurde hinzugefügt
Aktionen
#4
Von Ahmed Hamouda vor etwa 3 Jahren aktualisiert
- Status wurde von Gemeldet zu In Bearbeitung geändert
Aktionen
#5
Von Lennard Kläfker vor etwa 3 Jahren aktualisiert
- Priorität wurde von Normal zu Dringend geändert
Aktionen
#8
Von Ahmed Hamouda vor etwa 3 Jahren aktualisiert
- Release Notes Langtext aktualisiert (Vergleich)
Aktionen
#9
Von Ahmed Hamouda vor etwa 3 Jahren aktualisiert
- Status wurde von In Bearbeitung zu Testing geändert
- Zugewiesen an
Ahmed Hamoudawurde gelöscht
Aktionen
#12
Von Moritz Bunjes vor etwa 3 Jahren aktualisiert
- Zugewiesen an wurde auf Moritz Bunjes gesetzt
Aktionen
#13
Von Moritz Bunjes vor etwa 3 Jahren aktualisiert
- Zielversion wurde auf 4.5.1.0 RC1 gesetzt
Aktionen
#14
Von Moritz Bunjes vor etwa 3 Jahren aktualisiert
- Status wurde von Testing zu Erledigt geändert
Aktionen
#15
Von Mirko Janssen vor etwa 3 Jahren aktualisiert
- Release Notes Langtext aktualisiert (Vergleich)
Aktionen