Improve composer management

This commit is contained in:
2026-01-23 22:42:33 +01:00
parent 6ed4dec4f0
commit 13078993d4
2 changed files with 22 additions and 4 deletions

View File

@@ -33,7 +33,24 @@ func UploadSheet(c *gin.Context) {
return
}
composer := c.PostForm("composer")
composerUUIDStr := c.PostForm("composer_uuid")
if composerUUIDStr == "" {
c.JSON(http.StatusBadRequest, gin.H{"error": "Composer UUID is required"})
return
}
composerUUID, err := uuid.Parse(composerUUIDStr)
if err != nil {
c.JSON(http.StatusBadRequest, gin.H{"error": "Invalid composer UUID"})
return
}
var composer models.Composer
if err := database.DB.First(&composer, composerUUID).Error; err != nil {
c.JSON(http.StatusBadRequest, gin.H{"error": "Composer not found"})
return
}
description := c.PostForm("description")
// Get uploaded file
@@ -91,11 +108,11 @@ func UploadSheet(c *gin.Context) {
sheet := models.Sheet{
Uuid: *uuid,
Title: title,
Composer: composer,
Description: description,
FilePath: filePath,
FileSize: fileInfo.Size(),
FileHash: fileHash,
ComposerID: composer.Uuid,
CreatedAt: time.Now(),
UpdatedAt: time.Now(),
}
@@ -116,7 +133,7 @@ func UploadSheet(c *gin.Context) {
func ListSheets(c *gin.Context) {
var sheets []models.Sheet
if err := database.DB.Find(&sheets).Error; err != nil {
if err := database.DB.Preload("Composer").Find(&sheets).Error; err != nil {
c.JSON(http.StatusInternalServerError, gin.H{"error": "Failed to fetch sheets"})
return
}