package tysk import ( "gitea.cdlsxd.cn/self-tools/tysk/constant" "gitea.cdlsxd.cn/self-tools/tysk/entity" ) type Tysk struct { UserName string // 用户名 Env string // 环境,测试:dev,不传默认正式 } func NewTysk(userName string, opts ...Option) TyskFacecade { tysk := &Tysk{UserName: userName} for _, opt := range opts { opt(tysk) // 应用选项 } return tysk } type Option func(*Tysk) func WithEnvTest() Option { return func(tysk *Tysk) { tysk.Env = "dev" } } func (g *Tysk) GetAccountBalance(accountList []string) (res entity.GetAccountBalanceResp, err error) { err = g.handleRequest(constant.GetAccountBalance, map[string]interface{}{"accountNo": accountList}, &res) return }