// Code generated by sqlc. DO NOT EDIT. // source: team.sql package db import ( "context" "time" "github.com/google/uuid" ) const createTeam = `-- name: CreateTeam :one INSERT INTO team (organization_id, created_at, name) VALUES ($1, $2, $3) RETURNING team_id, created_at, name, organization_id ` type CreateTeamParams struct { OrganizationID uuid.UUID `json:"organization_id"` CreatedAt time.Time `json:"created_at"` Name string `json:"name"` } func (q *Queries) CreateTeam(ctx context.Context, arg CreateTeamParams) (Team, error) { row := q.db.QueryRowContext(ctx, createTeam, arg.OrganizationID, arg.CreatedAt, arg.Name) var i Team err := row.Scan( &i.TeamID, &i.CreatedAt, &i.Name, &i.OrganizationID, ) return i, err } const deleteTeamByID = `-- name: DeleteTeamByID :exec DELETE FROM team WHERE team_id = $1 ` func (q *Queries) DeleteTeamByID(ctx context.Context, teamID uuid.UUID) error { _, err := q.db.ExecContext(ctx, deleteTeamByID, teamID) return err } const getAllTeams = `-- name: GetAllTeams :many SELECT team_id, created_at, name, organization_id FROM team ` func (q *Queries) GetAllTeams(ctx context.Context) ([]Team, error) { rows, err := q.db.QueryContext(ctx, getAllTeams) if err != nil { return nil, err } defer rows.Close() var items []Team for rows.Next() { var i Team if err := rows.Scan( &i.TeamID, &i.CreatedAt, &i.Name, &i.OrganizationID, ); 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 getMemberTeamIDsForUserID = `-- name: GetMemberTeamIDsForUserID :many SELECT team_id FROM team_member WHERE user_id = $1 ` func (q *Queries) GetMemberTeamIDsForUserID(ctx context.Context, userID uuid.UUID) ([]uuid.UUID, error) { rows, err := q.db.QueryContext(ctx, getMemberTeamIDsForUserID, userID) if err != nil { return nil, err } defer rows.Close() var items []uuid.UUID for rows.Next() { var team_id uuid.UUID if err := rows.Scan(&team_id); err != nil { return nil, err } items = append(items, team_id) } if err := rows.Close(); err != nil { return nil, err } if err := rows.Err(); err != nil { return nil, err } return items, nil } const getTeamByID = `-- name: GetTeamByID :one SELECT team_id, created_at, name, organization_id FROM team WHERE team_id = $1 ` func (q *Queries) GetTeamByID(ctx context.Context, teamID uuid.UUID) (Team, error) { row := q.db.QueryRowContext(ctx, getTeamByID, teamID) var i Team err := row.Scan( &i.TeamID, &i.CreatedAt, &i.Name, &i.OrganizationID, ) return i, err } const getTeamRoleForUserID = `-- name: GetTeamRoleForUserID :one SELECT team_id, role_code FROM team_member WHERE user_id = $1 AND team_id = $2 ` type GetTeamRoleForUserIDParams struct { UserID uuid.UUID `json:"user_id"` TeamID uuid.UUID `json:"team_id"` } type GetTeamRoleForUserIDRow struct { TeamID uuid.UUID `json:"team_id"` RoleCode string `json:"role_code"` } func (q *Queries) GetTeamRoleForUserID(ctx context.Context, arg GetTeamRoleForUserIDParams) (GetTeamRoleForUserIDRow, error) { row := q.db.QueryRowContext(ctx, getTeamRoleForUserID, arg.UserID, arg.TeamID) var i GetTeamRoleForUserIDRow err := row.Scan(&i.TeamID, &i.RoleCode) return i, err } const getTeamRolesForUserID = `-- name: GetTeamRolesForUserID :many SELECT team_id, role_code FROM team_member WHERE user_id = $1 ` type GetTeamRolesForUserIDRow struct { TeamID uuid.UUID `json:"team_id"` RoleCode string `json:"role_code"` } func (q *Queries) GetTeamRolesForUserID(ctx context.Context, userID uuid.UUID) ([]GetTeamRolesForUserIDRow, error) { rows, err := q.db.QueryContext(ctx, getTeamRolesForUserID, userID) if err != nil { return nil, err } defer rows.Close() var items []GetTeamRolesForUserIDRow for rows.Next() { var i GetTeamRolesForUserIDRow if err := rows.Scan(&i.TeamID, &i.RoleCode); 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 getTeamsForOrganization = `-- name: GetTeamsForOrganization :many SELECT team_id, created_at, name, organization_id FROM team WHERE organization_id = $1 ` func (q *Queries) GetTeamsForOrganization(ctx context.Context, organizationID uuid.UUID) ([]Team, error) { rows, err := q.db.QueryContext(ctx, getTeamsForOrganization, organizationID) if err != nil { return nil, err } defer rows.Close() var items []Team for rows.Next() { var i Team if err := rows.Scan( &i.TeamID, &i.CreatedAt, &i.Name, &i.OrganizationID, ); 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 getTeamsForUserIDWhereAdmin = `-- name: GetTeamsForUserIDWhereAdmin :many SELECT team.team_id, team.created_at, team.name, team.organization_id FROM team_member INNER JOIN team ON team.team_id = team_member.team_id WHERE (role_code = 'admin' OR role_code = 'member') AND user_id = $1 ` func (q *Queries) GetTeamsForUserIDWhereAdmin(ctx context.Context, userID uuid.UUID) ([]Team, error) { rows, err := q.db.QueryContext(ctx, getTeamsForUserIDWhereAdmin, userID) if err != nil { return nil, err } defer rows.Close() var items []Team for rows.Next() { var i Team if err := rows.Scan( &i.TeamID, &i.CreatedAt, &i.Name, &i.OrganizationID, ); 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 }