Files
wagfarm/wagfarm-api/routes/log/log_routes.go
2025-04-09 20:37:07 +02:00

49 lines
1.0 KiB
Go

package log
import (
"net/http"
"wagfarm-api/database"
"wagfarm-api/models"
"github.com/gin-gonic/gin"
)
func RegisterRoutes(router *gin.Engine) {
db := database.DB
group := router.Group("/log")
RegisterHarvestRoutes(router, path)
router.GET(path+"-type", func(c *gin.Context) {
var types []models.LogType
db.Find(&types)
c.JSON(http.StatusOK, types)
})
router.POST(path+"-type", func(c *gin.Context) {
var logType models.LogType
if err := c.ShouldBindJSON(&logType); err != nil {
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
return
}
db.Create(&logType)
c.JSON(http.StatusCreated, logType)
})
router.GET(path, func(c *gin.Context) {
var logs []models.Log
db.Preload("LogType").Preload("Equipment").Preload("Substance").Find(&logs)
c.JSON(http.StatusOK, logs)
})
router.POST(path, func(c *gin.Context) {
var log models.Log
if err := c.ShouldBindJSON(&log); err != nil {
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
return
}
db.Create(&log)
c.JSON(http.StatusCreated, log)
})
}