From 2897e25fe5c87780902a1161da9e6d82e8d85f5f Mon Sep 17 00:00:00 2001 From: Frank Date: Fri, 1 Aug 2025 07:19:02 +0200 Subject: [PATCH] Noch mehr Namensanpassungen --- backend/api/api_test.go | 4 ++-- backend/character/handlers.go | 2 +- backend/character/lerncost_handler.go | 8 ++++---- backend/character/practice_points_handler.go | 17 ++++++++++------- backend/character/routes.go | 18 +++++++++--------- backend/character/spell_utils.go | 8 ++++---- .../character/system_information_handlers.go | 8 ++++---- backend/gsmaster/learning_costs.go | 2 +- backend/gsmaster/lernkosten_maps.go | 6 +++--- backend/gsmaster/lernkosten_maps_test.go | 2 +- backend/integration_test/getspellinfo_test.go | 2 +- backend/models/model_learning_costs.go | 4 ++-- 12 files changed, 42 insertions(+), 39 deletions(-) diff --git a/backend/api/api_test.go b/backend/api/api_test.go index 3fe92d5..59b18c5 100644 --- a/backend/api/api_test.go +++ b/backend/api/api_test.go @@ -307,7 +307,7 @@ func TestGetSkillAllLevelCosts(t *testing.T) { assert.NoError(t, err, "Response should be valid JSON for weapon skill") } -func TestGetAvailableSkillsNew(t *testing.T) { +func TestGetAvailableSkillsNewSystem(t *testing.T) { database.SetupTestDB(true) // Setup test database // Initialize a Gin router r := gin.Default() @@ -417,7 +417,7 @@ func TestGetAvailableSkillsNew(t *testing.T) { } } -func TestGetAvailableSpellsNew(t *testing.T) { +func TestGetAvailableSpellsNewSystem(t *testing.T) { database.SetupTestDB(true) // Setup test database // Initialize a Gin router r := gin.Default() diff --git a/backend/character/handlers.go b/backend/character/handlers.go index 76e74a9..d513b54 100644 --- a/backend/character/handlers.go +++ b/backend/character/handlers.go @@ -1303,7 +1303,7 @@ func GetAvailableSkillsNewSystem(c *gin.Context) { remainingGold := request.UseGold // Hole die vollständigen Skill-Informationen für die Kostenberechnung - skillLearningInfo, err := models.GetSkillCategoryAndDifficultyNew(skill.Name, getCharacterClassOld(&character)) + skillLearningInfo, err := models.GetSkillCategoryAndDifficultyNewSystem(skill.Name, getCharacterClassOld(&character)) if err != nil { // Fallback für unbekannte Skills skillLearningInfo = &models.SkillLearningInfo{ diff --git a/backend/character/lerncost_handler.go b/backend/character/lerncost_handler.go index 91a0d87..7dcdf09 100644 --- a/backend/character/lerncost_handler.go +++ b/backend/character/lerncost_handler.go @@ -180,7 +180,7 @@ func GetLernCostNewSystem(c *gin.Context) { // Verwende Klassenabkürzung wenn der Typ länger als 3 Zeichen ist var characterClass string if len(character.Typ) > 3 { - characterClass = gsmaster.GetClassAbbreviationNew(character.Typ) + characterClass = gsmaster.GetClassAbbreviationNewSystem(character.Typ) } else { characterClass = character.Typ } @@ -220,7 +220,7 @@ func GetLernCostNewSystem(c *gin.Context) { response = append(response, levelResult) } else { // Skill learning logic - skillInfo, err := models.GetSkillCategoryAndDifficultyNew(skillName, characterClass) + skillInfo, err := models.GetSkillCategoryAndDifficultyNewSystem(skillName, characterClass) if err != nil { respondWithError(c, http.StatusBadRequest, fmt.Sprintf("Fertigkeit '%s' nicht gefunden oder nicht für Klasse '%s' verfügbar: %v", skillName, characterClass, err)) return @@ -246,7 +246,7 @@ func GetLernCostNewSystem(c *gin.Context) { } else { // Für "improve" Aktion: berechne für jedes Level von current+1 bis 18 // Improvement only works on skills, not spells - skillInfo, err := models.GetSkillCategoryAndDifficultyNew(skillName, characterClass) + skillInfo, err := models.GetSkillCategoryAndDifficultyNewSystem(skillName, characterClass) if err != nil { respondWithError(c, http.StatusBadRequest, fmt.Sprintf("Fertigkeit '%s' nicht gefunden oder nicht für Klasse '%s' verfügbar: %v", skillName, characterClass, err)) return @@ -981,7 +981,7 @@ func generateNotes(character *models.Char, request *SkillCostRequest, cost *mode // getPPForSkill ermittelt die verfügbaren Praxispunkte für eine spezifische Fertigkeit func getPPForSkill(character *models.Char, skillName string) int { // Ermittle die tatsächliche Fertigkeit (bei Zaubern die Zaubergruppe) - targetSkillName := getSpellCategory(skillName) + targetSkillName := getSpellCategoryNewSystem(skillName) for _, fertigkeit := range character.Fertigkeiten { if fertigkeit.Name == targetSkillName { diff --git a/backend/character/practice_points_handler.go b/backend/character/practice_points_handler.go index 070d6a1..5c3d41a 100644 --- a/backend/character/practice_points_handler.go +++ b/backend/character/practice_points_handler.go @@ -71,9 +71,11 @@ func UpdatePracticePoints(c *gin.Context) { } // Alle Fertigkeiten durchgehen und Praxispunkte zurücksetzen - for i := range character.Fertigkeiten { - character.Fertigkeiten[i].Pp = 0 - } + /* + for i := range character.Fertigkeiten { + character.Fertigkeiten[i].Pp = 0 + } + */ // Neue Praxispunkte setzen for _, pp := range practicePoints { @@ -106,6 +108,7 @@ func UpdatePracticePoints(c *gin.Context) { } // AddPracticePoint fügt einen Praxispunkt zu einer Fertigkeit hinzu +// TODO prüfe speichern der PP für Spells func AddPracticePoint(c *gin.Context) { // Charakter-ID aus der URL abrufen charID := c.Param("id") @@ -136,9 +139,9 @@ func AddPracticePoint(c *gin.Context) { // Prüfen, ob es sich um einen Zauber handelt var targetSkillName string var isSpellFlag bool - if isSpell(request.SkillName) { + if isSpellNewSystem(request.SkillName) { // Bei Zaubern: PP werden der entsprechenden Zaubergruppe zugeordnet - targetSkillName = getSpellCategory(request.SkillName) + targetSkillName = getSpellCategoryNewSystem(request.SkillName) isSpellFlag = true } else { // Bei normalen Fertigkeiten: PP werden direkt der Fertigkeit zugeordnet @@ -234,9 +237,9 @@ func UsePracticePoint(c *gin.Context) { // Prüfen, ob es sich um einen Zauber handelt var targetSkillName string var isSpellFlag bool - if isSpell(request.SkillName) { + if isSpellNewSystem(request.SkillName) { // Bei Zaubern: PP werden von der entsprechenden Zaubergruppe abgezogen - targetSkillName = getSpellCategory(request.SkillName) + targetSkillName = getSpellCategoryNewSystem(request.SkillName) isSpellFlag = true } else { // Bei normalen Fertigkeiten: PP werden direkt von der Fertigkeit abgezogen diff --git a/backend/character/routes.go b/backend/character/routes.go index 17962a6..581c4c5 100644 --- a/backend/character/routes.go +++ b/backend/character/routes.go @@ -13,9 +13,9 @@ func RegisterRoutes(r *gin.RouterGroup) { charGrp.DELETE("/:id", DeleteCharacter) // Erfahrung und Vermögen - charGrp.GET("/:id/experience-wealth", GetCharacterExperienceAndWealth) - charGrp.PUT("/:id/experience", UpdateCharacterExperience) - charGrp.PUT("/:id/wealth", UpdateCharacterWealth) + charGrp.GET("/:id/experience-wealth", GetCharacterExperienceAndWealth) // NewSystem + charGrp.PUT("/:id/experience", UpdateCharacterExperience) // NewSystem + charGrp.PUT("/:id/wealth", UpdateCharacterWealth) // NewSystem // Audit-Log für Änderungen charGrp.GET("/:id/audit-log", GetCharacterAuditLog) // Alle Änderungen oder gefiltert nach Feld (?field=experience_points) @@ -39,12 +39,12 @@ func RegisterRoutes(r *gin.RouterGroup) { charGrp.GET("/:id/reward-types", GetRewardTypesOld) // Verfügbare Belohnungsarten je nach Kontext // Praxispunkte-Verwaltung - charGrp.GET("/:id/practice-points", GetPracticePoints) - charGrp.PUT("/:id/practice-points", UpdatePracticePoints) - charGrp.POST("/:id/practice-points/add", AddPracticePoint) - charGrp.POST("/:id/practice-points/use", UsePracticePoint) + charGrp.GET("/:id/practice-points", GetPracticePoints) // NewSystem + charGrp.PUT("/:id/practice-points", UpdatePracticePoints) // NewSystem + charGrp.POST("/:id/practice-points/add", AddPracticePoint) // NewSystem + charGrp.POST("/:id/practice-points/use", UsePracticePoint) // NewSystem // System-Information - charGrp.GET("/character-classes", GetCharacterClassesHandler) - charGrp.GET("/skill-categories", GetSkillCategoriesHandler) + charGrp.GET("/character-classes", GetCharacterClassesHandlerOld) + charGrp.GET("/skill-categories", GetSkillCategoriesHandlerOld) } diff --git a/backend/character/spell_utils.go b/backend/character/spell_utils.go index 1361194..7679445 100644 --- a/backend/character/spell_utils.go +++ b/backend/character/spell_utils.go @@ -5,10 +5,10 @@ import ( "bamort/models" ) -// getSpellCategory ermittelt die Zaubergruppe für einen gegebenen Zaubernamen +// getSpellCategoryNewSystem ermittelt die Zaubergruppe für einen gegebenen Zaubernamen // Wenn es sich um einen Zauber handelt, wird die Kategorie zurückgegeben // Andernfalls wird der ursprüngliche Name zurückgegeben -func getSpellCategory(name string) string { +func getSpellCategoryNewSystem(name string) string { var spell models.Spell if err := database.DB.Where("name = ?", name).First(&spell).Error; err != nil { // Kein Zauber gefunden, ursprünglichen Namen verwenden @@ -20,8 +20,8 @@ func getSpellCategory(name string) string { return spell.Category } -// isSpell prüft, ob der gegebene Name ein Zauber ist -func isSpell(name string) bool { +// isSpellNewSystem prüft, ob der gegebene Name ein Zauber ist +func isSpellNewSystem(name string) bool { var spell models.Spell err := database.DB.Where("name = ?", name).First(&spell).Error return err == nil diff --git a/backend/character/system_information_handlers.go b/backend/character/system_information_handlers.go index d0bb528..de7db5a 100644 --- a/backend/character/system_information_handlers.go +++ b/backend/character/system_information_handlers.go @@ -6,8 +6,8 @@ import ( "github.com/gin-gonic/gin" ) -// GetCharacterClassesHandler gibt alle verfügbaren Charakterklassen zurück -func GetCharacterClassesHandler(c *gin.Context) { +// GetCharacterClassesHandlerOld gibt alle verfügbaren Charakterklassen zurück +func GetCharacterClassesHandlerOld(c *gin.Context) { // Vereinfachte Antwort mit den drei Hauptklassen classes := map[string]interface{}{ "Sp": map[string]interface{}{ @@ -30,8 +30,8 @@ func GetCharacterClassesHandler(c *gin.Context) { c.JSON(http.StatusOK, gin.H{"character_classes": classes}) } -// GetSkillCategoriesHandler gibt alle verfügbaren Fertigkeitskategorien zurück -func GetSkillCategoriesHandler(c *gin.Context) { +// GetSkillCategoriesHandlerOld gibt alle verfügbaren Fertigkeitskategorien zurück +func GetSkillCategoriesHandlerOld(c *gin.Context) { categories := map[string]interface{}{ "Alltag": map[string]interface{}{ "name": "Alltag", diff --git a/backend/gsmaster/learning_costs.go b/backend/gsmaster/learning_costs.go index e6a7bcd..b0e12c8 100644 --- a/backend/gsmaster/learning_costs.go +++ b/backend/gsmaster/learning_costs.go @@ -852,7 +852,7 @@ func GetClassAbbreviationOld(characterClass string) string { // Fallback: originale Eingabe zurückgeben return characterClass } -func GetClassAbbreviationNew(characterClass string) string { +func GetClassAbbreviationNewSystem(characterClass string) string { // Try to find by code first (e.g., "Kr" -> "Kr") var charClass models.CharacterClass if err := charClass.FirstByName(characterClass); err == nil { diff --git a/backend/gsmaster/lernkosten_maps.go b/backend/gsmaster/lernkosten_maps.go index a4b738f..f0493d1 100644 --- a/backend/gsmaster/lernkosten_maps.go +++ b/backend/gsmaster/lernkosten_maps.go @@ -541,8 +541,8 @@ func contains(slice []string, item string) bool { //### End of Helper functions ### -// GetSpellInfoNew returns the school and level of a spell from the database -func GetSpellInfoNew(spellName string) (string, int, error) { +// GetSpellInfoNewSystem returns the school and level of a spell from the database +func GetSpellInfoNewSystem(spellName string) (string, int, error) { // Create a Spell instance to search in the database var spell models.Spell @@ -780,7 +780,7 @@ func CalcSpellLernCostOld(costResult *SkillCostResultNew, reward *string) error // Für Zauber verwenden wir eine ähnliche Logik wie für Skills // TODO: Implementiere spezifische Zauber-Kostenlogik wenn verfügbar classKey := costResult.CharacterClass - spellCategory, spellLevel, err := GetSpellInfoNew(costResult.SkillName) + spellCategory, spellLevel, err := GetSpellInfoNewSystem(costResult.SkillName) if err != nil { return fmt.Errorf("failed to get spell info: %w", err) } diff --git a/backend/gsmaster/lernkosten_maps_test.go b/backend/gsmaster/lernkosten_maps_test.go index 5832c62..79d11d1 100644 --- a/backend/gsmaster/lernkosten_maps_test.go +++ b/backend/gsmaster/lernkosten_maps_test.go @@ -817,7 +817,7 @@ func TestGetSpellInfo(t *testing.T) { for _, tt := range tests { t.Run(tt.spellName, func(t *testing.T) { - school, level, err := GetSpellInfoNew(tt.spellName) + school, level, err := GetSpellInfoNewSystem(tt.spellName) if tt.expectError { if err == nil { diff --git a/backend/integration_test/getspellinfo_test.go b/backend/integration_test/getspellinfo_test.go index 0a370e8..4062135 100644 --- a/backend/integration_test/getspellinfo_test.go +++ b/backend/integration_test/getspellinfo_test.go @@ -55,7 +55,7 @@ func TestGetSpellInfoIntegration(t *testing.T) { for _, tt := range tests { t.Run(tt.spellName, func(t *testing.T) { - school, level, err := gsmaster.GetSpellInfoNew(tt.spellName) + school, level, err := gsmaster.GetSpellInfoNewSystem(tt.spellName) if tt.expectError { if err == nil { diff --git a/backend/models/model_learning_costs.go b/backend/models/model_learning_costs.go index 36bd15c..bc83eba 100644 --- a/backend/models/model_learning_costs.go +++ b/backend/models/model_learning_costs.go @@ -288,8 +288,8 @@ func GetEPPerLEForClassAndSpellSchool(classCode string, schoolName string) (int, return result.EPPerLE, nil } -// GetSkillCategoryAndDifficultyNew findet die beste Kategorie für eine Fertigkeit basierend auf niedrigsten EP-Kosten -func GetSkillCategoryAndDifficultyNew(skillName string, classCode string) (*SkillLearningInfo, error) { +// GetSkillCategoryAndDifficultyNewSystem findet die beste Kategorie für eine Fertigkeit basierend auf niedrigsten EP-Kosten +func GetSkillCategoryAndDifficultyNewSystem(skillName string, classCode string) (*SkillLearningInfo, error) { var results []SkillLearningInfo err := database.DB.Raw(`