feat: implement comprehensive recipe management schema
- Add full database schema with accounts, dishes, ingredients, categories, and pricing - Implement custom types for weight, currency, recipe difficulty, and color hex - Add soft delete pattern with deleted_at and active views for all tables - Include journaling triggers for created_at/updated_at automation feat: add SQLC configuration with proper type overrides - Configure SQLC to use UUID, decimal, and timestamptz types with proper Go mappings - Add github.com/shopspring/decimal dependency for precise decimal handling - Set up proper pointer handling for nullable fields in generated structs refactor: replace simple food_items with full dish management system - Remove old FoodItem model and replace with comprehensive Dish model - Implement dish creation and retrieval queries with full field support - Add ingredient management with weight/amount tracking chore: update infrastructure dependencies - Switch to custom PostgreSQL image with pg_idkit extension for UUIDv7 support - Add DATABASE_URI environment variable configuration - Update Docker Compose configuration for new database image chore: organize SQL with fold markers and section comments - Add vim fold markers for better code navigation - Structure schema into clear sections: extensions, types, tables, triggers - Separate query files with organized comment blocks
This commit is contained in:
@@ -1,4 +1,15 @@
|
||||
-- name: CreateFoodItem :one
|
||||
INSERT INTO food_items(title, description)
|
||||
VALUES ($1, $2)
|
||||
-- vim:fileencoding=utf-8:foldmethod=marker
|
||||
|
||||
--: Dish Object {{{
|
||||
|
||||
;-- name: CreateDish :one
|
||||
INSERT INTO dishes(title, description, difficulty, thumbnail_s3_key)
|
||||
VALUES($1, $2, $3, $4)
|
||||
RETURNING *;
|
||||
|
||||
;-- name: GetDish :one
|
||||
SELECT * FROM active_dishes
|
||||
WHERE guid = $1
|
||||
LIMIT 1;
|
||||
|
||||
--: }}}
|
||||
|
||||
Reference in New Issue
Block a user