feat: saving AI information to database
This commit is contained in:
@@ -34,12 +34,71 @@ func GetImage(imageId string) (model.UserImages, error) {
|
||||
return images[0], err
|
||||
}
|
||||
|
||||
func GetUserImages(userId string) ([]model.UserImages, error) {
|
||||
type UserImagesWithInfo struct {
|
||||
model.UserImages
|
||||
|
||||
Tags []model.ImageTags
|
||||
Links []model.ImageLinks
|
||||
Text []model.ImageText
|
||||
}
|
||||
|
||||
func GetUserImages(userId string) ([]UserImagesWithInfo, error) {
|
||||
id := uuid.MustParse(userId)
|
||||
stmt := UserImages.SELECT(UserImages.ID, UserImages.ImageName).WHERE(UserImages.UserID.EQ(UUID(id)))
|
||||
|
||||
images := []model.UserImages{}
|
||||
images := []UserImagesWithInfo{}
|
||||
err := stmt.Query(db, &images)
|
||||
|
||||
return images, err
|
||||
}
|
||||
|
||||
func SaveImageTags(imageId string, tags []string) ([]model.ImageTags, error) {
|
||||
id := uuid.MustParse(imageId)
|
||||
|
||||
stmt := ImageTags.INSERT(ImageTags.ImageID, ImageTags.Tag)
|
||||
|
||||
for _, t := range tags {
|
||||
stmt = stmt.VALUES(id, t)
|
||||
}
|
||||
|
||||
stmt.RETURNING(ImageTags.AllColumns)
|
||||
|
||||
imageTags := []model.ImageTags{}
|
||||
err := stmt.Query(db, &imageTags)
|
||||
|
||||
return imageTags, err
|
||||
}
|
||||
|
||||
func SaveImageLinks(imageId string, links []string) ([]model.ImageLinks, error) {
|
||||
id := uuid.MustParse(imageId)
|
||||
|
||||
stmt := ImageTags.INSERT(ImageLinks.ImageID, ImageLinks.Link)
|
||||
|
||||
for _, t := range links {
|
||||
stmt = stmt.VALUES(id, t)
|
||||
}
|
||||
|
||||
stmt.RETURNING(ImageLinks.AllColumns)
|
||||
|
||||
imageLinks := []model.ImageLinks{}
|
||||
err := stmt.Query(db, &imageLinks)
|
||||
|
||||
return imageLinks, err
|
||||
}
|
||||
|
||||
func SaveImageTexts(imageId string, texts []string) ([]model.ImageText, error) {
|
||||
id := uuid.MustParse(imageId)
|
||||
|
||||
stmt := ImageTags.INSERT(ImageText.ImageID, ImageText.ImageText)
|
||||
|
||||
for _, t := range texts {
|
||||
stmt = stmt.VALUES(id, t)
|
||||
}
|
||||
|
||||
stmt.RETURNING(ImageText.AllColumns)
|
||||
|
||||
imageTags := []model.ImageText{}
|
||||
err := stmt.Query(db, &imageTags)
|
||||
|
||||
return imageTags, err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user