Files
bamort/backend/character/routes.go
T
2025-07-25 07:25:09 +02:00

50 lines
2.1 KiB
Go

package character
import (
"github.com/gin-gonic/gin"
)
func RegisterRoutes(r *gin.RouterGroup) {
charGrp := r.Group("/characters")
charGrp.GET("", ListCharacters)
charGrp.POST("", CreateCharacter)
charGrp.GET("/:id", GetCharacter)
charGrp.PUT("/:id", UpdateCharacter)
charGrp.DELETE("/:id", DeleteCharacter)
// Erfahrung und Vermögen
charGrp.GET("/:id/experience-wealth", GetCharacterExperienceAndWealth)
charGrp.PUT("/:id/experience", UpdateCharacterExperience)
charGrp.PUT("/:id/wealth", UpdateCharacterWealth)
// Audit-Log für Änderungen
charGrp.GET("/:id/audit-log", GetCharacterAuditLog) // Alle Änderungen oder gefiltert nach Feld (?field=experience_points)
charGrp.GET("/:id/audit-log/stats", GetAuditLogStats) // Statistiken über Änderungen
charGrp.POST("/lerncost", GetLernCost) // neuer Hauptendpunkt für alle Kostenberechnungen
// Kostenberechnung (konsolidiert)
//charGrp.POST("/:id/skill-cost", GetSkillCost) // Hauptendpunkt für alle Kostenberechnungen
//charGrp.GET("/:id/improve", GetSkillNextLevelCosts) // Legacy - für nächste Stufe
//charGrp.GET("/:id/improve/skill", GetSkillAllLevelCosts) // Legacy - für alle Stufen
// Lernen und Verbessern (mit automatischem Audit-Log)
charGrp.POST("/:id/learn-skill", LearnSkill) // Fertigkeit lernen
charGrp.POST("/:id/improve-skill", ImproveSkill) // Fertigkeit verbessern
charGrp.POST("/:id/learn-spell", LearnSpell) // Zauber lernen
//charGrp.POST("/:id/improve-spell", ImproveSpell) // Zauber verbessern
// Belohnungsarten für verschiedene Lernszenarien
charGrp.GET("/:id/reward-types", GetRewardTypes) // 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)
// System-Information
charGrp.GET("/character-classes", GetCharacterClassesHandler)
charGrp.GET("/skill-categories", GetSkillCategoriesHandler)
}