338 lines
7.2 KiB
Go
338 lines
7.2 KiB
Go
// Code generated by sqlc. DO NOT EDIT.
|
|
// versions:
|
|
// sqlc v1.24.0
|
|
// source: video.sql
|
|
|
|
package db
|
|
|
|
import (
|
|
"context"
|
|
"time"
|
|
)
|
|
|
|
const createVideo = `-- name: CreateVideo :one
|
|
INSERT INTO videos (
|
|
id, title, description, images, origin_link, play_link, user_id, create_by
|
|
) VALUES (
|
|
$1, $2, $3, $4, $5, $6, $7, $8
|
|
)
|
|
RETURNING id, title, description, images, origin_link, play_link, status, is_deleted, user_id, create_at, create_by, update_at, update_by
|
|
`
|
|
|
|
type CreateVideoParams struct {
|
|
ID string `json:"id"`
|
|
Title string `json:"title"`
|
|
Description string `json:"description"`
|
|
Images string `json:"images"`
|
|
OriginLink string `json:"origin_link"`
|
|
PlayLink string `json:"play_link"`
|
|
UserID string `json:"user_id"`
|
|
CreateBy string `json:"create_by"`
|
|
}
|
|
|
|
func (q *Queries) CreateVideo(ctx context.Context, arg CreateVideoParams) (Video, error) {
|
|
row := q.db.QueryRowContext(ctx, createVideo,
|
|
arg.ID,
|
|
arg.Title,
|
|
arg.Description,
|
|
arg.Images,
|
|
arg.OriginLink,
|
|
arg.PlayLink,
|
|
arg.UserID,
|
|
arg.CreateBy,
|
|
)
|
|
var i Video
|
|
err := row.Scan(
|
|
&i.ID,
|
|
&i.Title,
|
|
&i.Description,
|
|
&i.Images,
|
|
&i.OriginLink,
|
|
&i.PlayLink,
|
|
&i.Status,
|
|
&i.IsDeleted,
|
|
&i.UserID,
|
|
&i.CreateAt,
|
|
&i.CreateBy,
|
|
&i.UpdateAt,
|
|
&i.UpdateBy,
|
|
)
|
|
return i, err
|
|
}
|
|
|
|
const deleteVideo = `-- name: DeleteVideo :exec
|
|
UPDATE videos
|
|
SET is_deleted = TRUE
|
|
WHERE id = $1
|
|
`
|
|
|
|
func (q *Queries) DeleteVideo(ctx context.Context, id string) error {
|
|
_, err := q.db.ExecContext(ctx, deleteVideo, id)
|
|
return err
|
|
}
|
|
|
|
const getVideo = `-- name: GetVideo :one
|
|
SELECT id, title, description, images, origin_link, play_link, status, is_deleted, user_id, create_at, create_by, update_at, update_by FROM videos
|
|
WHERE id = $1 LIMIT 1
|
|
`
|
|
|
|
func (q *Queries) GetVideo(ctx context.Context, id string) (Video, error) {
|
|
row := q.db.QueryRowContext(ctx, getVideo, id)
|
|
var i Video
|
|
err := row.Scan(
|
|
&i.ID,
|
|
&i.Title,
|
|
&i.Description,
|
|
&i.Images,
|
|
&i.OriginLink,
|
|
&i.PlayLink,
|
|
&i.Status,
|
|
&i.IsDeleted,
|
|
&i.UserID,
|
|
&i.CreateAt,
|
|
&i.CreateBy,
|
|
&i.UpdateAt,
|
|
&i.UpdateBy,
|
|
)
|
|
return i, err
|
|
}
|
|
|
|
const listVideos = `-- name: ListVideos :many
|
|
SELECT id, title, description, images, origin_link, play_link, status, is_deleted, user_id, create_at, create_by, update_at, update_by FROM videos
|
|
WHERE is_deleted = FALSE AND status=200
|
|
ORDER BY id DESC
|
|
LIMIT $1
|
|
OFFSET $2
|
|
`
|
|
|
|
type ListVideosParams struct {
|
|
Limit int32 `json:"limit"`
|
|
Offset int32 `json:"offset"`
|
|
}
|
|
|
|
func (q *Queries) ListVideos(ctx context.Context, arg ListVideosParams) ([]Video, error) {
|
|
rows, err := q.db.QueryContext(ctx, listVideos, arg.Limit, arg.Offset)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
defer rows.Close()
|
|
items := []Video{}
|
|
for rows.Next() {
|
|
var i Video
|
|
if err := rows.Scan(
|
|
&i.ID,
|
|
&i.Title,
|
|
&i.Description,
|
|
&i.Images,
|
|
&i.OriginLink,
|
|
&i.PlayLink,
|
|
&i.Status,
|
|
&i.IsDeleted,
|
|
&i.UserID,
|
|
&i.CreateAt,
|
|
&i.CreateBy,
|
|
&i.UpdateAt,
|
|
&i.UpdateBy,
|
|
); 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 listVideosByUser = `-- name: ListVideosByUser :many
|
|
SELECT id, title, description, images, origin_link, play_link, status, is_deleted, user_id, create_at, create_by, update_at, update_by FROM videos
|
|
WHERE is_deleted = FALSE AND user_id = $1
|
|
ORDER BY id DESC
|
|
LIMIT $2
|
|
OFFSET $3
|
|
`
|
|
|
|
type ListVideosByUserParams struct {
|
|
UserID string `json:"user_id"`
|
|
Limit int32 `json:"limit"`
|
|
Offset int32 `json:"offset"`
|
|
}
|
|
|
|
func (q *Queries) ListVideosByUser(ctx context.Context, arg ListVideosByUserParams) ([]Video, error) {
|
|
rows, err := q.db.QueryContext(ctx, listVideosByUser, arg.UserID, arg.Limit, arg.Offset)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
defer rows.Close()
|
|
items := []Video{}
|
|
for rows.Next() {
|
|
var i Video
|
|
if err := rows.Scan(
|
|
&i.ID,
|
|
&i.Title,
|
|
&i.Description,
|
|
&i.Images,
|
|
&i.OriginLink,
|
|
&i.PlayLink,
|
|
&i.Status,
|
|
&i.IsDeleted,
|
|
&i.UserID,
|
|
&i.CreateAt,
|
|
&i.CreateBy,
|
|
&i.UpdateAt,
|
|
&i.UpdateBy,
|
|
); 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 setVideoPlay = `-- name: SetVideoPlay :one
|
|
UPDATE videos
|
|
SET status = $2,
|
|
play_link = $3,
|
|
update_at = $4,
|
|
update_by = $5
|
|
WHERE id = $1
|
|
RETURNING id, title, description, images, origin_link, play_link, status, is_deleted, user_id, create_at, create_by, update_at, update_by
|
|
`
|
|
|
|
type SetVideoPlayParams struct {
|
|
ID string `json:"id"`
|
|
Status int32 `json:"status"`
|
|
PlayLink string `json:"play_link"`
|
|
UpdateAt time.Time `json:"update_at"`
|
|
UpdateBy string `json:"update_by"`
|
|
}
|
|
|
|
func (q *Queries) SetVideoPlay(ctx context.Context, arg SetVideoPlayParams) (Video, error) {
|
|
row := q.db.QueryRowContext(ctx, setVideoPlay,
|
|
arg.ID,
|
|
arg.Status,
|
|
arg.PlayLink,
|
|
arg.UpdateAt,
|
|
arg.UpdateBy,
|
|
)
|
|
var i Video
|
|
err := row.Scan(
|
|
&i.ID,
|
|
&i.Title,
|
|
&i.Description,
|
|
&i.Images,
|
|
&i.OriginLink,
|
|
&i.PlayLink,
|
|
&i.Status,
|
|
&i.IsDeleted,
|
|
&i.UserID,
|
|
&i.CreateAt,
|
|
&i.CreateBy,
|
|
&i.UpdateAt,
|
|
&i.UpdateBy,
|
|
)
|
|
return i, err
|
|
}
|
|
|
|
const updateVideo = `-- name: UpdateVideo :one
|
|
UPDATE videos
|
|
SET title = $2,
|
|
description = $3,
|
|
images = $4,
|
|
status = $5,
|
|
update_at = $6,
|
|
update_by = $7
|
|
WHERE id = $1
|
|
RETURNING id, title, description, images, origin_link, play_link, status, is_deleted, user_id, create_at, create_by, update_at, update_by
|
|
`
|
|
|
|
type UpdateVideoParams struct {
|
|
ID string `json:"id"`
|
|
Title string `json:"title"`
|
|
Description string `json:"description"`
|
|
Images string `json:"images"`
|
|
Status int32 `json:"status"`
|
|
UpdateAt time.Time `json:"update_at"`
|
|
UpdateBy string `json:"update_by"`
|
|
}
|
|
|
|
func (q *Queries) UpdateVideo(ctx context.Context, arg UpdateVideoParams) (Video, error) {
|
|
row := q.db.QueryRowContext(ctx, updateVideo,
|
|
arg.ID,
|
|
arg.Title,
|
|
arg.Description,
|
|
arg.Images,
|
|
arg.Status,
|
|
arg.UpdateAt,
|
|
arg.UpdateBy,
|
|
)
|
|
var i Video
|
|
err := row.Scan(
|
|
&i.ID,
|
|
&i.Title,
|
|
&i.Description,
|
|
&i.Images,
|
|
&i.OriginLink,
|
|
&i.PlayLink,
|
|
&i.Status,
|
|
&i.IsDeleted,
|
|
&i.UserID,
|
|
&i.CreateAt,
|
|
&i.CreateBy,
|
|
&i.UpdateAt,
|
|
&i.UpdateBy,
|
|
)
|
|
return i, err
|
|
}
|
|
|
|
const updateVideoStatus = `-- name: UpdateVideoStatus :one
|
|
UPDATE videos
|
|
SET status = $2,
|
|
update_at = $3,
|
|
update_by = $4
|
|
WHERE id = $1
|
|
RETURNING id, title, description, images, origin_link, play_link, status, is_deleted, user_id, create_at, create_by, update_at, update_by
|
|
`
|
|
|
|
type UpdateVideoStatusParams struct {
|
|
ID string `json:"id"`
|
|
Status int32 `json:"status"`
|
|
UpdateAt time.Time `json:"update_at"`
|
|
UpdateBy string `json:"update_by"`
|
|
}
|
|
|
|
func (q *Queries) UpdateVideoStatus(ctx context.Context, arg UpdateVideoStatusParams) (Video, error) {
|
|
row := q.db.QueryRowContext(ctx, updateVideoStatus,
|
|
arg.ID,
|
|
arg.Status,
|
|
arg.UpdateAt,
|
|
arg.UpdateBy,
|
|
)
|
|
var i Video
|
|
err := row.Scan(
|
|
&i.ID,
|
|
&i.Title,
|
|
&i.Description,
|
|
&i.Images,
|
|
&i.OriginLink,
|
|
&i.PlayLink,
|
|
&i.Status,
|
|
&i.IsDeleted,
|
|
&i.UserID,
|
|
&i.CreateAt,
|
|
&i.CreateBy,
|
|
&i.UpdateAt,
|
|
&i.UpdateBy,
|
|
)
|
|
return i, err
|
|
}
|