diff --git a/backend/services/falukantService.js b/backend/services/falukantService.js index 0e6c6d3..eb8ad10 100644 --- a/backend/services/falukantService.js +++ b/backend/services/falukantService.js @@ -147,9 +147,31 @@ async function calcRegionalSellPrice(product, knowledgeFactor, regionId, worthPe async function getCumulativeTaxPercentWithExemptions(userId, regionId) { if (!regionId) return 0; // fetch user's political offices (active) and their region types + // PoliticalOffice hat keine userId Spalte, daher müssen wir über FalukantCharacter filtern const offices = await PoliticalOffice.findAll({ - where: { userId }, - include: [{ model: PoliticalOfficeType, as: 'type', attributes: ['name'] }, { model: RegionData, as: 'region', include: [{ model: RegionType, as: 'regionType', attributes: ['labelTr'] }] }] + include: [ + { + model: FalukantCharacter, + as: 'holder', + where: { userId }, + required: true, + attributes: [] + }, + { + model: PoliticalOfficeType, + as: 'type', + attributes: ['name'] + }, + { + model: RegionData, + as: 'region', + include: [{ + model: RegionType, + as: 'regionType', + attributes: ['labelTr'] + }] + } + ] }); // build set of exempt region type labels from user's offices