package svc import ( "code.30cm.net/digimon/app-cloudep-permission-server/internal/config" duc "code.30cm.net/digimon/app-cloudep-permission-server/pkg/domain/usecase" "code.30cm.net/digimon/app-cloudep-permission-server/pkg/repository" "code.30cm.net/digimon/app-cloudep-permission-server/pkg/usecase" "github.com/zeromicro/go-zero/core/stores/redis" ) type ServiceContext struct { Config config.Config TokenUseCase duc.TokenUseCase } func NewServiceContext(c config.Config) *ServiceContext { newRedis, err := redis.NewRedis(c.RedisCluster) if err != nil { panic(err) } repo := repository.NewTokenRepository(repository.TokenRepositoryParam{Redis: newRedis}) return &ServiceContext{ Config: c, TokenUseCase: usecase.NewTokenUseCase(usecase.TokenUseCaseParam{ TokenRepo: repo, RefreshExpires: c.Token.RefreshExpires, Expired: c.Token.Expired, Secret: c.Token.Secret, }), } }