Commit Graph

127 Commits

Author SHA1 Message Date
Torsten Schulz (local)
cace68b610 Refactor association keys in setupAssociations: Update foreign key naming conventions in Party and TitleOfNobility associations for consistency and clarity. Enhance error handling in FalukantService to ensure party ID is present before adding invited nobilities. 2026-01-29 09:05:38 +01:00
Torsten Schulz (local)
3c98f784db Add reputation actions endpoint: Implement getReputationActions method in FalukantService, update FalukantController to wrap the new method, and add corresponding route in falukantRouter for retrieving reputation actions. 2026-01-29 08:59:00 +01:00
Torsten Schulz (local)
10da8eaa3b Refactor character name handling in enrichNotificationsWithCharacterNames: Update comments for clarity on character_name and characterName usage. Enhance localization by adding success messages in German and English translations. 2026-01-29 07:46:17 +01:00
Torsten Schulz (local)
fb72823ebc Update supervisorId handling in ChurchApplication and FalukantService: Allow supervisorId to be null for entry-level positions, enhancing flexibility in application processing. Improve prerequisite office type updates in initializeFalukantTypes for better data integrity. 2026-01-28 17:02:27 +01:00
Torsten Schulz (local)
29868b01bb Enhance logging and validation in getAvailableChurchPositions: Add detailed console logs for office type requirements and user qualifications, improving debugging and ensuring correct handling of prerequisite office types. 2026-01-28 16:57:46 +01:00
Torsten Schulz (local)
e31aa564fc Add church office requirements validation in FalukantService: Implement checks for prerequisite office types when determining available positions, enhancing the application process for church offices based on user qualifications. 2026-01-28 16:52:44 +01:00
Torsten Schulz (local)
3e1772ab27 Remove unused supervisor assignment in FalukantService: Clean up code by eliminating the conditional block that sets the supervisor object, streamlining the availablePositions logic. 2026-01-28 16:47:57 +01:00
Torsten Schulz (local)
4e71bb8bf5 Add region relationship to ChurchOffice model: Establish associations between ChurchOffice and RegionData, allowing for better organization of church offices by region. Enhance logging in getChurchOverview method for improved debugging and error handling. 2026-01-28 16:45:40 +01:00
Torsten Schulz (local)
061d5a20c9 Add church management features: Implement endpoints for church overview, available positions, supervised applications, and application processing in FalukantService and FalukantController. Update router to include new routes for these functionalities, enhancing church-related operations. 2026-01-28 16:41:19 +01:00
Torsten Schulz (local)
10b68a6824 Add bulk pricing retrieval for products in region: Implement getAllProductPricesInRegion method in FalukantService, update FalukantController and router to support new endpoint, and modify BranchView to utilize bulk request for improved performance. 2026-01-28 15:18:26 +01:00
Torsten Schulz (local)
0c1b79bcc3 Enhance error handling in FalukantService: Add validation for product sellCost in calcRegionalSellPrice and getProductPriceInRegion methods, ensuring proper error messages are logged when sellCost is undefined or null. 2026-01-28 15:05:28 +01:00
Torsten Schulz (local)
72c2fa158f Update FalukantService to include character ID in attributes and enhance logging in PoliticsView for better debugging of character data retrieval. 2026-01-28 14:58:11 +01:00
Torsten Schulz (local)
80bced3d97 Add holder ID to character object in FalukantService: Include the holder's ID in the character data structure to enhance user identification and data integrity. 2026-01-28 14:52:08 +01:00
Torsten Schulz (local)
8367927361 Remove debug logging from getFalukantUserByHashedId and getChildren methods in FalukantService for cleaner code and improved performance. 2026-01-28 13:44:12 +01:00
Torsten Schulz (local)
7cfebcf13d Enhance health activity error handling: Implement detailed error responses in FalukantController for 'tooClose' scenarios, including retry timing. Update localization files for improved user feedback on health measures and errors. Refactor error handling in HealthView to display appropriate messages based on error responses. 2026-01-28 13:34:42 +01:00
Torsten Schulz (local)
ea8b188d96 Füge Funktion zum Abbrechen der Werbung hinzu: Implementiere cancelWooing in FalukantService und FalukantController, aktualisiere FamilyView für die Benutzeroberfläche und verbessere die Fehlermeldungen bei vorzeitigen Abbrüchen. 2026-01-28 11:53:34 +01:00
Torsten Schulz (local)
5d5923cf5c Enhance gift sending logic: Implement retry mechanism for 'tooOften' error in FalukantService and update error handling in FamilyView to display retry time. 2026-01-26 16:45:13 +01:00
Torsten Schulz (local)
ee3dda9476 Refactor SaleSection component: Simplify sell item and sell all logic, remove unnecessary state management, and improve UI feedback. Update translations and clean up unused code in i18n files. Optimize price loading in BranchView and remove legacy product loading in MoneyHistoryView. Streamline PoliticsView by removing own character ID handling and related logic. 2026-01-26 16:03:48 +01:00
Torsten Schulz (local)
a6f9d94d24 Remove deprecated relationship change log migration and enhance error handling in FalukantService for partner retrieval 2026-01-26 10:10:22 +01:00
Torsten Schulz (local)
dd9f2147b6 Refactor and reintroduce character name enrichment logic in FalukantService
- Moved the enrichNotificationsWithCharacterNames function back into the FalukantService class, ensuring character names are correctly parsed and attached to notifications.
- Implemented a comprehensive ID collection and resolution mechanism for character references, enhancing the accuracy of character name assignments.
- Improved error handling during JSON parsing and ID resolution to maintain robustness in notification processing.
2026-01-23 13:46:06 +01:00
Torsten Schulz (local)
edf94aa29b Refactor church career validation in FalukantService
- Moved church career checks to a more logical position in the transaction flow.
- Improved error handling by ensuring character existence is validated before checking for church office.
- Cleaned up commented code for better readability and maintainability.
2026-01-22 16:54:29 +01:00
Torsten Schulz (local)
c1464c6ebc Implement church career management features
- Added endpoints for church career functionalities including overview, available positions, application submission, and application decision-making.
- Enhanced the FalukantController to handle church-related requests.
- Updated associations and models to support church office types and requirements.
- Integrated new routes in the falukantRouter for church career operations.
- Implemented service methods for managing church applications and checking church career status.
- Updated frontend components to display current positions, available positions, and manage applications with appropriate UI elements and loading states.
- Localized new church-related strings in both English and German.
2026-01-22 16:46:42 +01:00
Torsten Schulz (local)
0a3864f0a9 Optimize falukantService and DirectorInfo component for improved performance and user experience
- Refactored proposal handling in falukantService to load existing proposals before cleaning expired ones, reducing unnecessary database queries.
- Enhanced fetchProposals method with explicit joins for better performance and added a limit to avoid excessive data retrieval.
- Updated DirectorInfo component to reload data after hiring a director, ensuring the UI reflects the latest information.
2026-01-22 10:15:45 +01:00
Torsten Schulz (local)
9991555326 Update falukantService and MessagesDialog for improved data handling and parameter extraction
- Changed the join in falukantService from 'title_of_nobility' to 'title' for better clarity in data relationships.
- Enhanced MessagesDialog.vue to directly extract parameters from parsed data when no value object is present, improving the handling of character-related parameters and ensuring backend names take precedence.
2026-01-21 08:33:59 +01:00
Torsten Schulz (local)
f89d543fb0 Implement job hierarchy and region depth calculations in FalukantService; enhance PoliticsView with own position highlighting
- Added a job hierarchy mapping to determine positions based on their rank.
- Introduced asynchronous region depth calculations to determine the hierarchy of regions.
- Updated the mapping of office data to include job hierarchy levels and region depths.
- Enhanced the PoliticsView to highlight the user's own positions with a distinct style.
- Implemented a method to load the user's character ID for position comparison.
2026-01-16 16:25:22 +01:00
Torsten Schulz (local)
3b9a1179b3 Enhance character name resolution in enrichNotificationsWithCharacterNames function
- Introduced sets for collecting first name and last name IDs to improve character name enrichment.
- Implemented batch loading of first names and last names, optimizing database queries.
- Added a helper function to resolve names from character first and last name IDs, enhancing notification data with resolved character names.
- Improved logic for attaching resolved names to notifications, prioritizing name resolution from IDs over fallback methods.
2026-01-15 13:33:54 +01:00
Torsten Schulz (local)
720e61998b Refactor effect handling in enrichNotificationsWithCharacterNames to improve data parsing
- Simplified the logic for processing notification effects by consolidating the JSON parsing into a single conditional check, enhancing code readability and maintainability.
- Ensured consistent handling of effects regardless of their initial format, improving robustness in notification enrichment.
2026-01-15 09:28:00 +01:00
Torsten Schulz (local)
add702be80 Refactor notification handling in FalukantService to improve data processing
- Convert notification rows to plain objects before enriching with character names, ensuring compatibility with subsequent processing.
- Update return structure to include plain notification objects, enhancing data consistency in the response.
2026-01-15 08:16:04 +01:00
Torsten Schulz (local)
7884b932ac Update mood handling in FalukantService and enhance Socket.io configuration in store
- Modified mood assignment in FalukantService to conditionally wrap mood data in an object based on moodId presence, improving data structure consistency.
- Refactored Socket.io initialization in the store to dynamically set the secure option based on the URL scheme, enhancing connection security in production environments.
2026-01-14 16:22:05 +01:00
Torsten Schulz (local)
3aac0476df Add 'sleep' status to Production model and update related components
- Introduced a new 'sleep' boolean field in the Production model to indicate if production is suspended.
- Updated FalukantService to include 'sleep' in the production attributes.
- Enhanced MessagesDialog and ProductionSection components to display the production status and handle branch names.
- Added corresponding translations for 'status', 'sleep', and 'active' in both German and English locale files.
2026-01-14 15:29:53 +01:00
Torsten Schulz (local)
38bbea519a Refactor proposal mapping in FalukantService to handle null characters
- Updated the proposal mapping logic to filter out proposals with null proposed characters, enhancing data integrity.
- Ensured that noble title is safely accessed with a fallback to null, improving robustness in character data handling.
2026-01-14 14:58:59 +01:00
Torsten Schulz (local)
e10fe83b4d Refactor trait handling in FalukantService and FamilyView for improved data consistency
- Updated trait loading in FalukantService to include trait types, enhancing the mapping of traits to characters.
- Adjusted FamilyView to utilize the new trait structure, ensuring accurate retrieval of traits associated with characters.
- Improved null checks for relationships to prevent potential errors during data access.
2026-01-12 13:48:37 +01:00
Torsten Schulz (local)
ce26cf9a7d Update mood and character traits handling in FalukantService to ensure default values are set when no data is available. This change improves robustness in data retrieval by preventing potential undefined values. 2026-01-12 13:44:29 +01:00
Torsten Schulz (local)
522ac3bbe0 Refactor getGiftCost method in FalukantService for improved performance
- Changed getGiftCost from an asynchronous to a synchronous method, eliminating unnecessary await for better efficiency.
- Updated comments for clarity regarding the synchronous nature of gift cost calculation.
- Adjusted related code to reflect the synchronous execution, enhancing overall performance in gift cost retrieval.
2026-01-12 12:02:46 +01:00
Torsten Schulz (local)
3b64d10ced Refactor relationship retrieval in FalukantService for improved performance
- Optimized the process of finding relationships by using two separate queries for better index utilization, reducing data overhead.
- Enhanced loading of related characters and traits by implementing parallel data fetching, improving efficiency in data retrieval.
- Updated timing metrics to reflect changes in the relationship loading process, ensuring accurate performance tracking.
2026-01-12 11:57:17 +01:00
Torsten Schulz (local)
9d0a1c5694 Enhance getGifts method in FalukantService with detailed performance metrics and optimized data retrieval
- Implemented timing metrics to track performance across various steps of the getGifts method, improving traceability.
- Refactored data loading to optimize user, character, and relationship queries, ensuring only necessary fields are fetched.
- Enhanced error handling and logging for better debugging and performance insights during execution.
2026-01-12 11:49:49 +01:00
Torsten Schulz (local)
de63b46d1c Optimize gift retrieval in FalukantService by loading only necessary fields and implementing parallel data fetching. This change enhances performance and reduces data overhead during the gift and title of nobility retrieval process. 2026-01-12 11:46:16 +01:00
Torsten Schulz (local)
6b30a39ba1 Optimize user and character loading in FalukantService by querying only necessary fields. This change enhances performance and reduces data overhead during retrieval. 2026-01-12 11:35:38 +01:00
Torsten Schulz (local)
a8b378971b Refactor character retrieval in FalukantService for improved clarity
- Changed the character retrieval method to directly access the user's character property instead of querying the database, enhancing code readability and performance.
2026-01-12 11:31:49 +01:00
Torsten Schulz (local)
fd71699fcc Refactor firstNameMap creation in FalukantService for improved efficiency
- Simplified the construction of firstNameMap by removing unnecessary spread operator, enhancing performance and readability.
2026-01-12 11:28:32 +01:00
Torsten Schulz (local)
4ec92bd6ce Update attribute mapping in FalukantService for mood data retrieval
- Changed mood attribute from 'labelTr' to 'tr' in the mood query to align with updated data structure.
- Adjusted mood mapping to reflect the new attribute, ensuring consistency in data handling.
2026-01-12 11:24:56 +01:00
Torsten Schulz (local)
c15dbdd595 Update FalukantService to utilize FalukantCharacterTrait for character relationships
- Added import for FalukantCharacterTrait to enhance data retrieval for character relationships.
- Refactored the relationship character query to use FalukantCharacterTrait instead of CharacterTrait, improving data accuracy and consistency.
2026-01-12 11:16:23 +01:00
Torsten Schulz (local)
6ee26f60ea Enhance getFamily method in FalukantService for performance and data retrieval
- Implemented detailed timing metrics to track performance across various steps of the getFamily method.
- Refactored data retrieval to load relationships and children in parallel, improving efficiency.
- Enhanced mapping of relationship and child data, including additional attributes for characters.
- Introduced batch loading for related data to minimize database queries and optimize performance.
- Improved error handling and logging for better traceability during execution.
2026-01-12 11:09:21 +01:00
Torsten Schulz (local)
05306feee5 Add batch price retrieval for products in region
- Implemented a new endpoint to fetch prices for multiple products in a specified region in a single request, improving efficiency.
- Added validation for input parameters to ensure proper data handling.
- Updated the FalukantService to calculate prices based on knowledge factors and worth percentages for each product.
- Modified the frontend to utilize the new batch endpoint, optimizing the loading of product prices.
2026-01-12 08:58:28 +01:00
Torsten Schulz (local)
fd871d8413 Optimize proposal generation in FalukantService using CTEs
- Replaced multiple SQL queries with a single query utilizing Common Table Expressions (CTEs) for improved performance.
- Streamlined the exclusion of existing proposals and active directors directly within the SQL query.
- Enhanced logging for SQL queries and results, providing better traceability during proposal generation.
- Simplified the process of calculating average knowledge for character proposals, ensuring more efficient data handling.
2026-01-12 08:46:54 +01:00
Torsten Schulz (local)
63c24f4a08 Enhance proposal generation logic in FalukantService
- Implemented exclusion of existing proposals and active directors to avoid duplicate character selections.
- Added detailed logging for SQL queries and fallback mechanisms when insufficient older characters are found.
- Improved character selection process by combining excluded character IDs and ensuring a diverse set of proposals.
- Streamlined the batch creation of director proposals with average knowledge calculations for better income predictions.
2026-01-12 08:39:41 +01:00
Torsten Schulz (local)
3709cbd776 Implement enhanced partner search and NPC creation logic in FalukantService
- Added detailed logging for partner search criteria and results, improving traceability.
- Refactored partner search logic to include a fallback mechanism for searching across all regions if no partners are found in the specified region.
- Introduced a new method for creating NPCs when no suitable partners are available, ensuring a continuous flow in the partner matching process.
- Improved the handling of character attributes such as age and title of nobility during partner searches and NPC creation.
2026-01-09 14:37:55 +01:00
Torsten Schulz (local)
70a638bd59 Enhance logging and error handling in FalukantService and FamilyView
- Added detailed logging for partner search and creation processes in FalukantService to improve traceability and debugging.
- Refactored the partner search logic to use a dynamic where clause for better readability and maintainability.
- Implemented error handling in FamilyView's loadGifts method to ensure an empty array is returned on API errors, enhancing user experience.
2026-01-09 14:32:27 +01:00
Torsten Schulz (local)
bc9a9fe829 Add NPC creation and titles retrieval functionality in Admin module
- Implemented createNPCs method in AdminController to handle NPC creation with specified parameters including region, age, title, and count.
- Added getTitlesOfNobility method in AdminController to retrieve available titles for users.
- Updated adminRouter to include new routes for creating NPCs and fetching titles.
- Enhanced navigationController and frontend localization files to support new NPC creation feature.
- Introduced corresponding UI components and routes for NPC management in the admin interface.
2026-01-07 16:45:39 +01:00
Torsten Schulz (local)
c365800fb3 Refactor character creation and heir fetching logic in FalukantService and OverviewView
- Updated character creation process to utilize transactions for improved data integrity during heir generation.
- Enhanced heir fetching logic in OverviewView to check for both mainBranchRegion.id and mainBranchRegionId, adding error handling for missing regions.
- Added warnings for empty heir responses from the API to improve debugging and user feedback.
2026-01-07 11:20:03 +01:00