g

package
v0.0.2 Latest Latest
Warning

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

Go to latest
Published: Aug 1, 2022 License: GPL-3.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CharTrack  = " ▶"
	CharFinish = " ■"
	CharErase  = " ◀"
	CharError  = " ▲"
	CharInfo   = " ●"
	CharMore   = " ◆"
)
View Source
const (
	TX_TYPE_IN  = "in"
	TX_TYPE_OUT = "out"
)

Variables

View Source
var VERSION string

Functions

func Execute

func Execute()

func GetCurrentUser

func GetCurrentUser() string

func GetDecimalFromValueString

func GetDecimalFromValueString(value string, decimalSeparator rune) (decimal.Decimal, error)

func GetIdFromName

func GetIdFromName(name string) string

func GetValueForMappedField

func GetValueForMappedField(tx []string, mapping map[string]int, fieldname string) string

func ImportCSV

func ImportCSV(filename string, delimiter rune) ([][]string, error)

Types

type Category

type Category struct {
	Name  string `json:"name,omitempty"`
	Color string `json:"color,omitempty"`
}

type Database

type Database struct {
	DB *buntdb.DB
}

func InitDatabase

func InitDatabase() (*Database, error)

func (*Database) AddTransaction

func (database *Database) AddTransaction(user string, transaction Transaction) (string, error)

func (*Database) EraseTransaction

func (database *Database) EraseTransaction(user string, id string) error

func (*Database) GetCategory

func (database *Database) GetCategory(user string, categoryName string) (Category, error)

func (*Database) GetImportsSHA1List

func (database *Database) GetImportsSHA1List(user string) (map[string]string, error)

func (*Database) GetTransaction

func (database *Database) GetTransaction(user string, transactionId string) (Transaction, error)

func (*Database) ListTransactions

func (database *Database) ListTransactions(user string) ([]Transaction, error)

func (*Database) NewID

func (database *Database) NewID() string

func (*Database) UpdateCategory

func (database *Database) UpdateCategory(user string, categoryName string, category Category) error

func (*Database) UpdateImportsSHA1List

func (database *Database) UpdateImportsSHA1List(user string, sha1List map[string]string) error

func (*Database) UpdateTransaction

func (database *Database) UpdateTransaction(user string, transaction Transaction) (string, error)

type RevolutTransaction

type RevolutTransaction struct {
	CompletedDate string
	Reference     string
	PaidOut       string
	PaidIn        string
	ExchangeOut   string
	ExchangeIn    string
	Balance       string
	ExchangeRate  string
	Category      string
}

func ImportRevolutCSV

func ImportRevolutCSV(filename string) ([]RevolutTransaction, error)

type Transaction

type Transaction struct {
	ID             string    `json:"-"`
	Type           string    `json:"type,omitempty"`
	Category       string    `json:"category,omitempty"`
	Date           time.Time `json:"date,omitempty"`
	DateValue      time.Time `json:"valueDate,omitempty"`
	Value          string    `json:"value,omitempty"`
	ValueExchanged string    `json:"valueExchanged,omitempty"`
	ExchangeRate   string    `json:"exchangeRate,omitempty"`
	Reference      string    `json:"reference,omitempty"`
	SenderReceiver string    `json:"senderReceiver,omitempty"`
	User           string    `json:"user,omitempty"`

	SHA1 string `json:"-"`
}

func GetFilteredTransactions

func GetFilteredTransactions(transactions []Transaction, typ string, category string, since time.Time, until time.Time) ([]Transaction, error)

func GetTransactionsFromCSV

func GetTransactionsFromCSV(user string, file string, mapping map[string]int) ([]Transaction, error)

func GetTransactionsFromRevolutCSV

func GetTransactionsFromRevolutCSV(user string, file string) ([]Transaction, error)

func NewTransaction

func NewTransaction(
	id string,
	typ string,
	category string,
	date string,
	dateFormat string,
	value string,
	decimalSeparator rune,
	user string) (Transaction, error)

func (*Transaction) GetCategory

func (transaction *Transaction) GetCategory() string

func (*Transaction) GetOutput

func (transaction *Transaction) GetOutput(full bool) string

func (*Transaction) GetTypeVerb

func (transaction *Transaction) GetTypeVerb() string

func (*Transaction) GetValueDecimal

func (transaction *Transaction) GetValueDecimal() decimal.Decimal

func (*Transaction) SetIDFromDatabaseKey

func (transaction *Transaction) SetIDFromDatabaseKey(key string) error

Jump to

Keyboard shortcuts

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