u
This commit is contained in:
1 parent
83cbf18572
commit
5ca04f85ca
32 files changed
+1308
-1804
No files matched your search
@@ -7,6 +7,8 @@ package repo
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/jackc/pgx/v5/pgtype"
|
||||
)
|
||||
|
||||
const deleteSpace = `-- name: DeleteSpace :exec
|
||||
@@ -56,40 +58,51 @@ func (q *Queries) GetSpaceById(ctx context.Context, id int64) (Space, error) {
|
||||
}
|
||||
|
||||
const getSpaceByUserId = `-- name: GetSpaceByUserId :one
|
||||
SELECT s.id, s.name, s.invite_code, s.create_time, s.update_time
|
||||
SELECT s.id, s.name, s.invite_code, s.create_time, s.update_time, m.role
|
||||
FROM space s
|
||||
JOIN space_user 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) (Space, error) {
|
||||
func (q *Queries) GetSpaceByUserId(ctx context.Context, userID int64) (GetSpaceByUserIdRow, error) {
|
||||
row := q.db.QueryRow(ctx, getSpaceByUserId, userID)
|
||||
var i Space
|
||||
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,invite_code,create_time,update_time
|
||||
) VALUES ($1,$2,NOW(),NOW())
|
||||
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.InviteCode)
|
||||
_, err := q.db.Exec(ctx, insertSpace, arg.ID, arg.Name, arg.InviteCode)
|
||||
return err
|
||||
}
|
||||
Reference in new issue
Block a user