// Code generated by sqlc. DO NOT EDIT. // source: task.sql package db import ( "context" "database/sql" "time" "github.com/google/uuid" "github.com/lib/pq" ) const createTask = `-- name: CreateTask :one INSERT INTO task (task_group_id, created_at, name, position) VALUES($1, $2, $3, $4) RETURNING task_id, task_group_id, created_at, name, position, description, due_date, complete, completed_at, has_time ` type CreateTaskParams struct { TaskGroupID uuid.UUID `json:"task_group_id"` CreatedAt time.Time `json:"created_at"` Name string `json:"name"` Position float64 `json:"position"` } func (q *Queries) CreateTask(ctx context.Context, arg CreateTaskParams) (Task, error) { row := q.db.QueryRowContext(ctx, createTask, arg.TaskGroupID, arg.CreatedAt, arg.Name, arg.Position, ) var i Task err := row.Scan( &i.TaskID, &i.TaskGroupID, &i.CreatedAt, &i.Name, &i.Position, &i.Description, &i.DueDate, &i.Complete, &i.CompletedAt, &i.HasTime, ) return i, err } const createTaskAll = `-- name: CreateTaskAll :one INSERT INTO task (task_group_id, created_at, name, position, description, complete, due_date) VALUES ($1, $2, $3, $4, $5, $6, $7) RETURNING task_id, task_group_id, created_at, name, position, description, due_date, complete, completed_at, has_time ` type CreateTaskAllParams struct { TaskGroupID uuid.UUID `json:"task_group_id"` CreatedAt time.Time `json:"created_at"` Name string `json:"name"` Position float64 `json:"position"` Description sql.NullString `json:"description"` Complete bool `json:"complete"` DueDate sql.NullTime `json:"due_date"` } func (q *Queries) CreateTaskAll(ctx context.Context, arg CreateTaskAllParams) (Task, error) { row := q.db.QueryRowContext(ctx, createTaskAll, arg.TaskGroupID, arg.CreatedAt, arg.Name, arg.Position, arg.Description, arg.Complete, arg.DueDate, ) var i Task err := row.Scan( &i.TaskID, &i.TaskGroupID, &i.CreatedAt, &i.Name, &i.Position, &i.Description, &i.DueDate, &i.Complete, &i.CompletedAt, &i.HasTime, ) return i, err } const createTaskComment = `-- name: CreateTaskComment :one INSERT INTO task_comment (task_id, message, created_at, created_by) VALUES ($1, $2, $3, $4) RETURNING task_comment_id, task_id, created_at, updated_at, created_by, pinned, message ` type CreateTaskCommentParams struct { TaskID uuid.UUID `json:"task_id"` Message string `json:"message"` CreatedAt time.Time `json:"created_at"` CreatedBy uuid.UUID `json:"created_by"` } func (q *Queries) CreateTaskComment(ctx context.Context, arg CreateTaskCommentParams) (TaskComment, error) { row := q.db.QueryRowContext(ctx, createTaskComment, arg.TaskID, arg.Message, arg.CreatedAt, arg.CreatedBy, ) var i TaskComment err := row.Scan( &i.TaskCommentID, &i.TaskID, &i.CreatedAt, &i.UpdatedAt, &i.CreatedBy, &i.Pinned, &i.Message, ) return i, err } const deleteTaskByID = `-- name: DeleteTaskByID :exec DELETE FROM task WHERE task_id = $1 ` func (q *Queries) DeleteTaskByID(ctx context.Context, taskID uuid.UUID) error { _, err := q.db.ExecContext(ctx, deleteTaskByID, taskID) return err } const deleteTaskCommentByID = `-- name: DeleteTaskCommentByID :one DELETE FROM task_comment WHERE task_comment_id = $1 RETURNING task_comment_id, task_id, created_at, updated_at, created_by, pinned, message ` func (q *Queries) DeleteTaskCommentByID(ctx context.Context, taskCommentID uuid.UUID) (TaskComment, error) { row := q.db.QueryRowContext(ctx, deleteTaskCommentByID, taskCommentID) var i TaskComment err := row.Scan( &i.TaskCommentID, &i.TaskID, &i.CreatedAt, &i.UpdatedAt, &i.CreatedBy, &i.Pinned, &i.Message, ) return i, err } const deleteTasksByTaskGroupID = `-- name: DeleteTasksByTaskGroupID :execrows DELETE FROM task where task_group_id = $1 ` func (q *Queries) DeleteTasksByTaskGroupID(ctx context.Context, taskGroupID uuid.UUID) (int64, error) { result, err := q.db.ExecContext(ctx, deleteTasksByTaskGroupID, taskGroupID) if err != nil { return 0, err } return result.RowsAffected() } const getAllTasks = `-- name: GetAllTasks :many SELECT task_id, task_group_id, created_at, name, position, description, due_date, complete, completed_at, has_time FROM task ` func (q *Queries) GetAllTasks(ctx context.Context) ([]Task, error) { rows, err := q.db.QueryContext(ctx, getAllTasks) if err != nil { return nil, err } defer rows.Close() var items []Task for rows.Next() { var i Task if err := rows.Scan( &i.TaskID, &i.TaskGroupID, &i.CreatedAt, &i.Name, &i.Position, &i.Description, &i.DueDate, &i.Complete, &i.CompletedAt, &i.HasTime, ); 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 getAssignedTasksDueDateForUserID = `-- name: GetAssignedTasksDueDateForUserID :many SELECT task.task_id, task.task_group_id, task.created_at, task.name, task.position, task.description, task.due_date, task.complete, task.completed_at, task.has_time FROM task_assigned INNER JOIN task ON task.task_id = task_assigned.task_id INNER JOIN task_group ON task_group.task_group_id = task.task_group_id WHERE user_id = $1 AND $4::boolean = true OR ( $4::boolean = false AND complete = $2 AND ( $2 = false OR ($2 = true AND completed_at > $3) ) ) ORDER BY task.due_date DESC, task_group.project_id DESC ` type GetAssignedTasksDueDateForUserIDParams struct { UserID uuid.UUID `json:"user_id"` Complete bool `json:"complete"` CompletedAt sql.NullTime `json:"completed_at"` Column4 bool `json:"column_4"` } func (q *Queries) GetAssignedTasksDueDateForUserID(ctx context.Context, arg GetAssignedTasksDueDateForUserIDParams) ([]Task, error) { rows, err := q.db.QueryContext(ctx, getAssignedTasksDueDateForUserID, arg.UserID, arg.Complete, arg.CompletedAt, arg.Column4, ) if err != nil { return nil, err } defer rows.Close() var items []Task for rows.Next() { var i Task if err := rows.Scan( &i.TaskID, &i.TaskGroupID, &i.CreatedAt, &i.Name, &i.Position, &i.Description, &i.DueDate, &i.Complete, &i.CompletedAt, &i.HasTime, ); 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 getAssignedTasksProjectForUserID = `-- name: GetAssignedTasksProjectForUserID :many SELECT task.task_id, task.task_group_id, task.created_at, task.name, task.position, task.description, task.due_date, task.complete, task.completed_at, task.has_time FROM task_assigned INNER JOIN task ON task.task_id = task_assigned.task_id INNER JOIN task_group ON task_group.task_group_id = task.task_group_id WHERE user_id = $1 AND $4::boolean = true OR ( $4::boolean = false AND complete = $2 AND ( $2 = false OR ($2 = true AND completed_at > $3) ) ) ORDER BY task_group.project_id DESC, task_assigned.assigned_date DESC ` type GetAssignedTasksProjectForUserIDParams struct { UserID uuid.UUID `json:"user_id"` Complete bool `json:"complete"` CompletedAt sql.NullTime `json:"completed_at"` Column4 bool `json:"column_4"` } func (q *Queries) GetAssignedTasksProjectForUserID(ctx context.Context, arg GetAssignedTasksProjectForUserIDParams) ([]Task, error) { rows, err := q.db.QueryContext(ctx, getAssignedTasksProjectForUserID, arg.UserID, arg.Complete, arg.CompletedAt, arg.Column4, ) if err != nil { return nil, err } defer rows.Close() var items []Task for rows.Next() { var i Task if err := rows.Scan( &i.TaskID, &i.TaskGroupID, &i.CreatedAt, &i.Name, &i.Position, &i.Description, &i.DueDate, &i.Complete, &i.CompletedAt, &i.HasTime, ); 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 getCommentsForTaskID = `-- name: GetCommentsForTaskID :many SELECT task_comment_id, task_id, created_at, updated_at, created_by, pinned, message FROM task_comment WHERE task_id = $1 ORDER BY created_at ` func (q *Queries) GetCommentsForTaskID(ctx context.Context, taskID uuid.UUID) ([]TaskComment, error) { rows, err := q.db.QueryContext(ctx, getCommentsForTaskID, taskID) if err != nil { return nil, err } defer rows.Close() var items []TaskComment for rows.Next() { var i TaskComment if err := rows.Scan( &i.TaskCommentID, &i.TaskID, &i.CreatedAt, &i.UpdatedAt, &i.CreatedBy, &i.Pinned, &i.Message, ); 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 getProjectIDForTask = `-- name: GetProjectIDForTask :one SELECT project_id FROM task INNER JOIN task_group ON task_group.task_group_id = task.task_group_id WHERE task_id = $1 ` func (q *Queries) GetProjectIDForTask(ctx context.Context, taskID uuid.UUID) (uuid.UUID, error) { row := q.db.QueryRowContext(ctx, getProjectIDForTask, taskID) var project_id uuid.UUID err := row.Scan(&project_id) return project_id, err } const getProjectIdMappings = `-- name: GetProjectIdMappings :many SELECT project_id, task_id FROM task INNER JOIN task_group ON task_group.task_group_id = task.task_group_id WHERE task_id = ANY($1::uuid[]) ` type GetProjectIdMappingsRow struct { ProjectID uuid.UUID `json:"project_id"` TaskID uuid.UUID `json:"task_id"` } func (q *Queries) GetProjectIdMappings(ctx context.Context, dollar_1 []uuid.UUID) ([]GetProjectIdMappingsRow, error) { rows, err := q.db.QueryContext(ctx, getProjectIdMappings, pq.Array(dollar_1)) if err != nil { return nil, err } defer rows.Close() var items []GetProjectIdMappingsRow for rows.Next() { var i GetProjectIdMappingsRow if err := rows.Scan(&i.ProjectID, &i.TaskID); 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 getRecentlyAssignedTaskForUserID = `-- name: GetRecentlyAssignedTaskForUserID :many SELECT task.task_id, task.task_group_id, task.created_at, task.name, task.position, task.description, task.due_date, task.complete, task.completed_at, task.has_time FROM task_assigned INNER JOIN task ON task.task_id = task_assigned.task_id WHERE user_id = $1 AND $4::boolean = true OR ( $4::boolean = false AND complete = $2 AND ( $2 = false OR ($2 = true AND completed_at > $3) ) ) ORDER BY task_assigned.assigned_date DESC ` type GetRecentlyAssignedTaskForUserIDParams struct { UserID uuid.UUID `json:"user_id"` Complete bool `json:"complete"` CompletedAt sql.NullTime `json:"completed_at"` Column4 bool `json:"column_4"` } func (q *Queries) GetRecentlyAssignedTaskForUserID(ctx context.Context, arg GetRecentlyAssignedTaskForUserIDParams) ([]Task, error) { rows, err := q.db.QueryContext(ctx, getRecentlyAssignedTaskForUserID, arg.UserID, arg.Complete, arg.CompletedAt, arg.Column4, ) if err != nil { return nil, err } defer rows.Close() var items []Task for rows.Next() { var i Task if err := rows.Scan( &i.TaskID, &i.TaskGroupID, &i.CreatedAt, &i.Name, &i.Position, &i.Description, &i.DueDate, &i.Complete, &i.CompletedAt, &i.HasTime, ); 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 getTaskByID = `-- name: GetTaskByID :one SELECT task_id, task_group_id, created_at, name, position, description, due_date, complete, completed_at, has_time FROM task WHERE task_id = $1 ` func (q *Queries) GetTaskByID(ctx context.Context, taskID uuid.UUID) (Task, error) { row := q.db.QueryRowContext(ctx, getTaskByID, taskID) var i Task err := row.Scan( &i.TaskID, &i.TaskGroupID, &i.CreatedAt, &i.Name, &i.Position, &i.Description, &i.DueDate, &i.Complete, &i.CompletedAt, &i.HasTime, ) return i, err } const getTasksForTaskGroupID = `-- name: GetTasksForTaskGroupID :many SELECT task_id, task_group_id, created_at, name, position, description, due_date, complete, completed_at, has_time FROM task WHERE task_group_id = $1 ` func (q *Queries) GetTasksForTaskGroupID(ctx context.Context, taskGroupID uuid.UUID) ([]Task, error) { rows, err := q.db.QueryContext(ctx, getTasksForTaskGroupID, taskGroupID) if err != nil { return nil, err } defer rows.Close() var items []Task for rows.Next() { var i Task if err := rows.Scan( &i.TaskID, &i.TaskGroupID, &i.CreatedAt, &i.Name, &i.Position, &i.Description, &i.DueDate, &i.Complete, &i.CompletedAt, &i.HasTime, ); 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 setTaskComplete = `-- name: SetTaskComplete :one UPDATE task SET complete = $2, completed_at = $3 WHERE task_id = $1 RETURNING task_id, task_group_id, created_at, name, position, description, due_date, complete, completed_at, has_time ` type SetTaskCompleteParams struct { TaskID uuid.UUID `json:"task_id"` Complete bool `json:"complete"` CompletedAt sql.NullTime `json:"completed_at"` } func (q *Queries) SetTaskComplete(ctx context.Context, arg SetTaskCompleteParams) (Task, error) { row := q.db.QueryRowContext(ctx, setTaskComplete, arg.TaskID, arg.Complete, arg.CompletedAt) var i Task err := row.Scan( &i.TaskID, &i.TaskGroupID, &i.CreatedAt, &i.Name, &i.Position, &i.Description, &i.DueDate, &i.Complete, &i.CompletedAt, &i.HasTime, ) return i, err } const updateTaskComment = `-- name: UpdateTaskComment :one UPDATE task_comment SET message = $2, updated_at = $3 WHERE task_comment_id = $1 RETURNING task_comment_id, task_id, created_at, updated_at, created_by, pinned, message ` type UpdateTaskCommentParams struct { TaskCommentID uuid.UUID `json:"task_comment_id"` Message string `json:"message"` UpdatedAt sql.NullTime `json:"updated_at"` } func (q *Queries) UpdateTaskComment(ctx context.Context, arg UpdateTaskCommentParams) (TaskComment, error) { row := q.db.QueryRowContext(ctx, updateTaskComment, arg.TaskCommentID, arg.Message, arg.UpdatedAt) var i TaskComment err := row.Scan( &i.TaskCommentID, &i.TaskID, &i.CreatedAt, &i.UpdatedAt, &i.CreatedBy, &i.Pinned, &i.Message, ) return i, err } const updateTaskDescription = `-- name: UpdateTaskDescription :one UPDATE task SET description = $2 WHERE task_id = $1 RETURNING task_id, task_group_id, created_at, name, position, description, due_date, complete, completed_at, has_time ` type UpdateTaskDescriptionParams struct { TaskID uuid.UUID `json:"task_id"` Description sql.NullString `json:"description"` } func (q *Queries) UpdateTaskDescription(ctx context.Context, arg UpdateTaskDescriptionParams) (Task, error) { row := q.db.QueryRowContext(ctx, updateTaskDescription, arg.TaskID, arg.Description) var i Task err := row.Scan( &i.TaskID, &i.TaskGroupID, &i.CreatedAt, &i.Name, &i.Position, &i.Description, &i.DueDate, &i.Complete, &i.CompletedAt, &i.HasTime, ) return i, err } const updateTaskDueDate = `-- name: UpdateTaskDueDate :one UPDATE task SET due_date = $2, has_time = $3 WHERE task_id = $1 RETURNING task_id, task_group_id, created_at, name, position, description, due_date, complete, completed_at, has_time ` type UpdateTaskDueDateParams struct { TaskID uuid.UUID `json:"task_id"` DueDate sql.NullTime `json:"due_date"` HasTime bool `json:"has_time"` } func (q *Queries) UpdateTaskDueDate(ctx context.Context, arg UpdateTaskDueDateParams) (Task, error) { row := q.db.QueryRowContext(ctx, updateTaskDueDate, arg.TaskID, arg.DueDate, arg.HasTime) var i Task err := row.Scan( &i.TaskID, &i.TaskGroupID, &i.CreatedAt, &i.Name, &i.Position, &i.Description, &i.DueDate, &i.Complete, &i.CompletedAt, &i.HasTime, ) return i, err } const updateTaskLocation = `-- name: UpdateTaskLocation :one UPDATE task SET task_group_id = $2, position = $3 WHERE task_id = $1 RETURNING task_id, task_group_id, created_at, name, position, description, due_date, complete, completed_at, has_time ` type UpdateTaskLocationParams struct { TaskID uuid.UUID `json:"task_id"` TaskGroupID uuid.UUID `json:"task_group_id"` Position float64 `json:"position"` } func (q *Queries) UpdateTaskLocation(ctx context.Context, arg UpdateTaskLocationParams) (Task, error) { row := q.db.QueryRowContext(ctx, updateTaskLocation, arg.TaskID, arg.TaskGroupID, arg.Position) var i Task err := row.Scan( &i.TaskID, &i.TaskGroupID, &i.CreatedAt, &i.Name, &i.Position, &i.Description, &i.DueDate, &i.Complete, &i.CompletedAt, &i.HasTime, ) return i, err } const updateTaskName = `-- name: UpdateTaskName :one UPDATE task SET name = $2 WHERE task_id = $1 RETURNING task_id, task_group_id, created_at, name, position, description, due_date, complete, completed_at, has_time ` type UpdateTaskNameParams struct { TaskID uuid.UUID `json:"task_id"` Name string `json:"name"` } func (q *Queries) UpdateTaskName(ctx context.Context, arg UpdateTaskNameParams) (Task, error) { row := q.db.QueryRowContext(ctx, updateTaskName, arg.TaskID, arg.Name) var i Task err := row.Scan( &i.TaskID, &i.TaskGroupID, &i.CreatedAt, &i.Name, &i.Position, &i.Description, &i.DueDate, &i.Complete, &i.CompletedAt, &i.HasTime, ) return i, err } const updateTaskPosition = `-- name: UpdateTaskPosition :one UPDATE task SET position = $2 WHERE task_id = $1 RETURNING task_id, task_group_id, created_at, name, position, description, due_date, complete, completed_at, has_time ` type UpdateTaskPositionParams struct { TaskID uuid.UUID `json:"task_id"` Position float64 `json:"position"` } func (q *Queries) UpdateTaskPosition(ctx context.Context, arg UpdateTaskPositionParams) (Task, error) { row := q.db.QueryRowContext(ctx, updateTaskPosition, arg.TaskID, arg.Position) var i Task err := row.Scan( &i.TaskID, &i.TaskGroupID, &i.CreatedAt, &i.Name, &i.Position, &i.Description, &i.DueDate, &i.Complete, &i.CompletedAt, &i.HasTime, ) return i, err }