ADD: team site and player/usermanagement is working

This commit is contained in:
hwinkel
2025-11-22 14:51:53 +01:00
parent 846a922a41
commit 139a99d96e
13 changed files with 229 additions and 111 deletions

View File

@@ -0,0 +1,31 @@
package team
import (
"database/sql"
"log"
"net/http"
"volleyball/internal/common"
"github.com/gin-gonic/gin"
)
func GetTeams(c *gin.Context, db *sql.DB) {
log.Println(c.GetString("userId"), c.GetString("email"), c.GetString("role"))
// Simulate fetching players from a database
teams, err := GetAllTeams(db)
if err != nil {
log.Printf("Error retrieving teams: %v", err)
common.RespondError(c, http.StatusInternalServerError, "Failed to retrieve players")
return
}
if len(teams) > 0 {
log.Printf("User %s (%s) requested players", c.GetString("userId"), c.GetString("email"))
c.JSON(http.StatusOK, teams)
return
}
log.Printf("User %s (%s) requested players, but none found", c.GetString("userId"), c.GetString("email"))
common.RespondError(c, http.StatusNotFound, "No Players found")
}

View File

@@ -0,0 +1,25 @@
package team
import (
"database/sql"
)
type Player struct {
UUID string `db:"uuid" sql:"VARCHAR(255)" index:"true"`
Email string `db:"email" sql:"VARCHAR(255)" index:"true"`
Username string `db:"username" sql:"VARCHAR(100)"`
FirstName string `db:"firstname" sql:"VARCHAR(100)"`
LastName string `db:"lastname" sql:"VARCHAR(100)"`
}
type Team struct {
UUID string `db:"uuid" sql:"VARCHAR(255)" index:"true"`
Name string `db:"username" sql:"VARCHAR(100)"`
Email string `db:"email" sql:"VARCHAR(255)" index:"true"`
PlayersUUID []Player `db:"players" sql:"JSVARCHAR(255)"`
}
func GetAllTeams(db *sql.DB) ([]Team, error) {
// Implementation to retrieve all teams from the database
return []Team{}, nil
}