浏览代码

自动注册权限列表

zrufo 4 年之前
父节点
当前提交
1dd26296b4
共有 3 个文件被更改,包括 41 次插入1 次删除
  1. 5 1
      assembly/base/init.go
  2. 20 0
      assembly/base/service/base.go
  3. 16 0
      repository/grpc/bsw/im/api.go

+ 5 - 1
assembly/base/init.go

@@ -5,14 +5,18 @@ import (
 	"sportfitness/base/assembly/base/repository"
 	"sportfitness/base/assembly/base/repository/postgre"
 	"sportfitness/base/assembly/base/repository/redis"
+	"sportfitness/base/assembly/base/service"
 )
 
-func Init(){
+func Init() {
 	logrus.Info("基础库初始化")
 	repository.Init()
 	postgre.Init()
 	redis.Init()
 
+	//TODO 添加开关
+	service.RegisterServices()
+
 	logrus.Info("基础库初始化成功")
 	return
 }

+ 20 - 0
assembly/base/service/base.go

@@ -1,4 +1,24 @@
 package service
 
+import (
+	"git.beswell.com/gframe/application"
+	"github.com/sirupsen/logrus"
+	"sportfitness/base/repository/grpc/bsw/im"
+)
+
 type base struct {
 }
+
+func RegisterServices() {
+	application.GetApp().SetServiceRegisterHandler(func(servicePathList []string) {
+		logrus.Info("同步服务权限")
+
+		im.RegisterServiceList(servicePathList)
+	})
+
+	err := application.GetApp().RegisterService("",
+		User{})
+	if err != nil {
+		logrus.Fatalf("服务保存失败: \n%s", err)
+	}
+}

+ 16 - 0
repository/grpc/bsw/im/api.go

@@ -48,3 +48,19 @@ func SignInUserCodePassword(userCode, password, ip, ClientInfo string) (token st
 
 	return
 }
+
+func RegisterServiceList(servicePathList []string) {
+	request := &pb.SaveServiceListRequest{}
+
+	for _, p := range servicePathList {
+		request.List = append(request.List, &pb.Service{
+			Path: p,
+			Memo: "自动添加",
+		})
+	}
+
+	_, err := getClient().SubServiceSaveList(ctx(), request)
+	if err != nil {
+		panic(err)
+	}
+}