package adminkindboxreqservice import ( "context" entity "git.gocasts.ir/ebhomengo/niki/entity" ) type Repository interface { AddKindBoxReq(ctx context.Context, kindBoxReq entity.KindBoxReq) (entity.KindBoxReq, error) UpdateKindBoxReq(ctx context.Context, kindBoxReqID uint, kindBoxReq entity.KindBoxReq) (entity.KindBoxReq, error) // TODO: can benefactor cancel its request ? DeleteKindBoxReq(ctx context.Context, kindBoxReqID uint) error GetAllKindBoxReq(ctx context.Context) ([]entity.KindBoxReq, error) GetKindBoxReq(ctx context.Context, kindBoxReqID uint) (entity.KindBoxReq, error) } // TODO: check validation. type BenefactorService interface { IsBenefactorExist(ctx context.Context, benefactorID uint) (bool, error) } type Service struct { repo Repository benefactorService BenefactorService } func New(repository Repository) Service { return Service{ repo: repository, } }