package models import ( "errors" "fmt" "screenmark/screenmark/.gen/haystack/haystack/model" . "screenmark/screenmark/.gen/haystack/haystack/table" . "github.com/go-jet/jet/v2/postgres" "github.com/google/uuid" ) func SaveImage(userId string, imageName string, imageData []byte) (model.UserImages, error) { stmt := UserImages.INSERT(UserImages.UserID, UserImages.ImageName, UserImages.Image).VALUES(userId, imageName, imageData).RETURNING(UserImages.ID, UserImages.UserID, UserImages.ImageName) userImage := model.UserImages{} err := stmt.Query(db, &userImage) return userImage, err } func GetImage(imageId string) (model.UserImages, error) { id := uuid.MustParse(imageId) stmt := UserImages.SELECT(UserImages.AllColumns).WHERE(UserImages.ID.EQ(UUID(id))) images := []model.UserImages{} err := stmt.Query(db, &images) if len(images) != 1 { return model.UserImages{}, errors.New(fmt.Sprintf("Expected 1, got %d\n", len(images))) } return images[0], err }