33 lines
1.8 KiB
Go
33 lines
1.8 KiB
Go
package branch
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/SamuelTariku/FortuneBet-Backend/internal/domain"
|
|
)
|
|
|
|
type BranchStore interface {
|
|
CreateBranch(ctx context.Context, branch domain.CreateBranch) (domain.Branch, error)
|
|
GetBranchByID(ctx context.Context, id int64) (domain.BranchDetail, error)
|
|
GetBranchByManagerID(ctx context.Context, branchManagerID int64) ([]domain.BranchDetail, error)
|
|
GetBranchByCompanyID(ctx context.Context, companyID int64) ([]domain.BranchDetail, error)
|
|
GetAllBranches(ctx context.Context, filter domain.BranchFilter) ([]domain.BranchDetail, error)
|
|
SearchBranchByName(ctx context.Context, name string) ([]domain.BranchDetail, error)
|
|
UpdateBranch(ctx context.Context, branch domain.UpdateBranch) (domain.Branch, error)
|
|
DeleteBranch(ctx context.Context, id int64) error
|
|
CreateBranchOperation(ctx context.Context, branchOperation domain.CreateBranchOperation) error
|
|
CreateSupportedOperation(ctx context.Context, supportedOperation domain.CreateSupportedOperation) (domain.SupportedOperation, error)
|
|
GetAllSupportedOperations(ctx context.Context) ([]domain.SupportedOperation, error)
|
|
GetBranchOperations(ctx context.Context, branchID int64) ([]domain.BranchOperation, error)
|
|
DeleteBranchOperation(ctx context.Context, branchID int64, operationID int64) error
|
|
CreateBranchCashier(ctx context.Context, branchID int64, userID int64) error
|
|
GetBranchByCashier(ctx context.Context, userID int64) (domain.Branch, error)
|
|
DeleteBranchCashier(ctx context.Context, userID int64) error
|
|
|
|
GetBranchCounts(ctx context.Context, filter domain.ReportFilter) (total, active, inactive int64, err error)
|
|
GetBranchDetails(ctx context.Context, filter domain.ReportFilter) (map[int64]domain.BranchDetail, error)
|
|
|
|
GetAllCompaniesBranch(ctx context.Context) ([]domain.Company, error)
|
|
GetBranchesByCompany(ctx context.Context, companyID int64) ([]domain.Branch, error)
|
|
}
|