package notification import ( "context" params "git.gocasts.ir/ebhomengo/niki/param/admin/benefactor" param "git.gocasts.ir/ebhomengo/niki/param/admin/kind_box_req" ) type SmsAdapter interface { Send(phoneNumber string, message string) } type KindBoxReqSvc interface { Get(ctx context.Context, request param.GetKindBoxReqRequest) (param.GetKindBoxReqResponse, error) } type BenefactorSvc interface { GetByID(ctx context.Context, req params.GetBenefactorByIDRequest) (params.GetBenefactorByIDResponse, error) } type Service struct { smsAdapter SmsAdapter KindBoxReqSvc KindBoxReqSvc BenefactorSvc BenefactorSvc } func New(smsAdapter SmsAdapter, kindBoxReqSvc KindBoxReqSvc, benefactorSvc BenefactorSvc) Service { return Service{ smsAdapter: smsAdapter, KindBoxReqSvc: kindBoxReqSvc, BenefactorSvc: benefactorSvc, } }