2025-02-05 18:45:49 +08:00
|
|
|
|
package svc
|
|
|
|
|
|
2025-02-06 15:35:23 +08:00
|
|
|
|
import (
|
|
|
|
|
"context"
|
2025-02-07 15:18:26 +08:00
|
|
|
|
"gitea.youtukeji.com.cn/xiabin/youtu_grpc/app/auth_service/internal/config"
|
|
|
|
|
cli2 "gitea.youtukeji.com.cn/xiabin/youtu_grpc/app/auth_service/pkg"
|
2025-02-06 15:35:23 +08:00
|
|
|
|
redisCache "github.com/silenceper/wechat/v2/cache"
|
|
|
|
|
)
|
2025-02-05 18:45:49 +08:00
|
|
|
|
|
|
|
|
|
type ServiceContext struct {
|
|
|
|
|
Config config.Config
|
2025-02-07 15:18:26 +08:00
|
|
|
|
Cli cli2.Helper
|
2025-02-05 18:45:49 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func NewServiceContext(c config.Config) *ServiceContext {
|
|
|
|
|
return &ServiceContext{
|
|
|
|
|
Config: c,
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-02-06 15:35:23 +08:00
|
|
|
|
|
|
|
|
|
func (svc *ServiceContext) InitClient(c config.Config) {
|
|
|
|
|
|
|
|
|
|
dwCache := redisCache.NewRedis(context.Background(), &redisCache.RedisOpts{Host: c.Redis.Host})
|
|
|
|
|
|
|
|
|
|
//配置小程序cli(抖音&微信)
|
|
|
|
|
for _, v := range c.AppData {
|
2025-02-07 15:18:26 +08:00
|
|
|
|
var c cli2.DWClient
|
2025-02-06 15:35:23 +08:00
|
|
|
|
switch v.Type {
|
2025-02-07 15:18:26 +08:00
|
|
|
|
case cli2.DouyinClientType:
|
|
|
|
|
c = cli2.NewDouYinApi(v.AppId, v.AppSecret, dwCache)
|
|
|
|
|
case cli2.WechatClientType:
|
|
|
|
|
c = cli2.NewWechatApi(v.AppId, v.AppSecret, dwCache)
|
2025-02-06 15:35:23 +08:00
|
|
|
|
default:
|
|
|
|
|
continue
|
|
|
|
|
}
|
|
|
|
|
svc.Cli.Set(v.AppId, c)
|
|
|
|
|
}
|
|
|
|
|
}
|