package svc import ( "github.com/zero-ppanel/zero-ppanel/apps/rpc/core/internal/config" "github.com/zero-ppanel/zero-ppanel/apps/rpc/core/internal/repo" "github.com/zeromicro/go-zero/core/stores/redis" "github.com/zeromicro/go-zero/core/stores/sqlx" ) type ServiceContext struct { Config config.Config DB sqlx.SqlConn Redis *redis.Redis DeviceRepo repo.DeviceRepo } func NewServiceContext(c config.Config) *ServiceContext { db := sqlx.NewMysql(c.MySQL.DataSource) rds := redis.MustNewRedis(c.CacheRedis) return &ServiceContext{ Config: c, DB: db, Redis: rds, DeviceRepo: repo.NewDeviceRepo(db), } }