Files
Memoh/internal/db/sqlc/settings.sql.go
T
2026-02-02 01:40:54 +08:00

85 lines
2.3 KiB
Go

// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.30.0
// source: settings.sql
package sqlc
import (
"context"
"github.com/jackc/pgx/v5/pgtype"
)
const deleteSettingsByUserID = `-- name: DeleteSettingsByUserID :exec
DELETE FROM user_settings
WHERE user_id = $1
`
func (q *Queries) DeleteSettingsByUserID(ctx context.Context, userID pgtype.UUID) error {
_, err := q.db.Exec(ctx, deleteSettingsByUserID, userID)
return err
}
const getSettingsByUserID = `-- name: GetSettingsByUserID :one
SELECT user_id, chat_model_id, memory_model_id, embedding_model_id, max_context_load_time, language
FROM user_settings
WHERE user_id = $1
`
func (q *Queries) GetSettingsByUserID(ctx context.Context, userID pgtype.UUID) (UserSetting, error) {
row := q.db.QueryRow(ctx, getSettingsByUserID, userID)
var i UserSetting
err := row.Scan(
&i.UserID,
&i.ChatModelID,
&i.MemoryModelID,
&i.EmbeddingModelID,
&i.MaxContextLoadTime,
&i.Language,
)
return i, err
}
const upsertSettings = `-- name: UpsertSettings :one
INSERT INTO user_settings (user_id, chat_model_id, memory_model_id, embedding_model_id, max_context_load_time, language)
VALUES ($1, $2, $3, $4, $5, $6)
ON CONFLICT (user_id) DO UPDATE SET
chat_model_id = EXCLUDED.chat_model_id,
memory_model_id = EXCLUDED.memory_model_id,
embedding_model_id = EXCLUDED.embedding_model_id,
max_context_load_time = EXCLUDED.max_context_load_time,
language = EXCLUDED.language
RETURNING user_id, chat_model_id, memory_model_id, embedding_model_id, max_context_load_time, language
`
type UpsertSettingsParams struct {
UserID pgtype.UUID `json:"user_id"`
ChatModelID pgtype.Text `json:"chat_model_id"`
MemoryModelID pgtype.Text `json:"memory_model_id"`
EmbeddingModelID pgtype.Text `json:"embedding_model_id"`
MaxContextLoadTime int32 `json:"max_context_load_time"`
Language string `json:"language"`
}
func (q *Queries) UpsertSettings(ctx context.Context, arg UpsertSettingsParams) (UserSetting, error) {
row := q.db.QueryRow(ctx, upsertSettings,
arg.UserID,
arg.ChatModelID,
arg.MemoryModelID,
arg.EmbeddingModelID,
arg.MaxContextLoadTime,
arg.Language,
)
var i UserSetting
err := row.Scan(
&i.UserID,
&i.ChatModelID,
&i.MemoryModelID,
&i.EmbeddingModelID,
&i.MaxContextLoadTime,
&i.Language,
)
return i, err
}