2026-02-19 10:21:27 +00:00
|
|
|
// Code generated by sqlc. DO NOT EDIT.
|
|
|
|
|
// versions:
|
2026-02-20 06:39:58 +00:00
|
|
|
// sqlc v1.30.0
|
2026-02-19 10:21:27 +00:00
|
|
|
// source: posts.sql
|
|
|
|
|
|
2026-02-19 11:29:44 +00:00
|
|
|
package sqlgen
|
2026-02-19 10:21:27 +00:00
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"context"
|
|
|
|
|
)
|
|
|
|
|
|
2026-02-23 10:18:34 +00:00
|
|
|
const hardDeletePost = `-- name: HardDeletePost :exec
|
|
|
|
|
DELETE FROM posts WHERE id = ?
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
func (q *Queries) HardDeletePost(ctx context.Context, id int64) error {
|
|
|
|
|
_, err := q.db.ExecContext(ctx, hardDeletePost, id)
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
|
2026-02-19 10:21:27 +00:00
|
|
|
const insertPost = `-- name: InsertPost :one
|
|
|
|
|
INSERT INTO posts (
|
|
|
|
|
site_id,
|
2026-02-23 10:18:34 +00:00
|
|
|
state,
|
2026-02-19 10:21:27 +00:00
|
|
|
guid,
|
|
|
|
|
title,
|
|
|
|
|
body,
|
|
|
|
|
slug,
|
|
|
|
|
created_at,
|
2026-02-23 10:18:34 +00:00
|
|
|
updated_at,
|
|
|
|
|
published_at,
|
|
|
|
|
deleted_at
|
|
|
|
|
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
2026-02-19 10:21:27 +00:00
|
|
|
RETURNING id
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
type InsertPostParams struct {
|
|
|
|
|
SiteID int64
|
2026-02-23 10:18:34 +00:00
|
|
|
State int64
|
2026-02-19 10:21:27 +00:00
|
|
|
Guid string
|
|
|
|
|
Title string
|
|
|
|
|
Body string
|
|
|
|
|
Slug string
|
|
|
|
|
CreatedAt int64
|
2026-02-23 10:18:34 +00:00
|
|
|
UpdatedAt int64
|
2026-02-19 10:21:27 +00:00
|
|
|
PublishedAt int64
|
2026-02-23 10:18:34 +00:00
|
|
|
DeletedAt int64
|
2026-02-19 10:21:27 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (q *Queries) InsertPost(ctx context.Context, arg InsertPostParams) (int64, error) {
|
|
|
|
|
row := q.db.QueryRowContext(ctx, insertPost,
|
|
|
|
|
arg.SiteID,
|
2026-02-23 10:18:34 +00:00
|
|
|
arg.State,
|
2026-02-19 10:21:27 +00:00
|
|
|
arg.Guid,
|
|
|
|
|
arg.Title,
|
|
|
|
|
arg.Body,
|
|
|
|
|
arg.Slug,
|
|
|
|
|
arg.CreatedAt,
|
2026-02-23 10:18:34 +00:00
|
|
|
arg.UpdatedAt,
|
2026-02-19 10:21:27 +00:00
|
|
|
arg.PublishedAt,
|
2026-02-23 10:18:34 +00:00
|
|
|
arg.DeletedAt,
|
2026-02-19 10:21:27 +00:00
|
|
|
)
|
|
|
|
|
var id int64
|
|
|
|
|
err := row.Scan(&id)
|
|
|
|
|
return id, err
|
|
|
|
|
}
|
|
|
|
|
|
2026-02-23 10:18:34 +00:00
|
|
|
const restorePost = `-- name: RestorePost :exec
|
|
|
|
|
UPDATE posts SET deleted_at = 0 WHERE id = ?
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
func (q *Queries) RestorePost(ctx context.Context, id int64) error {
|
|
|
|
|
_, err := q.db.ExecContext(ctx, restorePost, id)
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
|
2026-02-21 23:09:34 +00:00
|
|
|
const selectPost = `-- name: SelectPost :one
|
2026-02-23 10:18:34 +00:00
|
|
|
SELECT id, site_id, state, guid, title, body, slug, created_at, updated_at, published_at, deleted_at FROM posts WHERE id = ? LIMIT 1
|
2026-02-21 23:09:34 +00:00
|
|
|
`
|
|
|
|
|
|
|
|
|
|
func (q *Queries) SelectPost(ctx context.Context, id int64) (Post, error) {
|
|
|
|
|
row := q.db.QueryRowContext(ctx, selectPost, id)
|
|
|
|
|
var i Post
|
|
|
|
|
err := row.Scan(
|
|
|
|
|
&i.ID,
|
|
|
|
|
&i.SiteID,
|
2026-02-23 10:18:34 +00:00
|
|
|
&i.State,
|
2026-02-21 23:09:34 +00:00
|
|
|
&i.Guid,
|
|
|
|
|
&i.Title,
|
|
|
|
|
&i.Body,
|
|
|
|
|
&i.Slug,
|
|
|
|
|
&i.CreatedAt,
|
2026-02-23 10:18:34 +00:00
|
|
|
&i.UpdatedAt,
|
2026-02-21 23:09:34 +00:00
|
|
|
&i.PublishedAt,
|
2026-02-23 10:18:34 +00:00
|
|
|
&i.DeletedAt,
|
2026-02-21 23:09:34 +00:00
|
|
|
)
|
|
|
|
|
return i, err
|
|
|
|
|
}
|
|
|
|
|
|
2026-02-20 23:22:10 +00:00
|
|
|
const selectPostByGUID = `-- name: SelectPostByGUID :one
|
2026-02-23 10:18:34 +00:00
|
|
|
SELECT id, site_id, state, guid, title, body, slug, created_at, updated_at, published_at, deleted_at FROM posts WHERE guid = ? LIMIT 1
|
2026-02-20 23:22:10 +00:00
|
|
|
`
|
|
|
|
|
|
|
|
|
|
func (q *Queries) SelectPostByGUID(ctx context.Context, guid string) (Post, error) {
|
|
|
|
|
row := q.db.QueryRowContext(ctx, selectPostByGUID, guid)
|
|
|
|
|
var i Post
|
|
|
|
|
err := row.Scan(
|
|
|
|
|
&i.ID,
|
|
|
|
|
&i.SiteID,
|
2026-02-23 10:18:34 +00:00
|
|
|
&i.State,
|
2026-02-20 23:22:10 +00:00
|
|
|
&i.Guid,
|
|
|
|
|
&i.Title,
|
|
|
|
|
&i.Body,
|
|
|
|
|
&i.Slug,
|
|
|
|
|
&i.CreatedAt,
|
2026-02-23 10:18:34 +00:00
|
|
|
&i.UpdatedAt,
|
2026-02-20 23:22:10 +00:00
|
|
|
&i.PublishedAt,
|
2026-02-23 10:18:34 +00:00
|
|
|
&i.DeletedAt,
|
2026-02-20 23:22:10 +00:00
|
|
|
)
|
|
|
|
|
return i, err
|
|
|
|
|
}
|
|
|
|
|
|
2026-02-19 10:21:27 +00:00
|
|
|
const selectPostsOfSite = `-- name: SelectPostsOfSite :many
|
2026-02-23 10:18:34 +00:00
|
|
|
SELECT id, site_id, state, guid, title, body, slug, created_at, updated_at, published_at, deleted_at
|
|
|
|
|
FROM posts
|
|
|
|
|
WHERE site_id = ? AND (
|
|
|
|
|
CASE CAST (?2 AS TEXT)
|
|
|
|
|
WHEN 'deleted' THEN deleted_at > 0
|
|
|
|
|
ELSE deleted_at = 0
|
|
|
|
|
END
|
|
|
|
|
) ORDER BY created_at DESC LIMIT 10
|
2026-02-19 10:21:27 +00:00
|
|
|
`
|
|
|
|
|
|
2026-02-23 10:18:34 +00:00
|
|
|
type SelectPostsOfSiteParams struct {
|
|
|
|
|
SiteID int64
|
|
|
|
|
PostFilter string
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (q *Queries) SelectPostsOfSite(ctx context.Context, arg SelectPostsOfSiteParams) ([]Post, error) {
|
|
|
|
|
rows, err := q.db.QueryContext(ctx, selectPostsOfSite, arg.SiteID, arg.PostFilter)
|
2026-02-19 10:21:27 +00:00
|
|
|
if err != nil {
|
|
|
|
|
return nil, err
|
|
|
|
|
}
|
|
|
|
|
defer rows.Close()
|
|
|
|
|
var items []Post
|
|
|
|
|
for rows.Next() {
|
|
|
|
|
var i Post
|
|
|
|
|
if err := rows.Scan(
|
|
|
|
|
&i.ID,
|
|
|
|
|
&i.SiteID,
|
2026-02-23 10:18:34 +00:00
|
|
|
&i.State,
|
2026-02-19 10:21:27 +00:00
|
|
|
&i.Guid,
|
|
|
|
|
&i.Title,
|
|
|
|
|
&i.Body,
|
|
|
|
|
&i.Slug,
|
|
|
|
|
&i.CreatedAt,
|
2026-02-23 10:18:34 +00:00
|
|
|
&i.UpdatedAt,
|
2026-02-19 10:21:27 +00:00
|
|
|
&i.PublishedAt,
|
2026-02-23 10:18:34 +00:00
|
|
|
&i.DeletedAt,
|
2026-02-19 10:21:27 +00:00
|
|
|
); 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
|
|
|
|
|
}
|
2026-02-20 23:22:10 +00:00
|
|
|
|
2026-02-23 10:18:34 +00:00
|
|
|
const softDeletePost = `-- name: SoftDeletePost :exec
|
|
|
|
|
UPDATE posts SET deleted_at = ? WHERE id = ?
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
type SoftDeletePostParams struct {
|
|
|
|
|
DeletedAt int64
|
|
|
|
|
ID int64
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (q *Queries) SoftDeletePost(ctx context.Context, arg SoftDeletePostParams) error {
|
|
|
|
|
_, err := q.db.ExecContext(ctx, softDeletePost, arg.DeletedAt, arg.ID)
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
|
2026-02-20 23:22:10 +00:00
|
|
|
const updatePost = `-- name: UpdatePost :exec
|
|
|
|
|
UPDATE posts SET
|
|
|
|
|
title = ?,
|
2026-02-23 10:18:34 +00:00
|
|
|
state = ?,
|
2026-02-20 23:22:10 +00:00
|
|
|
body = ?,
|
|
|
|
|
slug = ?,
|
2026-02-23 10:18:34 +00:00
|
|
|
updated_at = ?,
|
|
|
|
|
published_at = ?,
|
|
|
|
|
deleted_at = ?
|
2026-02-20 23:22:10 +00:00
|
|
|
WHERE id = ?
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
type UpdatePostParams struct {
|
|
|
|
|
Title string
|
2026-02-23 10:18:34 +00:00
|
|
|
State int64
|
2026-02-20 23:22:10 +00:00
|
|
|
Body string
|
|
|
|
|
Slug string
|
2026-02-23 10:18:34 +00:00
|
|
|
UpdatedAt int64
|
2026-02-20 23:22:10 +00:00
|
|
|
PublishedAt int64
|
2026-02-23 10:18:34 +00:00
|
|
|
DeletedAt int64
|
2026-02-20 23:22:10 +00:00
|
|
|
ID int64
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (q *Queries) UpdatePost(ctx context.Context, arg UpdatePostParams) error {
|
|
|
|
|
_, err := q.db.ExecContext(ctx, updatePost,
|
|
|
|
|
arg.Title,
|
2026-02-23 10:18:34 +00:00
|
|
|
arg.State,
|
2026-02-20 23:22:10 +00:00
|
|
|
arg.Body,
|
|
|
|
|
arg.Slug,
|
2026-02-23 10:18:34 +00:00
|
|
|
arg.UpdatedAt,
|
2026-02-20 23:22:10 +00:00
|
|
|
arg.PublishedAt,
|
2026-02-23 10:18:34 +00:00
|
|
|
arg.DeletedAt,
|
2026-02-20 23:22:10 +00:00
|
|
|
arg.ID,
|
|
|
|
|
)
|
|
|
|
|
return err
|
|
|
|
|
}
|