Agent par défaut

This commit is contained in:
fabien committed 2026-09-07 21:04:48 +02:00
1 parent cf10b9073b
commit f74e4d1043
24 files changed
+385 -37

No files matched your search

+55
View File
@@ -0,0 +1,55 @@
package handlers
import (
"net/http"
"github.com/labstack/echo/v5"
"trankilou.fr/lassistanoque/backend/internal/domain"
"trankilou.fr/lassistanoque/backend/internal/service/auth"
"trankilou.fr/lassistanoque/backend/internal/service/user"
)
func NewTeamGroup(prefix string, e *echo.Group, service *user.Service, middlewares ...echo.MiddlewareFunc) *echo.Group {
teamHandler := &TeamHandler{
userService: service,
}
h := e.Group(prefix, middlewares...)
h.GET("/:team", teamHandler.Get)
h.PUT("/:team", teamHandler.Update)
return h
}
type TeamHandler struct {
userService *user.Service
}
func (h TeamHandler) Get(c *echo.Context) error {
userID := c.Get(auth.ContextUserIDKey).(string)
teamID := c.Param("team")
user, err := h.userService.GetTeam(userID, teamID)
if err != nil {
return echo.NewHTTPError(http.StatusUnauthorized, err.Error())
}
return c.JSON(http.StatusOK, user)
}
func (h TeamHandler) Update(c *echo.Context) error {
userID := c.Get(auth.ContextUserIDKey).(string)
teamID := c.Param("team")
var updTeam domain.Team
if err := c.Bind(&updTeam); err != nil {
return c.String(http.StatusBadRequest, "bad request")
}
if teamID != updTeam.ID {
return c.String(http.StatusBadRequest, "bad request")
}
user, err := h.userService.UpdateTeam(userID, &updTeam)
if err != nil {
return c.String(http.StatusBadRequest, err.Error())
}
return c.JSON(http.StatusOK, user)
}