| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194 |
- // Code generated by sqlc. DO NOT EDIT.
- // versions:
- // sqlc v1.29.0
- // source: sessions.sql
- package db
- import (
- "context"
- "database/sql"
- )
- const createSession = `-- name: CreateSession :one
- INSERT INTO sessions (
- id,
- parent_session_id,
- title,
- message_count,
- prompt_tokens,
- completion_tokens,
- cost,
- summary_message_id,
- updated_at,
- created_at
- ) VALUES (
- ?,
- ?,
- ?,
- ?,
- ?,
- ?,
- ?,
- null,
- strftime('%s', 'now'),
- strftime('%s', 'now')
- ) RETURNING id, parent_session_id, title, message_count, prompt_tokens, completion_tokens, cost, updated_at, created_at, summary_message_id
- `
- type CreateSessionParams struct {
- ID string `json:"id"`
- ParentSessionID sql.NullString `json:"parent_session_id"`
- Title string `json:"title"`
- MessageCount int64 `json:"message_count"`
- PromptTokens int64 `json:"prompt_tokens"`
- CompletionTokens int64 `json:"completion_tokens"`
- Cost float64 `json:"cost"`
- }
- func (q *Queries) CreateSession(ctx context.Context, arg CreateSessionParams) (Session, error) {
- row := q.queryRow(ctx, q.createSessionStmt, createSession,
- arg.ID,
- arg.ParentSessionID,
- arg.Title,
- arg.MessageCount,
- arg.PromptTokens,
- arg.CompletionTokens,
- arg.Cost,
- )
- var i Session
- err := row.Scan(
- &i.ID,
- &i.ParentSessionID,
- &i.Title,
- &i.MessageCount,
- &i.PromptTokens,
- &i.CompletionTokens,
- &i.Cost,
- &i.UpdatedAt,
- &i.CreatedAt,
- &i.SummaryMessageID,
- )
- return i, err
- }
- const deleteSession = `-- name: DeleteSession :exec
- DELETE FROM sessions
- WHERE id = ?
- `
- func (q *Queries) DeleteSession(ctx context.Context, id string) error {
- _, err := q.exec(ctx, q.deleteSessionStmt, deleteSession, id)
- return err
- }
- const getSessionByID = `-- name: GetSessionByID :one
- SELECT id, parent_session_id, title, message_count, prompt_tokens, completion_tokens, cost, updated_at, created_at, summary_message_id
- FROM sessions
- WHERE id = ? LIMIT 1
- `
- func (q *Queries) GetSessionByID(ctx context.Context, id string) (Session, error) {
- row := q.queryRow(ctx, q.getSessionByIDStmt, getSessionByID, id)
- var i Session
- err := row.Scan(
- &i.ID,
- &i.ParentSessionID,
- &i.Title,
- &i.MessageCount,
- &i.PromptTokens,
- &i.CompletionTokens,
- &i.Cost,
- &i.UpdatedAt,
- &i.CreatedAt,
- &i.SummaryMessageID,
- )
- return i, err
- }
- const listSessions = `-- name: ListSessions :many
- SELECT id, parent_session_id, title, message_count, prompt_tokens, completion_tokens, cost, updated_at, created_at, summary_message_id
- FROM sessions
- WHERE parent_session_id is NULL
- ORDER BY created_at DESC
- `
- func (q *Queries) ListSessions(ctx context.Context) ([]Session, error) {
- rows, err := q.query(ctx, q.listSessionsStmt, listSessions)
- if err != nil {
- return nil, err
- }
- defer rows.Close()
- items := []Session{}
- for rows.Next() {
- var i Session
- if err := rows.Scan(
- &i.ID,
- &i.ParentSessionID,
- &i.Title,
- &i.MessageCount,
- &i.PromptTokens,
- &i.CompletionTokens,
- &i.Cost,
- &i.UpdatedAt,
- &i.CreatedAt,
- &i.SummaryMessageID,
- ); 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 updateSession = `-- name: UpdateSession :one
- UPDATE sessions
- SET
- title = ?,
- prompt_tokens = ?,
- completion_tokens = ?,
- summary_message_id = ?,
- cost = ?
- WHERE id = ?
- RETURNING id, parent_session_id, title, message_count, prompt_tokens, completion_tokens, cost, updated_at, created_at, summary_message_id
- `
- type UpdateSessionParams struct {
- Title string `json:"title"`
- PromptTokens int64 `json:"prompt_tokens"`
- CompletionTokens int64 `json:"completion_tokens"`
- SummaryMessageID sql.NullString `json:"summary_message_id"`
- Cost float64 `json:"cost"`
- ID string `json:"id"`
- }
- func (q *Queries) UpdateSession(ctx context.Context, arg UpdateSessionParams) (Session, error) {
- row := q.queryRow(ctx, q.updateSessionStmt, updateSession,
- arg.Title,
- arg.PromptTokens,
- arg.CompletionTokens,
- arg.SummaryMessageID,
- arg.Cost,
- arg.ID,
- )
- var i Session
- err := row.Scan(
- &i.ID,
- &i.ParentSessionID,
- &i.Title,
- &i.MessageCount,
- &i.PromptTokens,
- &i.CompletionTokens,
- &i.Cost,
- &i.UpdatedAt,
- &i.CreatedAt,
- &i.SummaryMessageID,
- )
- return i, err
- }
|