Documentation
¶
Index ¶
- func Open(ctx context.Context, dsn string) (*sql.DB, error)
- func RunMigrations(ctx context.Context, dsn, migrationsDir string) error
- type AccountRepository
- func (r *AccountRepository) Create(ctx context.Context, account domain.Account) (domain.Account, error)
- func (r *AccountRepository) CreditInternalAccount(ctx context.Context, accountNumber string, amount decimal.Decimal) error
- func (r *AccountRepository) DebitInternalAccount(ctx context.Context, accountNumber string, amount decimal.Decimal) error
- func (r *AccountRepository) DepositFunds(ctx context.Context, accountNumber string, amount decimal.Decimal) error
- func (r *AccountRepository) GetByAccountNumber(ctx context.Context, accountNumber string) (domain.Account, error)
- func (r *AccountRepository) HasAccountForCustomerIDAndCurrency(ctx context.Context, customerID string, currency string) (bool, error)
- type RateRepository
- type TransferRepository
- func (r *TransferRepository) Create(ctx context.Context, transfer domain.Transfer) (domain.Transfer, error)
- func (r *TransferRepository) Get(ctx context.Context, id string, transactionReference string, ...) (domain.Transfer, error)
- func (r *TransferRepository) ProcessExternalTransfer(ctx context.Context, debitAccountNumber string, ...) error
- func (r *TransferRepository) ProcessInternalTransfer(ctx context.Context, debitAccountNumber string, debitAmount decimal.Decimal, ...) error
- func (r *TransferRepository) Update(ctx context.Context, transfer domain.Transfer) (domain.Transfer, error)
- func (r *TransferRepository) UpdateStatus(ctx context.Context, transferID string, status domain.TransferStatus) error
- type TransientAccountRepository
- func (r *TransientAccountRepository) CreditSuspenseAccount(ctx context.Context, suspenseAccountNumber string, currency string, ...) error
- func (r *TransientAccountRepository) DebitSuspenseAccount(ctx context.Context, suspenseAccountNumber string, currency string, ...) error
- func (r *TransientAccountRepository) EnsureInternalAccounts(ctx context.Context, internalTransientAccountNumber string, ...) error
- func (r *TransientAccountRepository) SettleFromSuspenseToFees(ctx context.Context, suspenseAccountNumber string, ...) error
- type TransientAccountTransactionRepository
- type UserRepository
- func (r *UserRepository) Create(ctx context.Context, user domain.User) (domain.User, error)
- func (r *UserRepository) GetByCustomerID(ctx context.Context, customerID string) (domain.User, error)
- func (r *UserRepository) GetByID(ctx context.Context, id string) (domain.User, error)
- func (r *UserRepository) GetTransactionPinHashByCustomerID(ctx context.Context, customerID string) (string, error)
- func (r *UserRepository) Update(ctx context.Context, user domain.User) (domain.User, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type AccountRepository ¶
type AccountRepository struct {
// contains filtered or unexported fields
}
func NewAccountRepository ¶
func NewAccountRepository(db *sql.DB) *AccountRepository
func (*AccountRepository) CreditInternalAccount ¶
func (*AccountRepository) DebitInternalAccount ¶
func (*AccountRepository) DepositFunds ¶
func (*AccountRepository) GetByAccountNumber ¶
func (*AccountRepository) HasAccountForCustomerIDAndCurrency ¶
type RateRepository ¶
type RateRepository struct {
// contains filtered or unexported fields
}
func NewRateRepository ¶
func NewRateRepository(db *sql.DB) *RateRepository
func (*RateRepository) EnsureDefaultRates ¶
func (r *RateRepository) EnsureDefaultRates(ctx context.Context) error
type TransferRepository ¶
type TransferRepository struct {
// contains filtered or unexported fields
}
func NewTransferRepository ¶
func NewTransferRepository(db *sql.DB) *TransferRepository
func (*TransferRepository) ProcessExternalTransfer ¶
func (r *TransferRepository) ProcessExternalTransfer( ctx context.Context, debitAccountNumber string, totalDebitAmount decimal.Decimal, suspenseAccountNumber string, debitSuspenseAccountAmount decimal.Decimal, externalAccountNumber string, creditExternalAccountAmount decimal.Decimal, externalAccountCurrency string, ) error
func (*TransferRepository) ProcessInternalTransfer ¶
func (*TransferRepository) UpdateStatus ¶
func (r *TransferRepository) UpdateStatus(ctx context.Context, transferID string, status domain.TransferStatus) error
type TransientAccountRepository ¶
type TransientAccountRepository struct {
// contains filtered or unexported fields
}
func NewTransientAccountRepository ¶
func NewTransientAccountRepository(db *sql.DB) *TransientAccountRepository
func (*TransientAccountRepository) CreditSuspenseAccount ¶
func (*TransientAccountRepository) DebitSuspenseAccount ¶
func (*TransientAccountRepository) EnsureInternalAccounts ¶
func (r *TransientAccountRepository) EnsureInternalAccounts( ctx context.Context, internalTransientAccountNumber string, internalChargesAccountNumber string, internalVATAccountNumber string, externalUSDGLAccountNumber string, externalGBPGLAccountNumber string, externalEURGLAccountNumber string, externalNGNGLAccountNumber string, ) error
func (*TransientAccountRepository) SettleFromSuspenseToFees ¶
type TransientAccountTransactionRepository ¶
type TransientAccountTransactionRepository struct {
// contains filtered or unexported fields
}
func NewTransientAccountTransactionRepository ¶
func NewTransientAccountTransactionRepository(db *sql.DB) *TransientAccountTransactionRepository
func (*TransientAccountTransactionRepository) Create ¶
func (r *TransientAccountTransactionRepository) Create(ctx context.Context, entry domain.TransientAccountTransaction) (domain.TransientAccountTransaction, error)
type UserRepository ¶
type UserRepository struct {
// contains filtered or unexported fields
}
func NewUserRepository ¶
func NewUserRepository(db *sql.DB) *UserRepository
func (*UserRepository) GetByCustomerID ¶
func (*UserRepository) GetTransactionPinHashByCustomerID ¶
Click to show internal directories.
Click to hide internal directories.