package adminbenefactorservice import ( "context" "git.gocasts.ir/ebhomengo/niki/entity" "git.gocasts.ir/ebhomengo/niki/param" adminaddressparam "git.gocasts.ir/ebhomengo/niki/param/admin/address" validator "git.gocasts.ir/ebhomengo/niki/validator/admin/benefactor" ) type Repository interface { IsExistBenefactorByID(ctx context.Context, id uint) (bool, error) GetByID(ctx context.Context, id uint) (entity.Benefactor, error) GetAllBenefactor(ctx context.Context, filter param.FilterRequest, pagination param.PaginationRequest, sort param.SortRequest) ([]entity.Benefactor, uint, error) UpdateBenefactor(ctx context.Context, benefactor entity.Benefactor) error UpdateStatusBenefactor(ctx context.Context, benefactor entity.Benefactor, status entity.BenefactorStatus) error } type AddressSvc interface { GetAddressByID(ctx context.Context, request adminaddressparam.AddressGetRequest) (adminaddressparam.AddressGetResponse, error) } type Service struct { repo Repository addressSvc AddressSvc vld validator.Validator } func New(repo Repository, addressSvc AddressSvc, vld validator.Validator) Service { return Service{repo: repo, addressSvc: addressSvc, vld: vld} }