Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AuthService ¶
type AuthService interface {
Login(context.Context, model.LoginRequest) (*model.LoginResponse, error)
}
func NewAuthService ¶
func NewAuthService(us UserService, JWTSecret string) AuthService
type ProductService ¶
type ProductService interface { Read(context.Context) ([]model.Product, error) Create(ctx context.Context, product model.ProductRequest) error Update(ctx context.Context, product model.ProductRequest) error Delete(ctx context.Context, id int64) error ReadByID(ctx context.Context, productID int64) (*model.Product, error) }
func NewProductService ¶
func NewProductService(repo repository.ProductRepository, timeout time.Duration) ProductService
type TransactionService ¶
type TransactionService interface {
Checkout(ctx context.Context, request model.CreateTransactionRequest) (*model.Transaction, error)
}
func NewTransactionService ¶
func NewTransactionService(transactionRepo repository.TransactionRepository, productRepo repository.ProductRepository, timeout time.Duration) TransactionService
type UserService ¶
type UserService interface { Create(context.Context, model.User) error Read(ctx context.Context) (users []model.User, err error) ReadByUsername(ctx context.Context, username string) (*model.User, error) }
func NewUserService ¶
func NewUserService(urepo repository.UserRepository, timeout time.Duration) UserService
Click to show internal directories.
Click to hide internal directories.