db

package
v0.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 25, 2025 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateCategoriesTable

func CreateCategoriesTable(db *sql.DB) error

func CreateCategory

func CreateCategory(db *sql.DB, name, pattern string) (int64, error)

func CreateExpenseTable

func CreateExpenseTable(db *sql.DB) error

func DeleteCategoriesDB

func DeleteCategoriesDB(db *sql.DB) error

func DeleteExpenseDB

func DeleteExpenseDB(db *sql.DB) error

func GetDB

func GetDB(dbsource string) (*sql.DB, error)

func InsertExpenses

func InsertExpenses(db *sql.DB, expenses []*Expense) []error

func PopulateCategoriesFromConfig

func PopulateCategoriesFromConfig(db *sql.DB, conf *config.Config) error

func UpdateExpenses

func UpdateExpenses(db *sql.DB, expenses []*Expense) (int64, error)

Types

type Category

type Category struct {
	ID      int
	Name    string
	Pattern string
	Total   int
}

func GetCategories

func GetCategories(db *sql.DB) ([]Category, error)

func GetCategoriesAndTotalExpenses

func GetCategoriesAndTotalExpenses(db *sql.DB) ([]Category, error)

func GetCategory

func GetCategory(db *sql.DB, categoryID int) (Category, error)

type ErrInsert

type ErrInsert struct {
	// contains filtered or unexported fields
}

func (ErrInsert) Error

func (e ErrInsert) Error() string

type Expense

type Expense struct {
	ID          int
	Source      string
	Date        time.Time
	Description string
	Amount      int64
	Type        ExpenseType
	Currency    string
	CategoryID  int
	// contains filtered or unexported fields
}

func GetExpenses

func GetExpenses(db *sql.DB) ([]*Expense, error)

func GetExpensesFromDateRange

func GetExpensesFromDateRange(db *sql.DB, start time.Time, end time.Time) ([]*Expense, error)

func GetExpensesWithoutCategory

func GetExpensesWithoutCategory(db *sql.DB) ([]*Expense, error)

func GetFirstExpense

func GetFirstExpense(db *sql.DB) (*Expense, error)

func SearchExpenses

func SearchExpenses(db *sql.DB, keyword string) ([]*Expense, error)

func SearchExpensesByDescription

func SearchExpensesByDescription(db *sql.DB, description string) ([]*Expense, error)

func (Expense) Category

func (e Expense) Category() (string, error)

type ExpenseType

type ExpenseType int
const (
	ChargeType ExpenseType = iota
	IncomeType
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL