services

package
v1.2.8 Latest Latest
Warning

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

Go to latest
Published: Jan 14, 2026 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AccountsService

type AccountsService interface {
	GetAccountByShortName(userID int64, accID string) (*models.Account, error)
	ListAccounts(userID int64) ([]models.Account, error)
	ListAccountsByType(userID int64, typ models.AccountType) ([]models.Account, error)
	CreateAccount(account *models.Account) error
	UpdateAccountBalance(userID int64, accID string, amount float64) error
	DeleteAccount(userID int64, accID string) error
}

type DebtorCreditorService added in v1.0.1

type DebtorCreditorService interface {
	GetDebtorCreditorByID(id int64) (*models.DebtorsCreditors, error)
	GetDebtorCreditorByName(userID int64, name string) (*models.DebtorsCreditors, error)
	ListDebtorCreditors(userID int64) ([]models.DebtorsCreditors, error)
	CreateDebtorCreditor(drcr *models.DebtorsCreditors) error
	UpdateDebtorCreditorBalance(id int64, amount float64) error
	DeleteDebtorCreditor(id int64) error
}

type EventService

type EventService interface {
	AddEvent(event string) error
	ListEvents() ([]models.Event, error)
}

type ExpenseService

type ExpenseService interface {
	AddExpense(params gqtypes.Expense) error
	ListExpenses() ([]*models.Expense, error)
}

type TransactionService

type TransactionService interface {
	AddTransaction(txn models.Transaction) error
	ListTransactions(userID int64) ([]models.Transaction, error)
	ListTransactionsByType(userID int64, txnType models.TransactionType) ([]models.Transaction, error)
	ListTransactionsByCategory(userID int64, catID string) ([]models.Transaction, error)
	ListTransactionsBySubcategory(userID int64, subcatID string) ([]models.Transaction, error)
	ListTransactionsByTime(userID int64, txnType models.TransactionType, startTime, endTime int64) ([]models.Transaction, error)
	ListTransactionsBySourceID(userID int64, srcID string) ([]models.Transaction, error)
	ListTransactionsByDestinationID(userID int64, dstID string) ([]models.Transaction, error)
	ListTransactionsByDebtorCreditorName(userID int64, name string) ([]models.Transaction, error)

	GetTxnCategoryName(catID string) (string, error)
	ListTxnCategories() ([]models.TxnCategory, error)
	GetTxnSubcategoryName(subcatID string) (string, error)
	ListTxnSubcategories(catID string) ([]models.TxnSubcategory, error)
	UpdateTxnCategories() error
}

type UserService

type UserService interface {
	GetUserByID(id int64) (*models.User, error)
	GetUserByTelegramID(id int64) (*models.User, error)
	GetUserByUsername(username string) (*models.User, error)
	ListUsers() ([]models.User, error)
	SignUp(user *models.User) error
	UpdateUser(id int64, user *models.User) error
	DeleteUser(id int64) error
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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