Refactor SQL joins in calcRegionalSellPrice function of FalukantService to use updated region type table for improved clarity and consistency in tax calculations.
This commit is contained in:
@@ -204,12 +204,12 @@ async function calcRegionalSellPrice(product, knowledgeFactor, regionId, worthPe
|
|||||||
`WITH RECURSIVE ancestors AS (
|
`WITH RECURSIVE ancestors AS (
|
||||||
SELECT r.id, r.parent_id, r.tax_percent, rt.label_tr as region_type
|
SELECT r.id, r.parent_id, r.tax_percent, rt.label_tr as region_type
|
||||||
FROM falukant_data.region r
|
FROM falukant_data.region r
|
||||||
JOIN falukant_type.region_type rt ON rt.id = r.region_type_id
|
JOIN falukant_type.region rt ON rt.id = r.region_type_id
|
||||||
WHERE r.id = :id
|
WHERE r.id = :id
|
||||||
UNION ALL
|
UNION ALL
|
||||||
SELECT reg.id, reg.parent_id, reg.tax_percent, rt2.label_tr
|
SELECT reg.id, reg.parent_id, reg.tax_percent, rt2.label_tr
|
||||||
FROM falukant_data.region reg
|
FROM falukant_data.region reg
|
||||||
JOIN falukant_type.region_type rt2 ON rt2.id = reg.region_type_id
|
JOIN falukant_type.region rt2 ON rt2.id = reg.region_type_id
|
||||||
JOIN ancestors a ON reg.id = a.parent_id
|
JOIN ancestors a ON reg.id = a.parent_id
|
||||||
)
|
)
|
||||||
SELECT COALESCE(SUM(CASE WHEN ${exemptTypesString} && ARRAY[region_type] THEN 0 ELSE tax_percent END),0) AS total FROM ancestors;`,
|
SELECT COALESCE(SUM(CASE WHEN ${exemptTypesString} && ARRAY[region_type] THEN 0 ELSE tax_percent END),0) AS total FROM ancestors;`,
|
||||||
|
|||||||
Reference in New Issue
Block a user