Advertisement
erkayes935

transaction_usecase

Dec 29th, 2024
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Go 1.00 KB | Source Code | 0 0
  1. package usecase
  2.  
  3. import (
  4.     "challenge-goapi/model"
  5.     "challenge-goapi/repository"
  6. )
  7.  
  8. type TransactionUseCase interface {
  9.     CreateNewTransaction(billDetail model.BillDetail, billDetails model.BillDetails) (model.BillDetail, model.BillDetails, error)
  10.     FindAllTransaction() ([]model.BillDetail, error)
  11.     FindTransactionById(id string) (model.BillDetail, error)
  12. }
  13.  
  14. type transactionUseCase struct {
  15.     repo repository.TransactionRepository
  16. }
  17.  
  18. func (t *transactionUseCase) CreateNewTransaction(billDetail model.BillDetail, billDetails model.BillDetails) (model.BillDetail, model.BillDetails, error) {
  19.     return t.repo.Create(billDetail, billDetails)
  20. }
  21.  
  22. func (t *transactionUseCase) FindAllTransaction() ([]model.BillDetail, error) {
  23.     return t.repo.List()
  24. }
  25.  
  26. func (t *transactionUseCase) FindTransactionById(id string) (model.BillDetail, error) {
  27.     return t.repo.Get(id)
  28. }
  29.  
  30. func NewTransactionUseCase(repo repository.TransactionRepository) TransactionUseCase {
  31.     return &transactionUseCase{repo: repo}
  32. }
  33.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement