Files
workspace/code/allapp/allapp-go2/db/repo/space.sql.go
T
2026-02-25 17:31:09 +08:00

109 lines
2.4 KiB
Go

// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.30.0
// source: space.sql
package repo
import (
"context"
"github.com/jackc/pgx/v5/pgtype"
)
const deleteSpace = `-- name: DeleteSpace :exec
DELETE FROM space WHERE id = $1
`
// 删除分享空间
func (q *Queries) DeleteSpace(ctx context.Context, id int64) error {
_, err := q.db.Exec(ctx, deleteSpace, id)
return err
}
const findSpaceByInviteCode = `-- name: FindSpaceByInviteCode :one
SELECT id, name, invite_code, create_time, update_time FROM space WHERE invite_code = $1
`
// 根据邀请码查询空间
func (q *Queries) FindSpaceByInviteCode(ctx context.Context, inviteCode string) (Space, error) {
row := q.db.QueryRow(ctx, findSpaceByInviteCode, inviteCode)
var i Space
err := row.Scan(
&i.ID,
&i.Name,
&i.InviteCode,
&i.CreateTime,
&i.UpdateTime,
)
return i, err
}
const getSpaceById = `-- name: GetSpaceById :one
SELECT id, name, invite_code, create_time, update_time FROM space WHERE id = $1
`
// 根据id获取分享空间信息
func (q *Queries) GetSpaceById(ctx context.Context, id int64) (Space, error) {
row := q.db.QueryRow(ctx, getSpaceById, id)
var i Space
err := row.Scan(
&i.ID,
&i.Name,
&i.InviteCode,
&i.CreateTime,
&i.UpdateTime,
)
return i, err
}
const getSpaceByUserId = `-- name: GetSpaceByUserId :one
SELECT s.id, s.name, s.invite_code, s.create_time, s.update_time, m.role
FROM space s
JOIN space_member m
ON s.id = m.space_id
WHERE m.user_id = $1
`
type GetSpaceByUserIdRow struct {
ID int64
Name pgtype.Text
InviteCode string
CreateTime pgtype.Timestamp
UpdateTime pgtype.Timestamp
Role int32
}
// 查询用户所在的空间信息
func (q *Queries) GetSpaceByUserId(ctx context.Context, userID int64) (GetSpaceByUserIdRow, error) {
row := q.db.QueryRow(ctx, getSpaceByUserId, userID)
var i GetSpaceByUserIdRow
err := row.Scan(
&i.ID,
&i.Name,
&i.InviteCode,
&i.CreateTime,
&i.UpdateTime,
&i.Role,
)
return i, err
}
const insertSpace = `-- name: InsertSpace :exec
INSERT INTO space (
id,name,invite_code,create_time,update_time
) VALUES ($1,$2,$3,NOW(),NOW())
`
type InsertSpaceParams struct {
ID int64
Name pgtype.Text
InviteCode string
}
// 新增分享空间
func (q *Queries) InsertSpace(ctx context.Context, arg InsertSpaceParams) error {
_, err := q.db.Exec(ctx, insertSpace, arg.ID, arg.Name, arg.InviteCode)
return err
}