// Code generated by sqlc. DO NOT EDIT. // versions: // sqlc v1.31.1 // source: audit_log.sql package dbq import ( "context" "github.com/jackc/pgx/v5/pgtype" ) const countAuditLogByActions = `-- name: CountAuditLogByActions :one SELECT count(*)::bigint FROM audit_log WHERE action = ANY($1::text[]) AND (NOT $2::boolean OR actor_id IS NULL) ` type CountAuditLogByActionsParams struct { Actions []string SystemOnly bool } // System actions carry no actor; system_only narrows to them. func (q *Queries) CountAuditLogByActions(ctx context.Context, arg CountAuditLogByActionsParams) (int64, error) { row := q.db.QueryRow(ctx, countAuditLogByActions, arg.Actions, arg.SystemOnly) var column_1 int64 err := row.Scan(&column_1) return column_1, err } const listAuditLog = `-- name: ListAuditLog :many SELECT id, actor_id, target_id, action, metadata, created_at FROM audit_log ORDER BY created_at DESC LIMIT $1 OFFSET $2 ` type ListAuditLogParams struct { Limit int32 Offset int32 } func (q *Queries) ListAuditLog(ctx context.Context, arg ListAuditLogParams) ([]AuditLog, error) { rows, err := q.db.Query(ctx, listAuditLog, arg.Limit, arg.Offset) if err != nil { return nil, err } defer rows.Close() var items []AuditLog for rows.Next() { var i AuditLog if err := rows.Scan( &i.ID, &i.ActorID, &i.TargetID, &i.Action, &i.Metadata, &i.CreatedAt, ); err != nil { return nil, err } items = append(items, i) } if err := rows.Err(); err != nil { return nil, err } return items, nil } const listAuditLogByActions = `-- name: ListAuditLogByActions :many SELECT id, actor_id, target_id, action, metadata, created_at FROM audit_log WHERE action = ANY($1::text[]) AND (NOT $2::boolean OR actor_id IS NULL) ORDER BY created_at DESC, id LIMIT $4 OFFSET $3 ` type ListAuditLogByActionsParams struct { Actions []string SystemOnly bool PageOffset int32 PageLimit int32 } // One page of the given actions, newest first: the duplicates report's // "resolved automatically" activity (M498) reads the resolver's merges and // Lidarr release changes from here. func (q *Queries) ListAuditLogByActions(ctx context.Context, arg ListAuditLogByActionsParams) ([]AuditLog, error) { rows, err := q.db.Query(ctx, listAuditLogByActions, arg.Actions, arg.SystemOnly, arg.PageOffset, arg.PageLimit, ) if err != nil { return nil, err } defer rows.Close() var items []AuditLog for rows.Next() { var i AuditLog if err := rows.Scan( &i.ID, &i.ActorID, &i.TargetID, &i.Action, &i.Metadata, &i.CreatedAt, ); err != nil { return nil, err } items = append(items, i) } if err := rows.Err(); err != nil { return nil, err } return items, nil } const writeAuditLog = `-- name: WriteAuditLog :exec INSERT INTO audit_log (actor_id, target_id, action, metadata) VALUES ($1, $2, $3, $4) ` type WriteAuditLogParams struct { ActorID pgtype.UUID TargetID pgtype.UUID Action string Metadata []byte } func (q *Queries) WriteAuditLog(ctx context.Context, arg WriteAuditLogParams) error { _, err := q.db.Exec(ctx, writeAuditLog, arg.ActorID, arg.TargetID, arg.Action, arg.Metadata, ) return err }