moved Ausruestung to domain equipment
This commit is contained in:
@@ -2,7 +2,6 @@ package character
|
||||
|
||||
import (
|
||||
"bamort/database"
|
||||
"bamort/models"
|
||||
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
@@ -44,72 +43,6 @@ func CreateCharacter(c *gin.Context) {
|
||||
c.JSON(http.StatusCreated, character)
|
||||
}
|
||||
|
||||
/*
|
||||
Endpoints for Managing Ausruestung
|
||||
1. Create Ausruestung
|
||||
|
||||
Allows users to add new equipment items for a specific character.
|
||||
*/
|
||||
|
||||
func CreateAusruestung(c *gin.Context) {
|
||||
var ausruestung models.Ausruestung
|
||||
if err := c.ShouldBindJSON(&ausruestung); err != nil {
|
||||
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
|
||||
return
|
||||
}
|
||||
|
||||
if err := database.DB.Create(&ausruestung).Error; err != nil {
|
||||
c.JSON(http.StatusInternalServerError, gin.H{"error": "Failed to create Ausruestung"})
|
||||
return
|
||||
}
|
||||
|
||||
c.JSON(http.StatusCreated, ausruestung)
|
||||
}
|
||||
|
||||
func GetAusruestung(c *gin.Context) {
|
||||
characterID := c.Param("character_id")
|
||||
|
||||
var ausruestung []models.Ausruestung
|
||||
if err := database.DB.Where("character_id = ?", characterID).Find(&ausruestung).Error; err != nil {
|
||||
c.JSON(http.StatusInternalServerError, gin.H{"error": "Failed to retrieve Ausruestung"})
|
||||
return
|
||||
}
|
||||
|
||||
c.JSON(http.StatusOK, ausruestung)
|
||||
}
|
||||
|
||||
func UpdateAusruestung(c *gin.Context) {
|
||||
ausruestungID := c.Param("ausruestung_id")
|
||||
var ausruestung models.Ausruestung
|
||||
|
||||
if err := database.DB.First(&ausruestung, ausruestungID).Error; err != nil {
|
||||
c.JSON(http.StatusNotFound, gin.H{"error": "Ausruestung not found"})
|
||||
return
|
||||
}
|
||||
|
||||
if err := c.ShouldBindJSON(&ausruestung); err != nil {
|
||||
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
|
||||
return
|
||||
}
|
||||
|
||||
if err := database.DB.Save(&ausruestung).Error; err != nil {
|
||||
c.JSON(http.StatusInternalServerError, gin.H{"error": "Failed to update Ausruestung"})
|
||||
return
|
||||
}
|
||||
|
||||
c.JSON(http.StatusOK, ausruestung)
|
||||
}
|
||||
|
||||
func DeleteAusruestung(c *gin.Context) {
|
||||
ausruestungID := c.Param("ausruestung_id")
|
||||
if err := database.DB.Delete(&models.Ausruestung{}, ausruestungID).Error; err != nil {
|
||||
c.JSON(http.StatusInternalServerError, gin.H{"error": "Failed to delete Ausruestung"})
|
||||
return
|
||||
}
|
||||
|
||||
c.JSON(http.StatusOK, gin.H{"message": "Ausruestung deleted successfully"})
|
||||
}
|
||||
|
||||
// Upload files
|
||||
func UploadFiles(c *gin.Context) {
|
||||
// Get files from the request
|
||||
|
||||
@@ -2,6 +2,7 @@ package character
|
||||
|
||||
import (
|
||||
"bamort/database"
|
||||
"bamort/equipment"
|
||||
"bamort/models"
|
||||
"fmt"
|
||||
|
||||
@@ -69,7 +70,7 @@ type Char struct {
|
||||
Waffen []models.Waffe `gorm:"foreignKey:CharacterID;constraint:OnUpdate:CASCADE,OnDelete:CASCADE" json:"waffen"`
|
||||
Behaeltnisse []models.Behaeltniss `gorm:"foreignKey:CharacterID;constraint:OnUpdate:CASCADE,OnDelete:CASCADE" json:"behaeltnisse"`
|
||||
Transportmittel []models.Transportation `gorm:"foreignKey:CharacterID;constraint:OnUpdate:CASCADE,OnDelete:CASCADE" json:"transportmittel"`
|
||||
Ausruestung []models.Ausruestung `gorm:"foreignKey:CharacterID;constraint:OnUpdate:CASCADE,OnDelete:CASCADE" json:"ausruestung"`
|
||||
Ausruestung []equipment.Ausruestung `gorm:"foreignKey:CharacterID;constraint:OnUpdate:CASCADE,OnDelete:CASCADE" json:"ausruestung"`
|
||||
Image string `json:"image,omitempty"`
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,75 @@
|
||||
package equipment
|
||||
|
||||
import (
|
||||
"bamort/database"
|
||||
"bamort/models"
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
|
||||
/*
|
||||
Endpoints for Managing Ausruestung
|
||||
1. Create Ausruestung
|
||||
|
||||
Allows users to add new equipment items for a specific character.
|
||||
*/
|
||||
|
||||
func CreateAusruestung(c *gin.Context) {
|
||||
var ausruestung models.Ausruestung
|
||||
if err := c.ShouldBindJSON(&ausruestung); err != nil {
|
||||
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
|
||||
return
|
||||
}
|
||||
|
||||
if err := database.DB.Create(&ausruestung).Error; err != nil {
|
||||
c.JSON(http.StatusInternalServerError, gin.H{"error": "Failed to create Ausruestung"})
|
||||
return
|
||||
}
|
||||
|
||||
c.JSON(http.StatusCreated, ausruestung)
|
||||
}
|
||||
|
||||
func GetAusruestung(c *gin.Context) {
|
||||
characterID := c.Param("character_id")
|
||||
|
||||
var ausruestung []Ausruestung
|
||||
if err := database.DB.Where("character_id = ?", characterID).Find(&ausruestung).Error; err != nil {
|
||||
c.JSON(http.StatusInternalServerError, gin.H{"error": "Failed to retrieve Ausruestung"})
|
||||
return
|
||||
}
|
||||
|
||||
c.JSON(http.StatusOK, ausruestung)
|
||||
}
|
||||
|
||||
func UpdateAusruestung(c *gin.Context) {
|
||||
ausruestungID := c.Param("ausruestung_id")
|
||||
var ausruestung Ausruestung
|
||||
|
||||
if err := database.DB.First(&ausruestung, ausruestungID).Error; err != nil {
|
||||
c.JSON(http.StatusNotFound, gin.H{"error": "Ausruestung not found"})
|
||||
return
|
||||
}
|
||||
|
||||
if err := c.ShouldBindJSON(&ausruestung); err != nil {
|
||||
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
|
||||
return
|
||||
}
|
||||
|
||||
if err := database.DB.Save(&ausruestung).Error; err != nil {
|
||||
c.JSON(http.StatusInternalServerError, gin.H{"error": "Failed to update Ausruestung"})
|
||||
return
|
||||
}
|
||||
|
||||
c.JSON(http.StatusOK, ausruestung)
|
||||
}
|
||||
|
||||
func DeleteAusruestung(c *gin.Context) {
|
||||
ausruestungID := c.Param("ausruestung_id")
|
||||
if err := database.DB.Delete(&Ausruestung{}, ausruestungID).Error; err != nil {
|
||||
c.JSON(http.StatusInternalServerError, gin.H{"error": "Failed to delete Ausruestung"})
|
||||
return
|
||||
}
|
||||
|
||||
c.JSON(http.StatusOK, gin.H{"message": "Ausruestung deleted successfully"})
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package equipment
|
||||
|
||||
import "bamort/models"
|
||||
|
||||
type Ausruestung struct {
|
||||
models.BamortCharTrait
|
||||
models.Magisch
|
||||
Beschreibung string `json:"beschreibung"`
|
||||
Anzahl int `json:"anzahl"`
|
||||
BeinhaltetIn string `json:"beinhaltet_in"`
|
||||
Bonus int `json:"bonus,omitempty"`
|
||||
Gewicht float64 `json:"gewicht"`
|
||||
Wert float64 `json:"wert"`
|
||||
}
|
||||
+5
-4
@@ -3,6 +3,7 @@ package main
|
||||
import (
|
||||
"bamort/character"
|
||||
"bamort/database"
|
||||
"bamort/equipment"
|
||||
"bamort/user"
|
||||
|
||||
"github.com/gin-contrib/cors"
|
||||
@@ -32,10 +33,10 @@ func main() {
|
||||
protected.Use(user.AuthMiddleware())
|
||||
protected.GET("/characters", character.GetCharacters)
|
||||
protected.POST("/characters", character.CreateCharacter)
|
||||
protected.POST("/ausruestung", character.CreateAusruestung)
|
||||
protected.GET("/ausruestung/:character_id", character.GetAusruestung)
|
||||
protected.PUT("/ausruestung/:ausruestung_id", character.UpdateAusruestung)
|
||||
protected.DELETE("/ausruestung/:ausruestung_id", character.DeleteAusruestung)
|
||||
protected.POST("/ausruestung", equipment.CreateAusruestung)
|
||||
protected.GET("/ausruestung/:character_id", equipment.GetAusruestung)
|
||||
protected.PUT("/ausruestung/:ausruestung_id", equipment.UpdateAusruestung)
|
||||
protected.DELETE("/ausruestung/:ausruestung_id", equipment.DeleteAusruestung)
|
||||
protected.POST("/upload", character.UploadFiles)
|
||||
protected.GET("/setupcheck", database.SetupCheck)
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@ package tests
|
||||
import (
|
||||
"bamort/character"
|
||||
"bamort/database"
|
||||
"bamort/equipment"
|
||||
"bamort/models"
|
||||
"encoding/base64"
|
||||
"fmt"
|
||||
@@ -31,7 +32,7 @@ func initTestDB4Character() *gorm.DB {
|
||||
&models.Waffe{},
|
||||
&models.Behaeltniss{},
|
||||
&models.Transportation{},
|
||||
&models.Ausruestung{},
|
||||
&equipment.Ausruestung{},
|
||||
)
|
||||
return db
|
||||
}
|
||||
@@ -284,7 +285,7 @@ func createChar() *character.Char {
|
||||
|
||||
},
|
||||
}
|
||||
char.Ausruestung = []models.Ausruestung{
|
||||
char.Ausruestung = []equipment.Ausruestung{
|
||||
{
|
||||
BamortCharTrait: models.BamortCharTrait{
|
||||
BamortBase: models.BamortBase{
|
||||
@@ -513,8 +514,8 @@ func createTransportmittel(sel int) *models.Transportation {
|
||||
}
|
||||
return &liste[sel]
|
||||
}
|
||||
func createAusruestung(sel int) *models.Ausruestung {
|
||||
liste := []models.Ausruestung{
|
||||
func createAusruestung(sel int) *equipment.Ausruestung {
|
||||
liste := []equipment.Ausruestung{
|
||||
{
|
||||
BamortCharTrait: models.BamortCharTrait{
|
||||
BamortBase: models.BamortBase{
|
||||
|
||||
Reference in New Issue
Block a user