2021-04-03 08:29:31 +00:00
|
|
|
package goscrobble
|
|
|
|
|
|
|
|
import (
|
|
|
|
"database/sql"
|
|
|
|
"log"
|
|
|
|
)
|
|
|
|
|
|
|
|
type Genre struct {
|
|
|
|
UUID string `json:"uuid"`
|
|
|
|
Name string `json:"name"`
|
|
|
|
}
|
|
|
|
|
2021-04-04 09:54:53 +00:00
|
|
|
func getGenreByUUID(uuid string) Genre {
|
2021-04-03 08:29:31 +00:00
|
|
|
var genre Genre
|
|
|
|
err := db.QueryRow(
|
|
|
|
"SELECT BIN_TO_UUID(`uuid`, true), `name` FROM `artists` WHERE `uuid` = UUID_TO_BIN(?,true)",
|
|
|
|
uuid).Scan(&genre.UUID, &genre.Name)
|
|
|
|
|
|
|
|
if err != nil {
|
|
|
|
if err != sql.ErrNoRows {
|
|
|
|
log.Printf("Error fetching artists: %+v", err)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
return genre
|
|
|
|
}
|
|
|
|
|
|
|
|
func getGenreByName(name string) Genre {
|
|
|
|
var genre Genre
|
|
|
|
err := db.QueryRow(
|
|
|
|
"SELECT BIN_TO_UUID(`uuid`, true), `name` FROM `artists` WHERE `name` = ?",
|
|
|
|
name).Scan(&genre.UUID, &genre.Name)
|
|
|
|
|
|
|
|
if err != nil {
|
|
|
|
if err != sql.ErrNoRows {
|
|
|
|
log.Printf("Error fetching artists: %+v", err)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
return genre
|
|
|
|
}
|
|
|
|
|
|
|
|
func (genre *Genre) updateGenreName(name string, value string) error {
|
|
|
|
_, err := db.Exec("UPDATE `genres` SET `name` = ? WHERE uuid = UUID_TO_BIN(?, true)", name, genre.UUID)
|
|
|
|
|
|
|
|
return err
|
|
|
|
}
|