GraphQL API and utilities for the rpdata project
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

235 lines
5.7 KiB

  1. // Code generated by sqlc. DO NOT EDIT.
  2. // source: tags.sql
  3. package psqlcore
  4. import (
  5. "context"
  6. "github.com/lib/pq"
  7. )
  8. const clearTag = `-- name: ClearTag :exec
  9. DELETE FROM common_tag
  10. WHERE tag=$1::TEXT
  11. AND target_kind=$2::TEXT
  12. AND target_id=$3::TEXT
  13. `
  14. type ClearTagParams struct {
  15. Tag string `json:"tag"`
  16. TargetKind string `json:"target_kind"`
  17. TargetID string `json:"target_id"`
  18. }
  19. func (q *Queries) ClearTag(ctx context.Context, arg ClearTagParams) error {
  20. _, err := q.db.ExecContext(ctx, clearTag, arg.Tag, arg.TargetKind, arg.TargetID)
  21. return err
  22. }
  23. const clearTagsByTarget = `-- name: ClearTagsByTarget :exec
  24. DELETE FROM common_tag
  25. WHERE target_kind=$1::TEXT
  26. AND target_id=$2::TEXT
  27. `
  28. type ClearTagsByTargetParams struct {
  29. TargetKind string `json:"target_kind"`
  30. TargetID string `json:"target_id"`
  31. }
  32. func (q *Queries) ClearTagsByTarget(ctx context.Context, arg ClearTagsByTargetParams) error {
  33. _, err := q.db.ExecContext(ctx, clearTagsByTarget, arg.TargetKind, arg.TargetID)
  34. return err
  35. }
  36. const selectDistinctTags = `-- name: SelectDistinctTags :many
  37. SELECT DISTINCT tag FROM common_tag
  38. `
  39. func (q *Queries) SelectDistinctTags(ctx context.Context) ([]string, error) {
  40. rows, err := q.db.QueryContext(ctx, selectDistinctTags)
  41. if err != nil {
  42. return nil, err
  43. }
  44. defer rows.Close()
  45. items := []string{}
  46. for rows.Next() {
  47. var tag string
  48. if err := rows.Scan(&tag); err != nil {
  49. return nil, err
  50. }
  51. items = append(items, tag)
  52. }
  53. if err := rows.Close(); err != nil {
  54. return nil, err
  55. }
  56. if err := rows.Err(); err != nil {
  57. return nil, err
  58. }
  59. return items, nil
  60. }
  61. const selectDistinctTagsByKind = `-- name: SelectDistinctTagsByKind :many
  62. SELECT DISTINCT tag FROM common_tag WHERE tag LIKE '$1::text%'
  63. `
  64. func (q *Queries) SelectDistinctTagsByKind(ctx context.Context) ([]string, error) {
  65. rows, err := q.db.QueryContext(ctx, selectDistinctTagsByKind)
  66. if err != nil {
  67. return nil, err
  68. }
  69. defer rows.Close()
  70. items := []string{}
  71. for rows.Next() {
  72. var tag string
  73. if err := rows.Scan(&tag); err != nil {
  74. return nil, err
  75. }
  76. items = append(items, tag)
  77. }
  78. if err := rows.Close(); err != nil {
  79. return nil, err
  80. }
  81. if err := rows.Err(); err != nil {
  82. return nil, err
  83. }
  84. return items, nil
  85. }
  86. const selectTagsByTag = `-- name: SelectTagsByTag :many
  87. SELECT tag, target_kind, target_id FROM common_tag WHERE tag = $1::text
  88. `
  89. func (q *Queries) SelectTagsByTag(ctx context.Context, tagName string) ([]CommonTag, error) {
  90. rows, err := q.db.QueryContext(ctx, selectTagsByTag, tagName)
  91. if err != nil {
  92. return nil, err
  93. }
  94. defer rows.Close()
  95. items := []CommonTag{}
  96. for rows.Next() {
  97. var i CommonTag
  98. if err := rows.Scan(&i.Tag, &i.TargetKind, &i.TargetID); err != nil {
  99. return nil, err
  100. }
  101. items = append(items, i)
  102. }
  103. if err := rows.Close(); err != nil {
  104. return nil, err
  105. }
  106. if err := rows.Err(); err != nil {
  107. return nil, err
  108. }
  109. return items, nil
  110. }
  111. const selectTagsByTags = `-- name: SelectTagsByTags :many
  112. SELECT tag, target_kind, target_id FROM common_tag WHERE tag = ANY($1::text[])
  113. `
  114. func (q *Queries) SelectTagsByTags(ctx context.Context, tagNames []string) ([]CommonTag, error) {
  115. rows, err := q.db.QueryContext(ctx, selectTagsByTags, pq.Array(tagNames))
  116. if err != nil {
  117. return nil, err
  118. }
  119. defer rows.Close()
  120. items := []CommonTag{}
  121. for rows.Next() {
  122. var i CommonTag
  123. if err := rows.Scan(&i.Tag, &i.TargetKind, &i.TargetID); err != nil {
  124. return nil, err
  125. }
  126. items = append(items, i)
  127. }
  128. if err := rows.Close(); err != nil {
  129. return nil, err
  130. }
  131. if err := rows.Err(); err != nil {
  132. return nil, err
  133. }
  134. return items, nil
  135. }
  136. const selectTagsByTarget = `-- name: SelectTagsByTarget :many
  137. SELECT tag, target_kind, target_id FROM common_tag WHERE target_kind = $1 AND target_id = $2::text
  138. `
  139. type SelectTagsByTargetParams struct {
  140. TargetKind string `json:"target_kind"`
  141. Column2 string `json:"column_2"`
  142. }
  143. func (q *Queries) SelectTagsByTarget(ctx context.Context, arg SelectTagsByTargetParams) ([]CommonTag, error) {
  144. rows, err := q.db.QueryContext(ctx, selectTagsByTarget, arg.TargetKind, arg.Column2)
  145. if err != nil {
  146. return nil, err
  147. }
  148. defer rows.Close()
  149. items := []CommonTag{}
  150. for rows.Next() {
  151. var i CommonTag
  152. if err := rows.Scan(&i.Tag, &i.TargetKind, &i.TargetID); err != nil {
  153. return nil, err
  154. }
  155. items = append(items, i)
  156. }
  157. if err := rows.Close(); err != nil {
  158. return nil, err
  159. }
  160. if err := rows.Err(); err != nil {
  161. return nil, err
  162. }
  163. return items, nil
  164. }
  165. const selectTagsByTargets = `-- name: SelectTagsByTargets :many
  166. SELECT tag, target_kind, target_id FROM common_tag WHERE target_kind = $1 AND target_id = ANY($2::text[])
  167. `
  168. type SelectTagsByTargetsParams struct {
  169. TargetKind string `json:"target_kind"`
  170. Column2 []string `json:"column_2"`
  171. }
  172. func (q *Queries) SelectTagsByTargets(ctx context.Context, arg SelectTagsByTargetsParams) ([]CommonTag, error) {
  173. rows, err := q.db.QueryContext(ctx, selectTagsByTargets, arg.TargetKind, pq.Array(arg.Column2))
  174. if err != nil {
  175. return nil, err
  176. }
  177. defer rows.Close()
  178. items := []CommonTag{}
  179. for rows.Next() {
  180. var i CommonTag
  181. if err := rows.Scan(&i.Tag, &i.TargetKind, &i.TargetID); err != nil {
  182. return nil, err
  183. }
  184. items = append(items, i)
  185. }
  186. if err := rows.Close(); err != nil {
  187. return nil, err
  188. }
  189. if err := rows.Err(); err != nil {
  190. return nil, err
  191. }
  192. return items, nil
  193. }
  194. const setTag = `-- name: SetTag :exec
  195. INSERT INTO common_tag (tag, target_kind, target_id)
  196. VALUES (
  197. $1::TEXT, $2::TEXT, $3::TEXT
  198. )
  199. ON CONFLICT DO NOTHING
  200. `
  201. type SetTagParams struct {
  202. Tag string `json:"tag"`
  203. TargetKind string `json:"target_kind"`
  204. TargetID string `json:"target_id"`
  205. }
  206. func (q *Queries) SetTag(ctx context.Context, arg SetTagParams) error {
  207. _, err := q.db.ExecContext(ctx, setTag, arg.Tag, arg.TargetKind, arg.TargetID)
  208. return err
  209. }