mirror of
https://github.com/JuLi0n21/pwa-player.git
synced 2026-04-19 23:40:05 +00:00
add sqlc, fix background img fetching
This commit is contained in:
276
grpc-backend/internal/db/beatmap.sql.go
Normal file
276
grpc-backend/internal/db/beatmap.sql.go
Normal file
@@ -0,0 +1,276 @@
|
||||
// Code generated by sqlc. DO NOT EDIT.
|
||||
// versions:
|
||||
// sqlc v1.29.0
|
||||
// source: beatmap.sql
|
||||
|
||||
package db
|
||||
|
||||
import (
|
||||
"context"
|
||||
"database/sql"
|
||||
)
|
||||
|
||||
const getArtists = `-- name: GetArtists :many
|
||||
SELECT Artist, COUNT(Artist) AS count
|
||||
FROM Beatmap
|
||||
WHERE Artist LIKE ? OR Title LIKE ?
|
||||
GROUP BY Artist
|
||||
LIMIT ? OFFSET ?
|
||||
`
|
||||
|
||||
type GetArtistsParams struct {
|
||||
Artist sql.NullString `json:"artist"`
|
||||
Title sql.NullString `json:"title"`
|
||||
Limit int64 `json:"limit"`
|
||||
Offset int64 `json:"offset"`
|
||||
}
|
||||
|
||||
type GetArtistsRow struct {
|
||||
Artist sql.NullString `json:"artist"`
|
||||
Count int64 `json:"count"`
|
||||
}
|
||||
|
||||
func (q *Queries) GetArtists(ctx context.Context, arg GetArtistsParams) ([]GetArtistsRow, error) {
|
||||
rows, err := q.db.QueryContext(ctx, getArtists,
|
||||
arg.Artist,
|
||||
arg.Title,
|
||||
arg.Limit,
|
||||
arg.Offset,
|
||||
)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
items := []GetArtistsRow{}
|
||||
for rows.Next() {
|
||||
var i GetArtistsRow
|
||||
if err := rows.Scan(&i.Artist, &i.Count); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
items = append(items, i)
|
||||
}
|
||||
if err := rows.Close(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if err := rows.Err(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return items, nil
|
||||
}
|
||||
|
||||
const getBeatmapByHash = `-- name: GetBeatmapByHash :one
|
||||
SELECT beatmapid, artist, artistunicode, title, titleunicode, creator, difficulty, audio, md5hash, file, rankedstatus, lastmodifiedtime, totaltime, audiopreviewtime, beatmapsetid, source, tags, lastplayed, folder FROM Beatmap WHERE MD5Hash = ?
|
||||
`
|
||||
|
||||
func (q *Queries) GetBeatmapByHash(ctx context.Context, md5hash sql.NullString) (Beatmap, error) {
|
||||
row := q.db.QueryRowContext(ctx, getBeatmapByHash, md5hash)
|
||||
var i Beatmap
|
||||
err := row.Scan(
|
||||
&i.Beatmapid,
|
||||
&i.Artist,
|
||||
&i.Artistunicode,
|
||||
&i.Title,
|
||||
&i.Titleunicode,
|
||||
&i.Creator,
|
||||
&i.Difficulty,
|
||||
&i.Audio,
|
||||
&i.Md5hash,
|
||||
&i.File,
|
||||
&i.Rankedstatus,
|
||||
&i.Lastmodifiedtime,
|
||||
&i.Totaltime,
|
||||
&i.Audiopreviewtime,
|
||||
&i.Beatmapsetid,
|
||||
&i.Source,
|
||||
&i.Tags,
|
||||
&i.Lastplayed,
|
||||
&i.Folder,
|
||||
)
|
||||
return i, err
|
||||
}
|
||||
|
||||
const getBeatmapCount = `-- name: GetBeatmapCount :one
|
||||
SELECT COUNT(*) FROM Beatmap
|
||||
`
|
||||
|
||||
func (q *Queries) GetBeatmapCount(ctx context.Context) (int64, error) {
|
||||
row := q.db.QueryRowContext(ctx, getBeatmapCount)
|
||||
var count int64
|
||||
err := row.Scan(&count)
|
||||
return count, err
|
||||
}
|
||||
|
||||
const getRecentBeatmaps = `-- name: GetRecentBeatmaps :many
|
||||
SELECT BeatmapId, MD5Hash, Title, Artist, Creator, Folder, File, Audio, TotalTime
|
||||
FROM Beatmap GROUP BY Folder ORDER BY LastModifiedTime DESC LIMIT ? OFFSET ?
|
||||
`
|
||||
|
||||
type GetRecentBeatmapsParams struct {
|
||||
Limit int64 `json:"limit"`
|
||||
Offset int64 `json:"offset"`
|
||||
}
|
||||
|
||||
type GetRecentBeatmapsRow struct {
|
||||
Beatmapid sql.NullInt64 `json:"beatmapid"`
|
||||
Md5hash sql.NullString `json:"md5hash"`
|
||||
Title sql.NullString `json:"title"`
|
||||
Artist sql.NullString `json:"artist"`
|
||||
Creator sql.NullString `json:"creator"`
|
||||
Folder sql.NullString `json:"folder"`
|
||||
File sql.NullString `json:"file"`
|
||||
Audio sql.NullString `json:"audio"`
|
||||
Totaltime sql.NullInt64 `json:"totaltime"`
|
||||
}
|
||||
|
||||
func (q *Queries) GetRecentBeatmaps(ctx context.Context, arg GetRecentBeatmapsParams) ([]GetRecentBeatmapsRow, error) {
|
||||
rows, err := q.db.QueryContext(ctx, getRecentBeatmaps, arg.Limit, arg.Offset)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
items := []GetRecentBeatmapsRow{}
|
||||
for rows.Next() {
|
||||
var i GetRecentBeatmapsRow
|
||||
if err := rows.Scan(
|
||||
&i.Beatmapid,
|
||||
&i.Md5hash,
|
||||
&i.Title,
|
||||
&i.Artist,
|
||||
&i.Creator,
|
||||
&i.Folder,
|
||||
&i.File,
|
||||
&i.Audio,
|
||||
&i.Totaltime,
|
||||
); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
items = append(items, i)
|
||||
}
|
||||
if err := rows.Close(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if err := rows.Err(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return items, nil
|
||||
}
|
||||
|
||||
const insertBeatmap = `-- name: InsertBeatmap :exec
|
||||
INSERT INTO Beatmap (
|
||||
BeatmapId, Artist, ArtistUnicode, Title, TitleUnicode, Creator,
|
||||
Difficulty, Audio, MD5Hash, File, RankedStatus,
|
||||
LastModifiedTime, TotalTime, AudioPreviewTime, BeatmapSetId,
|
||||
Source, Tags, LastPlayed, Folder
|
||||
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
||||
`
|
||||
|
||||
type InsertBeatmapParams struct {
|
||||
Beatmapid sql.NullInt64 `json:"beatmapid"`
|
||||
Artist sql.NullString `json:"artist"`
|
||||
Artistunicode sql.NullString `json:"artistunicode"`
|
||||
Title sql.NullString `json:"title"`
|
||||
Titleunicode sql.NullString `json:"titleunicode"`
|
||||
Creator sql.NullString `json:"creator"`
|
||||
Difficulty sql.NullString `json:"difficulty"`
|
||||
Audio sql.NullString `json:"audio"`
|
||||
Md5hash sql.NullString `json:"md5hash"`
|
||||
File sql.NullString `json:"file"`
|
||||
Rankedstatus sql.NullString `json:"rankedstatus"`
|
||||
Lastmodifiedtime sql.NullTime `json:"lastmodifiedtime"`
|
||||
Totaltime sql.NullInt64 `json:"totaltime"`
|
||||
Audiopreviewtime sql.NullInt64 `json:"audiopreviewtime"`
|
||||
Beatmapsetid sql.NullInt64 `json:"beatmapsetid"`
|
||||
Source sql.NullString `json:"source"`
|
||||
Tags sql.NullString `json:"tags"`
|
||||
Lastplayed sql.NullTime `json:"lastplayed"`
|
||||
Folder sql.NullString `json:"folder"`
|
||||
}
|
||||
|
||||
func (q *Queries) InsertBeatmap(ctx context.Context, arg InsertBeatmapParams) error {
|
||||
_, err := q.db.ExecContext(ctx, insertBeatmap,
|
||||
arg.Beatmapid,
|
||||
arg.Artist,
|
||||
arg.Artistunicode,
|
||||
arg.Title,
|
||||
arg.Titleunicode,
|
||||
arg.Creator,
|
||||
arg.Difficulty,
|
||||
arg.Audio,
|
||||
arg.Md5hash,
|
||||
arg.File,
|
||||
arg.Rankedstatus,
|
||||
arg.Lastmodifiedtime,
|
||||
arg.Totaltime,
|
||||
arg.Audiopreviewtime,
|
||||
arg.Beatmapsetid,
|
||||
arg.Source,
|
||||
arg.Tags,
|
||||
arg.Lastplayed,
|
||||
arg.Folder,
|
||||
)
|
||||
return err
|
||||
}
|
||||
|
||||
const searchBeatmaps = `-- name: SearchBeatmaps :many
|
||||
SELECT BeatmapId, MD5Hash, Title, Artist, Creator, Folder, File, Audio, TotalTime
|
||||
FROM Beatmap
|
||||
WHERE Title LIKE ? OR Artist LIKE ?
|
||||
LIMIT ? OFFSET ?
|
||||
`
|
||||
|
||||
type SearchBeatmapsParams struct {
|
||||
Title sql.NullString `json:"title"`
|
||||
Artist sql.NullString `json:"artist"`
|
||||
Limit int64 `json:"limit"`
|
||||
Offset int64 `json:"offset"`
|
||||
}
|
||||
|
||||
type SearchBeatmapsRow struct {
|
||||
Beatmapid sql.NullInt64 `json:"beatmapid"`
|
||||
Md5hash sql.NullString `json:"md5hash"`
|
||||
Title sql.NullString `json:"title"`
|
||||
Artist sql.NullString `json:"artist"`
|
||||
Creator sql.NullString `json:"creator"`
|
||||
Folder sql.NullString `json:"folder"`
|
||||
File sql.NullString `json:"file"`
|
||||
Audio sql.NullString `json:"audio"`
|
||||
Totaltime sql.NullInt64 `json:"totaltime"`
|
||||
}
|
||||
|
||||
func (q *Queries) SearchBeatmaps(ctx context.Context, arg SearchBeatmapsParams) ([]SearchBeatmapsRow, error) {
|
||||
rows, err := q.db.QueryContext(ctx, searchBeatmaps,
|
||||
arg.Title,
|
||||
arg.Artist,
|
||||
arg.Limit,
|
||||
arg.Offset,
|
||||
)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
items := []SearchBeatmapsRow{}
|
||||
for rows.Next() {
|
||||
var i SearchBeatmapsRow
|
||||
if err := rows.Scan(
|
||||
&i.Beatmapid,
|
||||
&i.Md5hash,
|
||||
&i.Title,
|
||||
&i.Artist,
|
||||
&i.Creator,
|
||||
&i.Folder,
|
||||
&i.File,
|
||||
&i.Audio,
|
||||
&i.Totaltime,
|
||||
); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
items = append(items, i)
|
||||
}
|
||||
if err := rows.Close(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if err := rows.Err(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return items, nil
|
||||
}
|
||||
Reference in New Issue
Block a user