package benefactoraddressservice import ( "context" "git.gocasts.ir/ebhomengo/niki/entity" validator "git.gocasts.ir/ebhomengo/niki/validator/benefactor/address" ) type Repository interface { CreateBenefactorAddress(ctx context.Context, address entity.Address) (entity.Address, error) GetAddressByID(ctx context.Context, id uint) (entity.Address, error) GetAllProvinces(ctx context.Context) ([]entity.Province, error) GetAllCities(ctx context.Context) ([]entity.City, error) UpdateAddress(ctx context.Context, address entity.Address) error GetAddress(ctx context.Context, addressID uint, benefactorID uint) (entity.Address, error) GetAddresses(ctx context.Context, benefactorID uint) ([]entity.Address, error) DeleteBenefactorAddress(ctx context.Context, addressID uint, benefactorID uint) error } type Service struct { repo Repository vld validator.Validator } func New(repo Repository, vld validator.Validator) Service { return Service{repo: repo, vld: vld} }