From d75fe18e6a60766c1423775550deaa3477c12ff2 Mon Sep 17 00:00:00 2001 From: "Torsten Schulz (local)" Date: Mon, 12 Jan 2026 11:35:38 +0100 Subject: [PATCH] Optimize user and character loading in FalukantService by querying only necessary fields. This change enhances performance and reduces data overhead during retrieval. --- backend/services/falukantService.js | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/backend/services/falukantService.js b/backend/services/falukantService.js index fdfe847..585543e 100644 --- a/backend/services/falukantService.js +++ b/backend/services/falukantService.js @@ -2885,9 +2885,19 @@ class FalukantService extends BaseService { const timings = {}; try { - // 1. User und Character laden + // 1. User und Character laden (optimiert: nur benötigte Felder) const step1Start = Date.now(); - const user = await this.getFalukantUserByHashedId(hashedUserId); + const user = await FalukantUser.findOne({ + include: [ + { model: User, as: 'user', attributes: ['hashedId'], where: { hashedId: hashedUserId } }, + { + model: FalukantCharacter, + as: 'character', + attributes: ['id', 'birthdate', 'gender', 'regionId', 'titleOfNobility'], + required: true + } + ] + }); if (!user) throw new Error('User not found'); const character = user.character; if (!character) throw new Error('Character not found for this user');