From b46012f212a4302b4d1325d8fdf9634e7083e76a Mon Sep 17 00:00:00 2001 From: René 'Necoro' Neumann Date: Fri, 11 Oct 2024 22:47:16 +0200 Subject: First draft of recurrent costs and categories --- model/categories.sql.go | 46 ++++++++++++++++++++++++++++++++++++++ model/models.go | 2 +- model/rexps.sql.go | 59 +++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 106 insertions(+), 1 deletion(-) create mode 100644 model/categories.sql.go create mode 100644 model/rexps.sql.go (limited to 'model') diff --git a/model/categories.sql.go b/model/categories.sql.go new file mode 100644 index 0000000..74eb8a9 --- /dev/null +++ b/model/categories.sql.go @@ -0,0 +1,46 @@ +// Code generated by sqlc. DO NOT EDIT. +// versions: +// sqlc v1.25.0 +// source: categories.sql + +package model + +import ( + "context" +) + +const getCategories = `-- name: GetCategories :many +SELECT id, name + FROM categories + WHERE user_id = $1 +` + +type GetCategoriesRow struct { + ID int32 + Name string +} + +// GetCategories +// +// SELECT id, name +// FROM categories +// WHERE user_id = $1 +func (q *Queries) GetCategories(ctx context.Context, userID int32) ([]GetCategoriesRow, error) { + rows, err := q.db.Query(ctx, getCategories, userID) + if err != nil { + return nil, err + } + defer rows.Close() + var items []GetCategoriesRow + for rows.Next() { + var i GetCategoriesRow + if err := rows.Scan(&i.ID, &i.Name); err != nil { + return nil, err + } + items = append(items, i) + } + if err := rows.Err(); err != nil { + return nil, err + } + return items, nil +} diff --git a/model/models.go b/model/models.go index 2ac5a4b..b2a47dc 100644 --- a/model/models.go +++ b/model/models.go @@ -15,7 +15,7 @@ type Category struct { UserID int32 } -type ConstExpense struct { +type RecurExpense struct { ID int32 Description pgtype.Text Expense pgtype.Numeric diff --git a/model/rexps.sql.go b/model/rexps.sql.go new file mode 100644 index 0000000..9b32c5b --- /dev/null +++ b/model/rexps.sql.go @@ -0,0 +1,59 @@ +// Code generated by sqlc. DO NOT EDIT. +// versions: +// sqlc v1.25.0 +// source: rexps.sql + +package model + +import ( + "context" + + "github.com/jackc/pgx/v5/pgtype" +) + +const getRecurExpenses = `-- name: GetRecurExpenses :many +SELECT id, description, expense, duration, start, "end" + FROM recur_expenses + WHERE user_id = $1 +` + +type GetRecurExpensesRow struct { + ID int32 + Description pgtype.Text + Expense pgtype.Numeric + Duration pgtype.Interval + Start pgtype.Date + End pgtype.Date +} + +// GetRecurExpenses +// +// SELECT id, description, expense, duration, start, "end" +// FROM recur_expenses +// WHERE user_id = $1 +func (q *Queries) GetRecurExpenses(ctx context.Context, userID int32) ([]GetRecurExpensesRow, error) { + rows, err := q.db.Query(ctx, getRecurExpenses, userID) + if err != nil { + return nil, err + } + defer rows.Close() + var items []GetRecurExpensesRow + for rows.Next() { + var i GetRecurExpensesRow + if err := rows.Scan( + &i.ID, + &i.Description, + &i.Expense, + &i.Duration, + &i.Start, + &i.End, + ); err != nil { + return nil, err + } + items = append(items, i) + } + if err := rows.Err(); err != nil { + return nil, err + } + return items, nil +} -- cgit v1.2.3-70-g09d2