-- name: CreatePractice :one INSERT INTO practices ( owner_type, owner_id, title, description, banner_image, persona, is_active ) VALUES ( $1, -- owner_type (LEVEL | MODULE) $2, -- owner_id $3, -- title $4, -- description $5, -- banner_image $6, -- persona $7 -- is_active ) RETURNING id, owner_type, owner_id, title, description, banner_image, persona, is_active; -- name: GetPracticeByID :one SELECT id, owner_type, owner_id, title, description, banner_image, persona, is_active FROM practices WHERE id = $1; -- name: ListPracticesByOwner :many SELECT id, owner_type, owner_id, title, description, banner_image, persona, is_active FROM practices WHERE owner_type = $1 AND owner_id = $2 AND is_active = TRUE ORDER BY id ASC; -- name: UpdatePractice :one UPDATE practices SET title = $2, description = $3, banner_image = $4, persona = $5, is_active = $6 WHERE id = $1 RETURNING id, owner_type, owner_id, title, description, banner_image, persona, is_active; -- name: DeactivatePractice :exec UPDATE practices SET is_active = FALSE WHERE id = $1;