1 Star 0 Fork 0

lollipop-xyz / g7-keyauth

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
impl.go 1.30 KB
一键复制 编辑 原始数据 按行查看 历史
xy 提交于 2022-11-02 17:25 . 添加user模块
package impl
import (
"context"
"gitee.com/lollipop-xyz/g7-keyauth/apps/user"
"gitee.com/lollipop-xyz/g7-keyauth/conf"
"github.com/infraboard/mcube/app"
"github.com/infraboard/mcube/logger"
"github.com/infraboard/mcube/logger/zap"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
"go.mongodb.org/mongo-driver/x/bsonx"
"google.golang.org/grpc"
)
var (
// Service 服务实例
svr = &impl{}
)
type impl struct {
col *mongo.Collection
log logger.Logger
user.UnimplementedServiceServer
}
func (s *impl) Config() error {
// 依赖MongoDB的DB对象
db, err := conf.C().Mongo.GetDB()
if err != nil {
return err
}
// 获取一个Collection对象, 通过Collection对象 来进行CRUD
s.col = db.Collection(s.Name())
s.log = zap.L().Named(s.Name())
// 创建索引
indexs := []mongo.IndexModel{
{
Keys: bsonx.Doc{
{Key: "data.domain", Value: bsonx.Int32(-1)},
{Key: "data.name", Value: bsonx.Int32(-1)},
},
Options: options.Index().SetUnique(true),
},
}
_, err = s.col.Indexes().CreateMany(context.Background(), indexs)
if err != nil {
return err
}
return nil
}
func (s *impl) Name() string {
return user.AppName
}
func (s *impl) Registry(server *grpc.Server) {
user.RegisterServiceServer(server, svr)
}
func init() {
app.RegistryGrpcApp(svr)
}
1
https://gitee.com/lollipop-xyz/g7-keyauth.git
git@gitee.com:lollipop-xyz/g7-keyauth.git
lollipop-xyz
g7-keyauth
g7-keyauth
v0.0.8

搜索帮助