123456 %!s(int64=3) %!d(string=hai) anos
pai
achega
9174462bb5

+ 2 - 0
README.md

@@ -4,4 +4,6 @@ v1.2
 
 $ goctl rpc protoc userCenter.proto --go_out=. --go-grpc_out=. --zrpc_out=.
 
+$ goctl rpc proto -src userCenter.proto -dir .
+
 $ goctl api go -api userCenter.api -dir .

+ 4 - 1
api/etc/usercenter-api.yaml

@@ -16,4 +16,7 @@ Logx:
   Mode: console #console|file|volume
   Path: ./logs
   Level: info #info|error|severe
-  KeepDays: 10
+  KeepDays: 10
+Auth:
+  AccessSecret: jianyuservice
+  AccessExpire: 600

+ 4 - 0
api/internal/config/config.go

@@ -11,4 +11,8 @@ type Config struct {
 	UserCenterRpcConf zrpc.RpcClientConf
 	GatewayRpcConf    zrpc.RpcClientConf
 	Logx              logx.LogConf
+	Auth              struct {
+		AccessSecret string
+		AccessExpire int64
+	}
 }

+ 21 - 0
api/internal/handler/routes.go

@@ -69,4 +69,25 @@ func RegisterHandlers(server *rest.Server, serverCtx *svc.ServiceContext) {
 			},
 		},
 	)
+
+	engine.AddRoutes(
+		[]rest.Route{
+			{
+				Method:  http.MethodPost,
+				Path:    "/userCenter/user/add",
+				Handler: UserAddHandler(serverCtx),
+			},
+			{
+				Method:  http.MethodPost,
+				Path:    "/userCenter/user/updateById",
+				Handler: UserUpdateHandler(serverCtx),
+			},
+			{
+				Method:  http.MethodPost,
+				Path:    "/userCenter/user/deleteById",
+				Handler: UserDelHandler(serverCtx),
+			},
+		},
+		rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
+	)
 }

+ 29 - 0
api/internal/handler/useraddhandler.go

@@ -0,0 +1,29 @@
+package handler
+
+import (
+	"net/http"
+
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/api/internal/logic"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/api/internal/svc"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/api/internal/types"
+
+	"github.com/zeromicro/go-zero/rest/httpx"
+)
+
+func UserAddHandler(ctx *svc.ServiceContext) http.HandlerFunc {
+	return func(w http.ResponseWriter, r *http.Request) {
+		var req types.UserAddReq
+		if err := httpx.Parse(r, &req); err != nil {
+			httpx.Error(w, err)
+			return
+		}
+
+		l := logic.NewUserAddLogic(r.Context(), ctx)
+		resp, err := l.UserAdd(req)
+		if err != nil {
+			httpx.Error(w, err)
+		} else {
+			httpx.OkJson(w, resp)
+		}
+	}
+}

+ 29 - 0
api/internal/handler/userdelhandler.go

@@ -0,0 +1,29 @@
+package handler
+
+import (
+	"net/http"
+
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/api/internal/logic"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/api/internal/svc"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/api/internal/types"
+
+	"github.com/zeromicro/go-zero/rest/httpx"
+)
+
+func UserDelHandler(ctx *svc.ServiceContext) http.HandlerFunc {
+	return func(w http.ResponseWriter, r *http.Request) {
+		var req types.UserDelReq
+		if err := httpx.Parse(r, &req); err != nil {
+			httpx.Error(w, err)
+			return
+		}
+
+		l := logic.NewUserDelLogic(r.Context(), ctx)
+		resp, err := l.UserDel(req)
+		if err != nil {
+			httpx.Error(w, err)
+		} else {
+			httpx.OkJson(w, resp)
+		}
+	}
+}

+ 29 - 0
api/internal/handler/userupdatehandler.go

@@ -0,0 +1,29 @@
+package handler
+
+import (
+	"net/http"
+
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/api/internal/logic"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/api/internal/svc"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/api/internal/types"
+
+	"github.com/zeromicro/go-zero/rest/httpx"
+)
+
+func UserUpdateHandler(ctx *svc.ServiceContext) http.HandlerFunc {
+	return func(w http.ResponseWriter, r *http.Request) {
+		var req types.UserUpdateReq
+		if err := httpx.Parse(r, &req); err != nil {
+			httpx.Error(w, err)
+			return
+		}
+
+		l := logic.NewUserUpdateLogic(r.Context(), ctx)
+		resp, err := l.UserUpdate(req)
+		if err != nil {
+			httpx.Error(w, err)
+		} else {
+			httpx.OkJson(w, resp)
+		}
+	}
+}

+ 46 - 0
api/internal/logic/useraddlogic.go

@@ -0,0 +1,46 @@
+package logic
+
+import (
+	"context"
+
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/api/internal/svc"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/api/internal/types"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/entity"
+	. "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/usercenter"
+	"github.com/zeromicro/go-zero/core/logx"
+)
+
+type UserAddLogic struct {
+	logx.Logger
+	ctx    context.Context
+	svcCtx *svc.ServiceContext
+}
+
+func NewUserAddLogic(ctx context.Context, svcCtx *svc.ServiceContext) UserAddLogic {
+	return UserAddLogic{
+		Logger: logx.WithContext(ctx),
+		ctx:    ctx,
+		svcCtx: svcCtx,
+	}
+}
+
+func (l *UserAddLogic) UserAdd(req types.UserAddReq) (*types.Resp, error) {
+	// todo: add your logic here and delete this line
+	res, err := entity.UserCenterRpc.UserAdd(l.ctx, &UserAddReq{
+		Appid:    req.Appid,
+		Phone:    req.Phone,
+		Nickname: req.Nickname,
+		Headimg:  req.Headimg,
+		Company:  req.Company,
+		Position: req.Position,
+		Password: req.Password,
+		AOpenid:  req.AOpenid,
+		SOpenid:  req.SOpenid,
+		Unionid:  req.Unionid,
+	})
+	return &types.Resp{
+		Error_code: res.ErrorCode,
+		Error_msg:  res.ErrorMsg,
+		Data:       res.Data,
+	}, err
+}

+ 37 - 0
api/internal/logic/userdellogic.go

@@ -0,0 +1,37 @@
+package logic
+
+import (
+	"context"
+
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/api/internal/svc"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/api/internal/types"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/entity"
+	. "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/usercenter"
+	"github.com/zeromicro/go-zero/core/logx"
+)
+
+type UserDelLogic struct {
+	logx.Logger
+	ctx    context.Context
+	svcCtx *svc.ServiceContext
+}
+
+func NewUserDelLogic(ctx context.Context, svcCtx *svc.ServiceContext) UserDelLogic {
+	return UserDelLogic{
+		Logger: logx.WithContext(ctx),
+		ctx:    ctx,
+		svcCtx: svcCtx,
+	}
+}
+
+func (l *UserDelLogic) UserDel(req types.UserDelReq) (*types.Resp, error) {
+	// todo: add your logic here and delete this line
+	res, err := entity.UserCenterRpc.UserDel(l.ctx, &UserIdReq{
+		Id: req.Id,
+	})
+	return &types.Resp{
+		Error_code: res.ErrorCode,
+		Error_msg:  res.ErrorMsg,
+		Data:       res.Data,
+	}, err
+}

+ 47 - 0
api/internal/logic/userupdatelogic.go

@@ -0,0 +1,47 @@
+package logic
+
+import (
+	"context"
+
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/api/internal/svc"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/api/internal/types"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/entity"
+	. "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/usercenter"
+	"github.com/zeromicro/go-zero/core/logx"
+)
+
+type UserUpdateLogic struct {
+	logx.Logger
+	ctx    context.Context
+	svcCtx *svc.ServiceContext
+}
+
+func NewUserUpdateLogic(ctx context.Context, svcCtx *svc.ServiceContext) UserUpdateLogic {
+	return UserUpdateLogic{
+		Logger: logx.WithContext(ctx),
+		ctx:    ctx,
+		svcCtx: svcCtx,
+	}
+}
+
+func (l *UserUpdateLogic) UserUpdate(req types.UserUpdateReq) (*types.Resp, error) {
+	// todo: add your logic here and delete this line
+	res, err := entity.UserCenterRpc.UserUpdate(l.ctx, &UserIdReq{
+		Appid:    req.Appid,
+		Id:       req.Id,
+		Phone:    req.Phone,
+		Nickname: req.Nickname,
+		Headimg:  req.Headimg,
+		Company:  req.Company,
+		Position: req.Position,
+		Password: req.Password,
+		AOpenid:  req.AOpenid,
+		SOpenid:  req.SOpenid,
+		Unionid:  req.Unionid,
+	})
+	return &types.Resp{
+		Error_code: res.ErrorCode,
+		Error_msg:  res.ErrorMsg,
+		Data:       res.Data,
+	}, err
+}

+ 34 - 0
api/internal/types/types.go

@@ -186,6 +186,40 @@ type GetStatus struct {
 	IsInEnt    bool  `json:"isInEnt"`
 }
 
+type UserAddReq struct {
+	Authorization string `header:"Authorization"`
+	Appid         string `json:"appid"`
+	Phone         string `json:"phone,optional"`
+	Nickname      string `json:"nickname,optional"`
+	Headimg       string `json:"headimg,optional"`
+	Company       string `json:"company,optional"`
+	Position      string `json:"position,optional"`
+	Password      string `json:"password,optional"`
+	SOpenid       string `json:"s_openid,optional"`
+	AOpenid       string `json:"a_openid,optional"`
+	Unionid       string `json:"unionid,optional"`
+}
+
+type UserUpdateReq struct {
+	Authorization string `header:"Authorization"`
+	Appid         string `json:"appid"`
+	Id            int64  `json:"id"`
+	Phone         string `json:"phone,optional"`
+	Nickname      string `json:"nickname,optional"`
+	Headimg       string `json:"headimg,optional"`
+	Company       string `json:"company,optional"`
+	Position      string `json:"position,optional"`
+	Password      string `json:"password,optional"`
+	SOpenid       string `json:"s_openid,optional"`
+	AOpenid       string `json:"a_openid,optional"`
+	Unionid       string `json:"unionid,optional"`
+}
+
+type UserDelReq struct {
+	Authorization string `header:"Authorization"`
+	Id            int64  `json:"id"`
+}
+
 type UserReq struct {
 	AppId  string `header:"appId,default=10000"`
 	UserId int64  `json:"userId"`         //base_user_id

+ 52 - 5
api/userCenter.api

@@ -209,6 +209,40 @@ type (
 		AppId     string `header:"appId,default=10000"`
 		EntUserId int64  `json:"entUserId"`
 	}
+	
+	UserAddReq {
+		Authorization string `header:"Authorization"`
+		Appid         string `json:"appid"`
+		Phone         string `json:"phone,optional"`
+		Nickname      string `json:"nickname,optional"`
+		Headimg       string `json:"headimg,optional"`
+		Company       string `json:"company,optional"`
+		Position      string `json:"position,optional"`
+		Password      string `json:"password,optional"`
+		SOpenid       string `json:"s_openid,optional"`
+		AOpenid       string `json:"a_openid,optional"`
+		Unionid       string `json:"unionid,optional"`
+	}
+
+	UserUpdateReq {
+		Authorization string `header:"Authorization"`
+		Appid         string `json:"appid"`
+		Id            int64  `json:"id"`
+		Phone         string `json:"phone,optional"`
+		Nickname      string `json:"nickname,optional"`
+		Headimg       string `json:"headimg,optional"`
+		Company       string `json:"company,optional"`
+		Position      string `json:"position,optional"`
+		Password      string `json:"password,optional"`
+		SOpenid       string `json:"s_openid,optional"`
+		AOpenid       string `json:"a_openid,optional"`
+		Unionid       string `json:"unionid,optional"`
+	}
+
+	UserDelReq {
+		Authorization string `header:"Authorization"`
+		Id            int64  `json:"id"`
+	}
 )
 
 service userCenter-api {
@@ -219,19 +253,32 @@ service userCenter-api {
 	@handler EntAuth
 	post /userCenter/ent/auth (authEntReq) returns(resp)
 	@handler EntList
-	post /userCenter/ent/list (entListReq)returns (entListResp)
+	post /userCenter/ent/list (entListReq) returns (entListResp)
 	@handler ExamineList
-	post /userCenter/ent/examineList(ExamineListReq) returns (ExamineListResp)
+	post /userCenter/ent/examineList (ExamineListReq) returns (ExamineListResp)
 	@handler EntInfo
-	post /userCenter/ent/info (checkEntReq)returns(EntInfoResp)
+	post /userCenter/ent/info (checkEntReq) returns (EntInfoResp)
 	@handler ExamineInfo
-	post /userCenter/ent/examineInfo(ExamineInfoReq) returns(ExamineInfoResp)
+	post /userCenter/ent/examineInfo (ExamineInfoReq) returns (ExamineInfoResp)
 	@handler UpdateEnt
-	post /userCenter/ent/update(UpdateEntReq)returns(resp)
+	post /userCenter/ent/update (UpdateEntReq) returns (resp)
 	@handler GetStatusByCode
 	post /userCenter/ent/getStatusByCode(GetStatusByCodeReq)returns(GetStatusByCodeResp)
 	@handler GetUserInfo
 	post /userCenter/user/getUserInfo(UserReq)returns(resp)
 	@handler GetEntUserInfo
 	post  /userCenter/ent/userInfo(EntUserReq)returns(resp)
+}
+
+
+@server(
+	jwt: Auth
+)
+service userCenter-api {
+	@handler UserAdd
+	post /userCenter/user/add (UserAddReq) returns (resp)
+	@handler UserUpdate
+	post /userCenter/user/updateById (UserUpdateReq) returns (resp)
+	@handler UserDel
+	post /userCenter/user/deleteById (UserDelReq) returns (resp)
 }

+ 5 - 2
entity/db.go

@@ -6,6 +6,9 @@ import (
 )
 
 var (
-	Mysql *mysql.Mysql
-	Mgo   mongodb.MongodbSim
+	Mgo               mongodb.MongodbSim
+	Mysql             *mysql.Mysql
+	BaseMysql         *mysql.Mysql
+	UserTable         = "base_user"
+	UserSnapshotTable = "base_user_snapshot"
 )

+ 3 - 1
go.mod

@@ -5,9 +5,11 @@ go 1.16
 require (
 	app.yhyue.com/moapp/jyInfo v1.0.0
 	app.yhyue.com/moapp/jybase v0.0.0-20220421060131-a1001013ba46
-	bp.jydev.jianyu360.cn/BaseService/gateway v0.0.0-20220421060822-97590f0dd0d9
+	bp.jydev.jianyu360.cn/BaseService/gateway v1.3.4
 	bp.jydev.jianyu360.cn/BaseService/resourceCenter v0.0.0-20220420075831-0b59892e9982
+	github.com/golang/protobuf v1.5.2
 	github.com/zeromicro/go-zero v1.3.2
+	golang.org/x/net v0.0.0-20220706163947-c90051bbdb60 // indirect
 	google.golang.org/grpc v1.45.0
 	google.golang.org/protobuf v1.28.0
 

+ 6 - 4
go.sum

@@ -9,8 +9,8 @@ app.yhyue.com/moapp/jybase v0.0.0-20220421060131-a1001013ba46 h1:ME9XyG40U8JQh70
 app.yhyue.com/moapp/jybase v0.0.0-20220421060131-a1001013ba46/go.mod h1:qNRA0sHuYqcLoYoP8irpaWnW9YsXixe6obBIkwaXpD0=
 bp.jydev.jianyu360.cn/BP/jynsq v0.0.0-20220222052708-ebc43af90698/go.mod h1:ojo/AUH9Yr1wzarEjOaNMkj1Cet/9r8IgLyba64Z52E=
 bp.jydev.jianyu360.cn/BaseService/gateway v0.0.0-20220419090715-88ddb32961be/go.mod h1:Yj4oabIGItuMoF0BXYLz2XAnF581kxgXBrvlUtIJrkI=
-bp.jydev.jianyu360.cn/BaseService/gateway v0.0.0-20220421060822-97590f0dd0d9 h1:zjVPX/5Mz+99PDlgwJ77JTFTz6pVhapGuUX02VH44a4=
-bp.jydev.jianyu360.cn/BaseService/gateway v0.0.0-20220421060822-97590f0dd0d9/go.mod h1:BMLd/5wb3BIEGhnEgF9y1sJN9P5/Dw9kYsoiE9V8I9g=
+bp.jydev.jianyu360.cn/BaseService/gateway v1.3.4 h1:zl5eZrKDBENVVBUiPpzyQQ0/SBdGUmZS3thXycSEO1g=
+bp.jydev.jianyu360.cn/BaseService/gateway v1.3.4/go.mod h1:BMLd/5wb3BIEGhnEgF9y1sJN9P5/Dw9kYsoiE9V8I9g=
 bp.jydev.jianyu360.cn/BaseService/resourceCenter v0.0.0-20220418005748-8ba5d936dd53/go.mod h1:E5lcDI3k4FESLxiAetCfWQTq8qfpy9cv0yN1oKoEO34=
 bp.jydev.jianyu360.cn/BaseService/resourceCenter v0.0.0-20220419023723-0b32d4a41751/go.mod h1:6KL5LMEku83uRbre0W/bj5kXG2I6pJGBFtktmtp51yM=
 bp.jydev.jianyu360.cn/BaseService/resourceCenter v0.0.0-20220419063004-233fc7ce006c/go.mod h1:6KL5LMEku83uRbre0W/bj5kXG2I6pJGBFtktmtp51yM=
@@ -658,8 +658,9 @@ golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qx
 golang.org/x/net v0.0.0-20210805182204-aaa1db679c0d/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
 golang.org/x/net v0.0.0-20210917221730-978cfadd31cf/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
 golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
-golang.org/x/net v0.0.0-20220225172249-27dd8689420f h1:oA4XRj0qtSt8Yo1Zms0CUlsT3KG69V2UGQWPBxujDmc=
 golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk=
+golang.org/x/net v0.0.0-20220706163947-c90051bbdb60 h1:8NSylCMxLW4JvserAndSgFL7aPli6A68yf0bYFTcWCM=
+golang.org/x/net v0.0.0-20220706163947-c90051bbdb60/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
 golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
 golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
 golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
@@ -738,8 +739,9 @@ golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBc
 golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
 golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
 golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.0.0-20220227234510-4e6760a101f9 h1:nhht2DYV/Sn3qOayu8lM+cU1ii9sTLUeBQwQQfUHtrs=
 golang.org/x/sys v0.0.0-20220227234510-4e6760a101f9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a h1:dGzPydgVsqGcTRVwiLJ1jVbufYwmzD3LfVPLKsKg+0k=
+golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
 golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
 golang.org/x/term v0.0.0-20210927222741-03fcf44c2211 h1:JGgROgKl9N8DuW20oFS5gxc+lE67/N3FcwmBPMe7ArY=
 golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=

+ 7 - 0
rpc/etc/usercenter.yaml

@@ -23,6 +23,13 @@ Mysql:
   passWord: Topnet123
   maxOpenConns: 5
   maxIdleConns: 5
+BaseMysql:
+  dbName: base_service  
+  address: 192.168.3.217:4000
+  userName: root
+  passWord: "=PDT49#80Z!RVv52_z"
+  maxOpenConns: 5
+  maxIdleConns: 5
 Logx:
   Mode: file #console|file|volume
   Path: logs

+ 1 - 0
rpc/internal/config/config.go

@@ -16,6 +16,7 @@ type Config struct {
 	ResourceEtcdConf zrpc.RpcClientConf //资源中台
 	Node             int                // 节点
 	Mysql            Mysql
+	BaseMysql        Mysql
 	Logx             logx.LogConf
 	IsRun            bool   //定时任务是否开启
 	CheckEntIsExpire string //

+ 9 - 0
rpc/internal/db/db.go

@@ -19,6 +19,15 @@ func init() {
 		MaxIdleConns: config.ConfigJson.Mysql.MaxIdleConns,
 	}
 	entity.Mysql.Init()
+	entity.BaseMysql = &mysql.Mysql{
+		Address:      config.ConfigJson.BaseMysql.Address,
+		UserName:     config.ConfigJson.BaseMysql.UserName,
+		PassWord:     config.ConfigJson.BaseMysql.PassWord,
+		DBName:       config.ConfigJson.BaseMysql.DbName,
+		MaxOpenConns: config.ConfigJson.BaseMysql.MaxOpenConns,
+		MaxIdleConns: config.ConfigJson.BaseMysql.MaxIdleConns,
+	}
+	entity.BaseMysql.Init()
 	log.Println("初始化 mysql")
 
 	entity.Mgo = mongodb.MongodbSim{

+ 1 - 1
rpc/internal/logic/checkentlogic.go

@@ -30,7 +30,7 @@ func (l *CheckEntLogic) CheckEnt(in *pb.CheckEntReq) (*pb.CheckEntResp, error) {
 	return &pb.CheckEntResp{
 		ErrorCode: code,
 		ErrorMsg:  msg,
-		Data: &pb.CheckEntRespCheckData{
+		Data: &pb.CheckData{
 			AuthStatus:   authStatus,
 			FrozenStatus: frozenStatus,
 		},

+ 1 - 1
rpc/internal/logic/entexaminelogic.go

@@ -30,7 +30,7 @@ func (l *EntExamineLogic) EntExamine(in *pb.ExamineReq) (*pb.ExamineResp, error)
 	return &pb.ExamineResp{
 		ErrorCode: code,
 		ErrorMsg:  msg,
-		Data: &pb.ExamineResp_ExamineData{
+		Data: &pb.ExamineData{
 			Status: status,
 		},
 	}, nil

+ 1 - 1
rpc/internal/logic/entupdatelogic.go

@@ -30,7 +30,7 @@ func (l *EntUpdateLogic) EntUpdate(in *pb.EntUpdateReq) (*pb.ExamineResp, error)
 	return &pb.ExamineResp{
 		ErrorCode: code,
 		ErrorMsg:  msg,
-		Data: &pb.ExamineResp_ExamineData{
+		Data: &pb.ExamineData{
 			Status: status,
 		},
 	}, nil

+ 1 - 1
rpc/internal/logic/getstatusbycodelogic.go

@@ -30,7 +30,7 @@ func (l *GetStatusByCodeLogic) GetStatusByCode(in *pb.GetStatusByCodeReq) (*pb.G
 	return &pb.GetStatusByCodeResp{
 		ErrorMsg:  msg,
 		ErrorCode: 0,
-		Data: &pb.GetStatusByCodeResp_GetStatusByCode{
+		Data: &pb.GetStatusByCode{
 			AuthStatus: int64(status),
 			IsInEnt:    isIn,
 		},

+ 31 - 0
rpc/internal/logic/useraddlogic.go

@@ -0,0 +1,31 @@
+package logic
+
+import (
+	"context"
+
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/internal/svc"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/pb"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/service"
+	"github.com/zeromicro/go-zero/core/logx"
+)
+
+type UserAddLogic struct {
+	ctx    context.Context
+	svcCtx *svc.ServiceContext
+	logx.Logger
+}
+
+func NewUserAddLogic(ctx context.Context, svcCtx *svc.ServiceContext) *UserAddLogic {
+	return &UserAddLogic{
+		ctx:    ctx,
+		svcCtx: svcCtx,
+		Logger: logx.WithContext(ctx),
+	}
+}
+
+// 新增用户
+func (l *UserAddLogic) UserAdd(in *pb.UserAddReq) (*pb.UserAddResp, error) {
+	// todo: add your logic here and delete this line
+
+	return service.UserAdd(in), nil
+}

+ 31 - 0
rpc/internal/logic/userdellogic.go

@@ -0,0 +1,31 @@
+package logic
+
+import (
+	"context"
+
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/internal/svc"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/pb"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/service"
+	"github.com/zeromicro/go-zero/core/logx"
+)
+
+type UserDelLogic struct {
+	ctx    context.Context
+	svcCtx *svc.ServiceContext
+	logx.Logger
+}
+
+func NewUserDelLogic(ctx context.Context, svcCtx *svc.ServiceContext) *UserDelLogic {
+	return &UserDelLogic{
+		ctx:    ctx,
+		svcCtx: svcCtx,
+		Logger: logx.WithContext(ctx),
+	}
+}
+
+// 删除用户
+func (l *UserDelLogic) UserDel(in *pb.UserIdReq) (*pb.ExamineResp, error) {
+	// todo: add your logic here and delete this line
+
+	return service.UserDel(in), nil
+}

+ 32 - 0
rpc/internal/logic/userupdatelogic.go

@@ -0,0 +1,32 @@
+package logic
+
+import (
+	"context"
+
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/internal/svc"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/pb"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/service"
+
+	"github.com/zeromicro/go-zero/core/logx"
+)
+
+type UserUpdateLogic struct {
+	ctx    context.Context
+	svcCtx *svc.ServiceContext
+	logx.Logger
+}
+
+func NewUserUpdateLogic(ctx context.Context, svcCtx *svc.ServiceContext) *UserUpdateLogic {
+	return &UserUpdateLogic{
+		ctx:    ctx,
+		svcCtx: svcCtx,
+		Logger: logx.WithContext(ctx),
+	}
+}
+
+// 更新用户
+func (l *UserUpdateLogic) UserUpdate(in *pb.UserIdReq) (*pb.ExamineResp, error) {
+	// todo: add your logic here and delete this line
+
+	return service.UserUpdate(in), nil
+}

+ 20 - 2
rpc/internal/server/usercenterserver.go

@@ -13,7 +13,6 @@ import (
 
 type UserCenterServer struct {
 	svcCtx *svc.ServiceContext
-	pb.UnimplementedUserCenterServer
 }
 
 func NewUserCenterServer(svcCtx *svc.ServiceContext) *UserCenterServer {
@@ -58,7 +57,7 @@ func (s *UserCenterServer) EntInfo(ctx context.Context, in *pb.CheckEntReq) (*pb
 	return l.EntInfo(in)
 }
 
-//  冻结/解冻企业
+// 冻结/解冻企业
 func (s *UserCenterServer) EntUpdate(ctx context.Context, in *pb.EntUpdateReq) (*pb.ExamineResp, error) {
 	l := logic.NewEntUpdateLogic(ctx, s.svcCtx)
 	return l.EntUpdate(in)
@@ -76,6 +75,7 @@ func (s *UserCenterServer) GetStatusByCode(ctx context.Context, in *pb.GetStatus
 	return l.GetStatusByCode(in)
 }
 
+<<<<<<< HEAD
 // 获取客户信息
 func (s *UserCenterServer) GetUserInfo(ctx context.Context, in *pb.UserReq) (*pb.UserInfo, error) {
 	l := logic.NewGetUserInfoLogic(ctx, s.svcCtx)
@@ -99,3 +99,21 @@ func (s *UserCenterServer) CheckIsEntAdmin(ctx context.Context, in *pb.EntUserRe
 	l := logic.NewCheckIsEntAdminLogic(ctx, s.svcCtx)
 	return l.CheckIsEntAdmin(in)
 }
+
+// 新增用户
+func (s *UserCenterServer) UserAdd(ctx context.Context, in *pb.UserAddReq) (*pb.UserAddResp, error) {
+	l := logic.NewUserAddLogic(ctx, s.svcCtx)
+	return l.UserAdd(in)
+}
+
+// 更新用户
+func (s *UserCenterServer) UserUpdate(ctx context.Context, in *pb.UserIdReq) (*pb.ExamineResp, error) {
+	l := logic.NewUserUpdateLogic(ctx, s.svcCtx)
+	return l.UserUpdate(in)
+}
+
+// 删除用户
+func (s *UserCenterServer) UserDel(ctx context.Context, in *pb.UserIdReq) (*pb.ExamineResp, error) {
+	l := logic.NewUserDelLogic(ctx, s.svcCtx)
+	return l.UserDel(in)
+}

BIN=BIN
rpc/pb/.DS_Store


+ 0 - 3797
rpc/pb/userCenter.pb.go

@@ -1,3797 +0,0 @@
-// Code generated by protoc-gen-go. DO NOT EDIT.
-// versions:
-// 	protoc-gen-go v1.27.1
-// 	protoc        v3.19.4
-// source: userCenter.proto
-
-package pb
-
-import (
-	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
-	reflect "reflect"
-	sync "sync"
-)
-
-const (
-	// Verify that this generated code is sufficiently up-to-date.
-	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
-	// Verify that runtime/protoimpl is sufficiently up-to-date.
-	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
-)
-
-//机构认证 入参
-type EntAuthReq struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Name             string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`                         //机构/企业名称
-	CreditCode       string `protobuf:"bytes,2,opt,name=creditCode,proto3" json:"creditCode,omitempty"`             //统一社会信用代码
-	AreaNumber       string `protobuf:"bytes,3,opt,name=areaNumber,proto3" json:"areaNumber,omitempty"`             //省市(行政区划代码)
-	Business         string `protobuf:"bytes,4,opt,name=business,proto3" json:"business,omitempty"`                 //营业执照
-	OfficialLetter   string `protobuf:"bytes,5,opt,name=officialLetter,proto3" json:"officialLetter,omitempty"`     //认证公函
-	OrganizationType string `protobuf:"bytes,6,opt,name=organizationType,proto3" json:"organizationType,omitempty"` //机构类型  1投标企业  2招标采购单位 3厂商 4招标代理机构 5经销商  6服务提供商  7其他
-	ComPanyType      string `protobuf:"bytes,7,opt,name=comPanyType,proto3" json:"comPanyType,omitempty"`           //机构性质    1企业   2党政机关事业单位及其他
-	AuthName         string `protobuf:"bytes,8,opt,name=authName,proto3" json:"authName,omitempty"`                 //联系人姓名
-	AuthPhone        string `protobuf:"bytes,9,opt,name=authPhone,proto3" json:"authPhone,omitempty"`               //联系人手机号
-	Phone            string `protobuf:"bytes,10,opt,name=phone,proto3" json:"phone,omitempty"`                      //注册手机号
-	EntId            int64  `protobuf:"varint,11,opt,name=entId,proto3" json:"entId,omitempty"`                     //企业id
-}
-
-func (x *EntAuthReq) Reset() {
-	*x = EntAuthReq{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[0]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *EntAuthReq) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*EntAuthReq) ProtoMessage() {}
-
-func (x *EntAuthReq) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[0]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use EntAuthReq.ProtoReflect.Descriptor instead.
-func (*EntAuthReq) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{0}
-}
-
-func (x *EntAuthReq) GetName() string {
-	if x != nil {
-		return x.Name
-	}
-	return ""
-}
-
-func (x *EntAuthReq) GetCreditCode() string {
-	if x != nil {
-		return x.CreditCode
-	}
-	return ""
-}
-
-func (x *EntAuthReq) GetAreaNumber() string {
-	if x != nil {
-		return x.AreaNumber
-	}
-	return ""
-}
-
-func (x *EntAuthReq) GetBusiness() string {
-	if x != nil {
-		return x.Business
-	}
-	return ""
-}
-
-func (x *EntAuthReq) GetOfficialLetter() string {
-	if x != nil {
-		return x.OfficialLetter
-	}
-	return ""
-}
-
-func (x *EntAuthReq) GetOrganizationType() string {
-	if x != nil {
-		return x.OrganizationType
-	}
-	return ""
-}
-
-func (x *EntAuthReq) GetComPanyType() string {
-	if x != nil {
-		return x.ComPanyType
-	}
-	return ""
-}
-
-func (x *EntAuthReq) GetAuthName() string {
-	if x != nil {
-		return x.AuthName
-	}
-	return ""
-}
-
-func (x *EntAuthReq) GetAuthPhone() string {
-	if x != nil {
-		return x.AuthPhone
-	}
-	return ""
-}
-
-func (x *EntAuthReq) GetPhone() string {
-	if x != nil {
-		return x.Phone
-	}
-	return ""
-}
-
-func (x *EntAuthReq) GetEntId() int64 {
-	if x != nil {
-		return x.EntId
-	}
-	return 0
-}
-
-//机构认证出参
-type EntAuthResp struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	ErrorCode int64        `protobuf:"varint,1,opt,name=error_code,json=errorCode,proto3" json:"error_code,omitempty"`
-	ErrorMsg  string       `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`
-	Data      *EntAuthData `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
-}
-
-func (x *EntAuthResp) Reset() {
-	*x = EntAuthResp{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[1]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *EntAuthResp) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*EntAuthResp) ProtoMessage() {}
-
-func (x *EntAuthResp) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[1]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use EntAuthResp.ProtoReflect.Descriptor instead.
-func (*EntAuthResp) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{1}
-}
-
-func (x *EntAuthResp) GetErrorCode() int64 {
-	if x != nil {
-		return x.ErrorCode
-	}
-	return 0
-}
-
-func (x *EntAuthResp) GetErrorMsg() string {
-	if x != nil {
-		return x.ErrorMsg
-	}
-	return ""
-}
-
-func (x *EntAuthResp) GetData() *EntAuthData {
-	if x != nil {
-		return x.Data
-	}
-	return nil
-}
-
-//机构认证出参
-type EntAuthData struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Status int64  `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
-	EntId  string `protobuf:"bytes,2,opt,name=entId,proto3" json:"entId,omitempty"` //加密的entid
-}
-
-func (x *EntAuthData) Reset() {
-	*x = EntAuthData{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[2]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *EntAuthData) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*EntAuthData) ProtoMessage() {}
-
-func (x *EntAuthData) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[2]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use EntAuthData.ProtoReflect.Descriptor instead.
-func (*EntAuthData) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{2}
-}
-
-func (x *EntAuthData) GetStatus() int64 {
-	if x != nil {
-		return x.Status
-	}
-	return 0
-}
-
-func (x *EntAuthData) GetEntId() string {
-	if x != nil {
-		return x.EntId
-	}
-	return ""
-}
-
-//机构审核入参
-type ExamineReq struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	EntId     int64  `protobuf:"varint,1,opt,name=EntId,proto3" json:"EntId,omitempty"`        //企业id
-	AuthType  string `protobuf:"bytes,2,opt,name=AuthType,proto3" json:"AuthType,omitempty"`   //审核状态  2审核通过  3审核不通过
-	Reason    string `protobuf:"bytes,3,opt,name=Reason,proto3" json:"Reason,omitempty"`       //不通过原因
-	AuditUser string `protobuf:"bytes,4,opt,name=AuditUser,proto3" json:"AuditUser,omitempty"` //审核人
-	ExamineId string `protobuf:"bytes,5,opt,name=ExamineId,proto3" json:"ExamineId,omitempty"` //审核id 认证记录表主键id
-}
-
-func (x *ExamineReq) Reset() {
-	*x = ExamineReq{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[3]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *ExamineReq) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*ExamineReq) ProtoMessage() {}
-
-func (x *ExamineReq) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[3]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use ExamineReq.ProtoReflect.Descriptor instead.
-func (*ExamineReq) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{3}
-}
-
-func (x *ExamineReq) GetEntId() int64 {
-	if x != nil {
-		return x.EntId
-	}
-	return 0
-}
-
-func (x *ExamineReq) GetAuthType() string {
-	if x != nil {
-		return x.AuthType
-	}
-	return ""
-}
-
-func (x *ExamineReq) GetReason() string {
-	if x != nil {
-		return x.Reason
-	}
-	return ""
-}
-
-func (x *ExamineReq) GetAuditUser() string {
-	if x != nil {
-		return x.AuditUser
-	}
-	return ""
-}
-
-func (x *ExamineReq) GetExamineId() string {
-	if x != nil {
-		return x.ExamineId
-	}
-	return ""
-}
-
-//机构审核出参
-type ExamineResp struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	ErrorCode int64                    `protobuf:"varint,1,opt,name=error_code,json=errorCode,proto3" json:"error_code,omitempty"`
-	ErrorMsg  string                   `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`
-	Data      *ExamineResp_ExamineData `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
-}
-
-func (x *ExamineResp) Reset() {
-	*x = ExamineResp{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[4]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *ExamineResp) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*ExamineResp) ProtoMessage() {}
-
-func (x *ExamineResp) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[4]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use ExamineResp.ProtoReflect.Descriptor instead.
-func (*ExamineResp) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{4}
-}
-
-func (x *ExamineResp) GetErrorCode() int64 {
-	if x != nil {
-		return x.ErrorCode
-	}
-	return 0
-}
-
-func (x *ExamineResp) GetErrorMsg() string {
-	if x != nil {
-		return x.ErrorMsg
-	}
-	return ""
-}
-
-func (x *ExamineResp) GetData() *ExamineResp_ExamineData {
-	if x != nil {
-		return x.Data
-	}
-	return nil
-}
-
-//企业列表入参
-type EntListReq struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Name            string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`                       //企业名称
-	PageNum         string `protobuf:"bytes,2,opt,name=pageNum,proto3" json:"pageNum,omitempty"`                 //页码,不传默认第一页 第一页为0
-	PageSize        string `protobuf:"bytes,3,opt,name=pageSize,proto3" json:"pageSize,omitempty"`               //每页显示条数,不传默认为10
-	CreditCode      string `protobuf:"bytes,4,opt,name=creditCode,proto3" json:"creditCode,omitempty"`           //统一社会信用代码
-	CreateStartTime string `protobuf:"bytes,5,opt,name=createStartTime,proto3" json:"createStartTime,omitempty"` //创建开始时间戳
-	CreateEndTime   string `protobuf:"bytes,6,opt,name=createEndTime,proto3" json:"createEndTime,omitempty"`     //创建结束时间戳
-	AuthStatus      string `protobuf:"bytes,7,opt,name=authStatus,proto3" json:"authStatus,omitempty"`           //认证状态 0未认证 1已认证
-	ValidStartTime  string `protobuf:"bytes,8,opt,name=validStartTime,proto3" json:"validStartTime,omitempty"`   //有效截至开始时间戳
-	ValidEndTime    string `protobuf:"bytes,9,opt,name=validEndTime,proto3" json:"validEndTime,omitempty"`       //有效截止时间戳
-	FrozenStatus    string `protobuf:"bytes,10,opt,name=frozenStatus,proto3" json:"frozenStatus,omitempty"`      //冻结状态 1正常  0冻结
-	RegPhone        string `protobuf:"bytes,11,opt,name=regPhone,proto3" json:"regPhone,omitempty"`              //注册人手机号 即管理员手机号
-	AuthPhone       string `protobuf:"bytes,12,opt,name=authPhone,proto3" json:"authPhone,omitempty"`            //联系人手机号
-}
-
-func (x *EntListReq) Reset() {
-	*x = EntListReq{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[5]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *EntListReq) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*EntListReq) ProtoMessage() {}
-
-func (x *EntListReq) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[5]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use EntListReq.ProtoReflect.Descriptor instead.
-func (*EntListReq) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{5}
-}
-
-func (x *EntListReq) GetName() string {
-	if x != nil {
-		return x.Name
-	}
-	return ""
-}
-
-func (x *EntListReq) GetPageNum() string {
-	if x != nil {
-		return x.PageNum
-	}
-	return ""
-}
-
-func (x *EntListReq) GetPageSize() string {
-	if x != nil {
-		return x.PageSize
-	}
-	return ""
-}
-
-func (x *EntListReq) GetCreditCode() string {
-	if x != nil {
-		return x.CreditCode
-	}
-	return ""
-}
-
-func (x *EntListReq) GetCreateStartTime() string {
-	if x != nil {
-		return x.CreateStartTime
-	}
-	return ""
-}
-
-func (x *EntListReq) GetCreateEndTime() string {
-	if x != nil {
-		return x.CreateEndTime
-	}
-	return ""
-}
-
-func (x *EntListReq) GetAuthStatus() string {
-	if x != nil {
-		return x.AuthStatus
-	}
-	return ""
-}
-
-func (x *EntListReq) GetValidStartTime() string {
-	if x != nil {
-		return x.ValidStartTime
-	}
-	return ""
-}
-
-func (x *EntListReq) GetValidEndTime() string {
-	if x != nil {
-		return x.ValidEndTime
-	}
-	return ""
-}
-
-func (x *EntListReq) GetFrozenStatus() string {
-	if x != nil {
-		return x.FrozenStatus
-	}
-	return ""
-}
-
-func (x *EntListReq) GetRegPhone() string {
-	if x != nil {
-		return x.RegPhone
-	}
-	return ""
-}
-
-func (x *EntListReq) GetAuthPhone() string {
-	if x != nil {
-		return x.AuthPhone
-	}
-	return ""
-}
-
-//企业列表出参
-type EntListResp struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	ErrorCode int64    `protobuf:"varint,1,opt,name=error_code,json=errorCode,proto3" json:"error_code,omitempty"`
-	ErrorMsg  string   `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`
-	Data      *EntData `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"` //列表
-}
-
-func (x *EntListResp) Reset() {
-	*x = EntListResp{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[6]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *EntListResp) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*EntListResp) ProtoMessage() {}
-
-func (x *EntListResp) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[6]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use EntListResp.ProtoReflect.Descriptor instead.
-func (*EntListResp) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{6}
-}
-
-func (x *EntListResp) GetErrorCode() int64 {
-	if x != nil {
-		return x.ErrorCode
-	}
-	return 0
-}
-
-func (x *EntListResp) GetErrorMsg() string {
-	if x != nil {
-		return x.ErrorMsg
-	}
-	return ""
-}
-
-func (x *EntListResp) GetData() *EntData {
-	if x != nil {
-		return x.Data
-	}
-	return nil
-}
-
-type EntData struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Count    int64      `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"`
-	PageSize int64      `protobuf:"varint,2,opt,name=pageSize,proto3" json:"pageSize,omitempty"`
-	List     []*EntList `protobuf:"bytes,3,rep,name=list,proto3" json:"list,omitempty"`
-}
-
-func (x *EntData) Reset() {
-	*x = EntData{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[7]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *EntData) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*EntData) ProtoMessage() {}
-
-func (x *EntData) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[7]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use EntData.ProtoReflect.Descriptor instead.
-func (*EntData) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{7}
-}
-
-func (x *EntData) GetCount() int64 {
-	if x != nil {
-		return x.Count
-	}
-	return 0
-}
-
-func (x *EntData) GetPageSize() int64 {
-	if x != nil {
-		return x.PageSize
-	}
-	return 0
-}
-
-func (x *EntData) GetList() []*EntList {
-	if x != nil {
-		return x.List
-	}
-	return nil
-}
-
-type EntList struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Id               int64  `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`                            //机构id
-	ComPanyType      int64  `protobuf:"varint,2,opt,name=comPanyType,proto3" json:"comPanyType,omitempty"`          // 机构性质    1企业   2党政机关事业单位及其他
-	Name             string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`                         //机构名称
-	OrganizationType string `protobuf:"bytes,4,opt,name=organizationType,proto3" json:"organizationType,omitempty"` //机构类型  1企业   2党政机关事业单位及其他
-	Createtime       string `protobuf:"bytes,5,opt,name=createtime,proto3" json:"createtime,omitempty"`             //创建时间
-	ValidTime        string `protobuf:"bytes,6,opt,name=validTime,proto3" json:"validTime,omitempty"`               //有效截至日期
-	AuthStatus       int64  `protobuf:"varint,7,opt,name=authStatus,proto3" json:"authStatus,omitempty"`            //认证状态
-	FrozenStatus     int64  `protobuf:"varint,8,opt,name=frozenStatus,proto3" json:"frozenStatus,omitempty"`        //冻结状态 1冻结 0未冻结
-}
-
-func (x *EntList) Reset() {
-	*x = EntList{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[8]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *EntList) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*EntList) ProtoMessage() {}
-
-func (x *EntList) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[8]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use EntList.ProtoReflect.Descriptor instead.
-func (*EntList) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{8}
-}
-
-func (x *EntList) GetId() int64 {
-	if x != nil {
-		return x.Id
-	}
-	return 0
-}
-
-func (x *EntList) GetComPanyType() int64 {
-	if x != nil {
-		return x.ComPanyType
-	}
-	return 0
-}
-
-func (x *EntList) GetName() string {
-	if x != nil {
-		return x.Name
-	}
-	return ""
-}
-
-func (x *EntList) GetOrganizationType() string {
-	if x != nil {
-		return x.OrganizationType
-	}
-	return ""
-}
-
-func (x *EntList) GetCreatetime() string {
-	if x != nil {
-		return x.Createtime
-	}
-	return ""
-}
-
-func (x *EntList) GetValidTime() string {
-	if x != nil {
-		return x.ValidTime
-	}
-	return ""
-}
-
-func (x *EntList) GetAuthStatus() int64 {
-	if x != nil {
-		return x.AuthStatus
-	}
-	return 0
-}
-
-func (x *EntList) GetFrozenStatus() int64 {
-	if x != nil {
-		return x.FrozenStatus
-	}
-	return 0
-}
-
-//审核列表入参
-type ExamineListReq struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`                   //机构名称
-	AuthPhone     string `protobuf:"bytes,2,opt,name=authPhone,proto3" json:"authPhone,omitempty"`         //联系人手机号
-	RegPhone      string `protobuf:"bytes,3,opt,name=regPhone,proto3" json:"regPhone,omitempty"`           //注册人手机号
-	AuthType      string `protobuf:"bytes,4,opt,name=authType,proto3" json:"authType,omitempty"`           //审核状态 1:待审核  2:审核通过 3:审核不通过
-	AuthStartTime string `protobuf:"bytes,5,opt,name=authStartTime,proto3" json:"authStartTime,omitempty"` //申请开始时间
-	AuthEndTime   string `protobuf:"bytes,6,opt,name=authEndTime,proto3" json:"authEndTime,omitempty"`     //申请结束时间
-	PageNum       string `protobuf:"bytes,7,opt,name=pageNum,proto3" json:"pageNum,omitempty"`             //页码
-	PageSize      string `protobuf:"bytes,8,opt,name=pageSize,proto3" json:"pageSize,omitempty"`           //每页展示条数
-}
-
-func (x *ExamineListReq) Reset() {
-	*x = ExamineListReq{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[9]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *ExamineListReq) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*ExamineListReq) ProtoMessage() {}
-
-func (x *ExamineListReq) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[9]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use ExamineListReq.ProtoReflect.Descriptor instead.
-func (*ExamineListReq) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{9}
-}
-
-func (x *ExamineListReq) GetName() string {
-	if x != nil {
-		return x.Name
-	}
-	return ""
-}
-
-func (x *ExamineListReq) GetAuthPhone() string {
-	if x != nil {
-		return x.AuthPhone
-	}
-	return ""
-}
-
-func (x *ExamineListReq) GetRegPhone() string {
-	if x != nil {
-		return x.RegPhone
-	}
-	return ""
-}
-
-func (x *ExamineListReq) GetAuthType() string {
-	if x != nil {
-		return x.AuthType
-	}
-	return ""
-}
-
-func (x *ExamineListReq) GetAuthStartTime() string {
-	if x != nil {
-		return x.AuthStartTime
-	}
-	return ""
-}
-
-func (x *ExamineListReq) GetAuthEndTime() string {
-	if x != nil {
-		return x.AuthEndTime
-	}
-	return ""
-}
-
-func (x *ExamineListReq) GetPageNum() string {
-	if x != nil {
-		return x.PageNum
-	}
-	return ""
-}
-
-func (x *ExamineListReq) GetPageSize() string {
-	if x != nil {
-		return x.PageSize
-	}
-	return ""
-}
-
-//审核列表出参
-type ExamineListResp struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	ErrorCode int64            `protobuf:"varint,1,opt,name=error_code,json=errorCode,proto3" json:"error_code,omitempty"`
-	ErrorMsg  string           `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`
-	Data      *ExamineListData `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"` //列表
-}
-
-func (x *ExamineListResp) Reset() {
-	*x = ExamineListResp{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[10]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *ExamineListResp) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*ExamineListResp) ProtoMessage() {}
-
-func (x *ExamineListResp) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[10]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use ExamineListResp.ProtoReflect.Descriptor instead.
-func (*ExamineListResp) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{10}
-}
-
-func (x *ExamineListResp) GetErrorCode() int64 {
-	if x != nil {
-		return x.ErrorCode
-	}
-	return 0
-}
-
-func (x *ExamineListResp) GetErrorMsg() string {
-	if x != nil {
-		return x.ErrorMsg
-	}
-	return ""
-}
-
-func (x *ExamineListResp) GetData() *ExamineListData {
-	if x != nil {
-		return x.Data
-	}
-	return nil
-}
-
-type ExamineListData struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Count    int64          `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"`
-	PageSize int64          `protobuf:"varint,2,opt,name=pageSize,proto3" json:"pageSize,omitempty"`
-	List     []*ExamineList `protobuf:"bytes,3,rep,name=list,proto3" json:"list,omitempty"`
-}
-
-func (x *ExamineListData) Reset() {
-	*x = ExamineListData{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[11]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *ExamineListData) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*ExamineListData) ProtoMessage() {}
-
-func (x *ExamineListData) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[11]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use ExamineListData.ProtoReflect.Descriptor instead.
-func (*ExamineListData) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{11}
-}
-
-func (x *ExamineListData) GetCount() int64 {
-	if x != nil {
-		return x.Count
-	}
-	return 0
-}
-
-func (x *ExamineListData) GetPageSize() int64 {
-	if x != nil {
-		return x.PageSize
-	}
-	return 0
-}
-
-func (x *ExamineListData) GetList() []*ExamineList {
-	if x != nil {
-		return x.List
-	}
-	return nil
-}
-
-type ExamineList struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Id          int64  `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`                   //机构id
-	EntId       int64  `protobuf:"varint,2,opt,name=entId,proto3" json:"entId,omitempty"`             //企业id
-	ComPanyType int64  `protobuf:"varint,3,opt,name=comPanyType,proto3" json:"comPanyType,omitempty"` // 机构性质    1企业   2党政机关事业单位及其他
-	Name        string `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"`                //机构名称
-	CreditCode  string `protobuf:"bytes,5,opt,name=creditCode,proto3" json:"creditCode,omitempty"`    //统一社会信用代码
-	AuthPhone   string `protobuf:"bytes,6,opt,name=authPhone,proto3" json:"authPhone,omitempty"`      //联系人手机号
-	ApplyTime   string `protobuf:"bytes,7,opt,name=applyTime,proto3" json:"applyTime,omitempty"`      //申请时间戳
-	AuthType    int64  `protobuf:"varint,8,opt,name=authType,proto3" json:"authType,omitempty"`       //审核状态 1:待审核  2:审核通过 3:审核不通过
-	RegPhone    string `protobuf:"bytes,9,opt,name=regPhone,proto3" json:"regPhone,omitempty"`        //注册人手机号
-}
-
-func (x *ExamineList) Reset() {
-	*x = ExamineList{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[12]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *ExamineList) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*ExamineList) ProtoMessage() {}
-
-func (x *ExamineList) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[12]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use ExamineList.ProtoReflect.Descriptor instead.
-func (*ExamineList) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{12}
-}
-
-func (x *ExamineList) GetId() int64 {
-	if x != nil {
-		return x.Id
-	}
-	return 0
-}
-
-func (x *ExamineList) GetEntId() int64 {
-	if x != nil {
-		return x.EntId
-	}
-	return 0
-}
-
-func (x *ExamineList) GetComPanyType() int64 {
-	if x != nil {
-		return x.ComPanyType
-	}
-	return 0
-}
-
-func (x *ExamineList) GetName() string {
-	if x != nil {
-		return x.Name
-	}
-	return ""
-}
-
-func (x *ExamineList) GetCreditCode() string {
-	if x != nil {
-		return x.CreditCode
-	}
-	return ""
-}
-
-func (x *ExamineList) GetAuthPhone() string {
-	if x != nil {
-		return x.AuthPhone
-	}
-	return ""
-}
-
-func (x *ExamineList) GetApplyTime() string {
-	if x != nil {
-		return x.ApplyTime
-	}
-	return ""
-}
-
-func (x *ExamineList) GetAuthType() int64 {
-	if x != nil {
-		return x.AuthType
-	}
-	return 0
-}
-
-func (x *ExamineList) GetRegPhone() string {
-	if x != nil {
-		return x.RegPhone
-	}
-	return ""
-}
-
-//查看企业状态入参
-type CheckEntReq struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	EntId int64 `protobuf:"varint,1,opt,name=entId,proto3" json:"entId,omitempty"` //企业id
-}
-
-func (x *CheckEntReq) Reset() {
-	*x = CheckEntReq{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[13]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *CheckEntReq) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*CheckEntReq) ProtoMessage() {}
-
-func (x *CheckEntReq) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[13]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use CheckEntReq.ProtoReflect.Descriptor instead.
-func (*CheckEntReq) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{13}
-}
-
-func (x *CheckEntReq) GetEntId() int64 {
-	if x != nil {
-		return x.EntId
-	}
-	return 0
-}
-
-//查看企业状态出参
-type CheckEntResp struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	ErrorCode int64                  `protobuf:"varint,1,opt,name=error_code,json=errorCode,proto3" json:"error_code,omitempty"`
-	ErrorMsg  string                 `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`
-	Data      *CheckEntRespCheckData `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
-}
-
-func (x *CheckEntResp) Reset() {
-	*x = CheckEntResp{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[14]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *CheckEntResp) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*CheckEntResp) ProtoMessage() {}
-
-func (x *CheckEntResp) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[14]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use CheckEntResp.ProtoReflect.Descriptor instead.
-func (*CheckEntResp) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{14}
-}
-
-func (x *CheckEntResp) GetErrorCode() int64 {
-	if x != nil {
-		return x.ErrorCode
-	}
-	return 0
-}
-
-func (x *CheckEntResp) GetErrorMsg() string {
-	if x != nil {
-		return x.ErrorMsg
-	}
-	return ""
-}
-
-func (x *CheckEntResp) GetData() *CheckEntRespCheckData {
-	if x != nil {
-		return x.Data
-	}
-	return nil
-}
-
-type EntInfoResp struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	ErrorCode int64        `protobuf:"varint,1,opt,name=error_code,json=errorCode,proto3" json:"error_code,omitempty"`
-	ErrorMsg  string       `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`
-	Data      *EntInfoData `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"` //列表
-}
-
-func (x *EntInfoResp) Reset() {
-	*x = EntInfoResp{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[15]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *EntInfoResp) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*EntInfoResp) ProtoMessage() {}
-
-func (x *EntInfoResp) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[15]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use EntInfoResp.ProtoReflect.Descriptor instead.
-func (*EntInfoResp) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{15}
-}
-
-func (x *EntInfoResp) GetErrorCode() int64 {
-	if x != nil {
-		return x.ErrorCode
-	}
-	return 0
-}
-
-func (x *EntInfoResp) GetErrorMsg() string {
-	if x != nil {
-		return x.ErrorMsg
-	}
-	return ""
-}
-
-func (x *EntInfoResp) GetData() *EntInfoData {
-	if x != nil {
-		return x.Data
-	}
-	return nil
-}
-
-type EntInfoData struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Name             string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`                          //名称
-	AreaNumber       string `protobuf:"bytes,2,opt,name=areaNumber,proto3" json:"areaNumber,omitempty"`              //区域代码
-	ContactPerson    string `protobuf:"bytes,3,opt,name=contactPerson,proto3" json:"contactPerson,omitempty"`        //联系人
-	ContactPhone     string `protobuf:"bytes,4,opt,name=contactPhone,proto3" json:"contactPhone,omitempty"`          //联系电话
-	AuthState        int64  `protobuf:"varint,5,opt,name=authState,proto3" json:"authState,omitempty"`               //0未认证 1已认证
-	Industry         string `protobuf:"bytes,6,opt,name=industry,proto3" json:"industry,omitempty"`                  //行业
-	CompanyType      int64  `protobuf:"varint,7,opt,name=companyType,proto3" json:"companyType,omitempty"`           //1-事业单位 0-企业
-	CreditCode       string `protobuf:"bytes,8,opt,name=creditCode,proto3" json:"creditCode,omitempty"`              //统一社会信用代码
-	LegalPerson      string `protobuf:"bytes,9,opt,name=legalPerson,proto3" json:"legalPerson,omitempty"`            //法人姓名
-	Business         string `protobuf:"bytes,10,opt,name=business,proto3" json:"business,omitempty"`                 //营业执照
-	OfficialLetter   string `protobuf:"bytes,11,opt,name=officialLetter,proto3" json:"officialLetter,omitempty"`     //认证公函
-	OrganizationType string `protobuf:"bytes,12,opt,name=organizationType,proto3" json:"organizationType,omitempty"` //机构类型  1投标企业  2招标采购单位 3厂商 4招标代理机构 5经销商  6服务提供商  7其他,  多个,隔开
-	AuthType         int64  `protobuf:"varint,13,opt,name=authType,proto3" json:"authType,omitempty"`                //1待审核 2审核通过 3审核不通过
-	ForzenStatus     int64  `protobuf:"varint,14,opt,name=forzenStatus,proto3" json:"forzenStatus,omitempty"`        //1冻结 0未冻结
-	AuditUser        string `protobuf:"bytes,15,opt,name=auditUser,proto3" json:"auditUser,omitempty"`               //审核人
-	AuditTime        string `protobuf:"bytes,16,opt,name=auditTime,proto3" json:"auditTime,omitempty"`               //审核时间
-	CreateTime       string `protobuf:"bytes,17,opt,name=createTime,proto3" json:"createTime,omitempty"`             //创建时间
-	AuthStartTime    string `protobuf:"bytes,18,opt,name=authStartTime,proto3" json:"authStartTime,omitempty"`       //认证开始时间
-	AuthEndTime      string `protobuf:"bytes,19,opt,name=authEndTime,proto3" json:"authEndTime,omitempty"`           //认证截止时间
-	AuthReason       string `protobuf:"bytes,20,opt,name=authReason,proto3" json:"authReason,omitempty"`             //审核原因
-	AuthTime         string `protobuf:"bytes,21,opt,name=authTime,proto3" json:"authTime,omitempty"`                 //申请时间
-	RegPhone         string `protobuf:"bytes,22,opt,name=regPhone,proto3" json:"regPhone,omitempty"`                 //注册人手机号
-}
-
-func (x *EntInfoData) Reset() {
-	*x = EntInfoData{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[16]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *EntInfoData) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*EntInfoData) ProtoMessage() {}
-
-func (x *EntInfoData) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[16]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use EntInfoData.ProtoReflect.Descriptor instead.
-func (*EntInfoData) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{16}
-}
-
-func (x *EntInfoData) GetName() string {
-	if x != nil {
-		return x.Name
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetAreaNumber() string {
-	if x != nil {
-		return x.AreaNumber
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetContactPerson() string {
-	if x != nil {
-		return x.ContactPerson
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetContactPhone() string {
-	if x != nil {
-		return x.ContactPhone
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetAuthState() int64 {
-	if x != nil {
-		return x.AuthState
-	}
-	return 0
-}
-
-func (x *EntInfoData) GetIndustry() string {
-	if x != nil {
-		return x.Industry
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetCompanyType() int64 {
-	if x != nil {
-		return x.CompanyType
-	}
-	return 0
-}
-
-func (x *EntInfoData) GetCreditCode() string {
-	if x != nil {
-		return x.CreditCode
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetLegalPerson() string {
-	if x != nil {
-		return x.LegalPerson
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetBusiness() string {
-	if x != nil {
-		return x.Business
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetOfficialLetter() string {
-	if x != nil {
-		return x.OfficialLetter
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetOrganizationType() string {
-	if x != nil {
-		return x.OrganizationType
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetAuthType() int64 {
-	if x != nil {
-		return x.AuthType
-	}
-	return 0
-}
-
-func (x *EntInfoData) GetForzenStatus() int64 {
-	if x != nil {
-		return x.ForzenStatus
-	}
-	return 0
-}
-
-func (x *EntInfoData) GetAuditUser() string {
-	if x != nil {
-		return x.AuditUser
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetAuditTime() string {
-	if x != nil {
-		return x.AuditTime
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetCreateTime() string {
-	if x != nil {
-		return x.CreateTime
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetAuthStartTime() string {
-	if x != nil {
-		return x.AuthStartTime
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetAuthEndTime() string {
-	if x != nil {
-		return x.AuthEndTime
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetAuthReason() string {
-	if x != nil {
-		return x.AuthReason
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetAuthTime() string {
-	if x != nil {
-		return x.AuthTime
-	}
-	return ""
-}
-
-func (x *EntInfoData) GetRegPhone() string {
-	if x != nil {
-		return x.RegPhone
-	}
-	return ""
-}
-
-type EntUpdateReq struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	EntId      int64 `protobuf:"varint,1,opt,name=entId,proto3" json:"entId,omitempty"`           //企业id
-	UpdateType int64 `protobuf:"varint,2,opt,name=updateType,proto3" json:"updateType,omitempty"` //1-冻结  2-解冻
-}
-
-func (x *EntUpdateReq) Reset() {
-	*x = EntUpdateReq{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[17]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *EntUpdateReq) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*EntUpdateReq) ProtoMessage() {}
-
-func (x *EntUpdateReq) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[17]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use EntUpdateReq.ProtoReflect.Descriptor instead.
-func (*EntUpdateReq) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{17}
-}
-
-func (x *EntUpdateReq) GetEntId() int64 {
-	if x != nil {
-		return x.EntId
-	}
-	return 0
-}
-
-func (x *EntUpdateReq) GetUpdateType() int64 {
-	if x != nil {
-		return x.UpdateType
-	}
-	return 0
-}
-
-//审核详情入参
-type CheckExamineReq struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	ExamineId int64 `protobuf:"varint,1,opt,name=examineId,proto3" json:"examineId,omitempty"` //审核id
-}
-
-func (x *CheckExamineReq) Reset() {
-	*x = CheckExamineReq{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[18]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *CheckExamineReq) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*CheckExamineReq) ProtoMessage() {}
-
-func (x *CheckExamineReq) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[18]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use CheckExamineReq.ProtoReflect.Descriptor instead.
-func (*CheckExamineReq) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{18}
-}
-
-func (x *CheckExamineReq) GetExamineId() int64 {
-	if x != nil {
-		return x.ExamineId
-	}
-	return 0
-}
-
-type GetStatusByCodeReq struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Code  string `protobuf:"bytes,1,opt,name=code,proto3" json:"code,omitempty"`   //统一社会信用代码
-	Phone string `protobuf:"bytes,2,opt,name=phone,proto3" json:"phone,omitempty"` //注册手机号
-}
-
-func (x *GetStatusByCodeReq) Reset() {
-	*x = GetStatusByCodeReq{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[19]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *GetStatusByCodeReq) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*GetStatusByCodeReq) ProtoMessage() {}
-
-func (x *GetStatusByCodeReq) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[19]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use GetStatusByCodeReq.ProtoReflect.Descriptor instead.
-func (*GetStatusByCodeReq) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{19}
-}
-
-func (x *GetStatusByCodeReq) GetCode() string {
-	if x != nil {
-		return x.Code
-	}
-	return ""
-}
-
-func (x *GetStatusByCodeReq) GetPhone() string {
-	if x != nil {
-		return x.Phone
-	}
-	return ""
-}
-
-type GetStatusByCodeResp struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	ErrorCode int64                                `protobuf:"varint,1,opt,name=error_code,json=errorCode,proto3" json:"error_code,omitempty"`
-	ErrorMsg  string                               `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`
-	Data      *GetStatusByCodeResp_GetStatusByCode `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"` //详情
-}
-
-func (x *GetStatusByCodeResp) Reset() {
-	*x = GetStatusByCodeResp{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[20]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *GetStatusByCodeResp) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*GetStatusByCodeResp) ProtoMessage() {}
-
-func (x *GetStatusByCodeResp) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[20]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use GetStatusByCodeResp.ProtoReflect.Descriptor instead.
-func (*GetStatusByCodeResp) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{20}
-}
-
-func (x *GetStatusByCodeResp) GetErrorCode() int64 {
-	if x != nil {
-		return x.ErrorCode
-	}
-	return 0
-}
-
-func (x *GetStatusByCodeResp) GetErrorMsg() string {
-	if x != nil {
-		return x.ErrorMsg
-	}
-	return ""
-}
-
-func (x *GetStatusByCodeResp) GetData() *GetStatusByCodeResp_GetStatusByCode {
-	if x != nil {
-		return x.Data
-	}
-	return nil
-}
-
-//用户权益
-type UserInfo struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Phone          string     `protobuf:"bytes,1,opt,name=phone,proto3" json:"phone,omitempty"`                    //手机号
-	VipStatus      int64      `protobuf:"varint,2,opt,name=vipStatus,proto3" json:"vipStatus,omitempty"`           //超级订阅状态; >0有权限 <=0无权限
-	MemberStatus   int64      `protobuf:"varint,3,opt,name=memberStatus,proto3" json:"memberStatus,omitempty"`     //大会员状态;  >0:有权限  <=0:无权限
-	EntnicheStatus int64      `protobuf:"varint,4,opt,name=entnicheStatus,proto3" json:"entnicheStatus,omitempty"` //商机管理权限状态; 1:有权限   -1:无权限
-	SubscribeType  string     `protobuf:"bytes,5,opt,name=subscribeType,proto3" json:"subscribeType,omitempty"`    //订阅设置类型 f:免费订阅 v:超级订阅 m:大会员订阅 e:商机管理订阅
-	Data           *Subscribe `protobuf:"bytes,6,opt,name=data,proto3" json:"data,omitempty"`
-	ErrorMsg       string     `protobuf:"bytes,7,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`
-	ErrorCode      int64      `protobuf:"varint,8,opt,name=error_code,json=errorCode,proto3" json:"error_code,omitempty"`
-}
-
-func (x *UserInfo) Reset() {
-	*x = UserInfo{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[21]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *UserInfo) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*UserInfo) ProtoMessage() {}
-
-func (x *UserInfo) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[21]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use UserInfo.ProtoReflect.Descriptor instead.
-func (*UserInfo) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{21}
-}
-
-func (x *UserInfo) GetPhone() string {
-	if x != nil {
-		return x.Phone
-	}
-	return ""
-}
-
-func (x *UserInfo) GetVipStatus() int64 {
-	if x != nil {
-		return x.VipStatus
-	}
-	return 0
-}
-
-func (x *UserInfo) GetMemberStatus() int64 {
-	if x != nil {
-		return x.MemberStatus
-	}
-	return 0
-}
-
-func (x *UserInfo) GetEntnicheStatus() int64 {
-	if x != nil {
-		return x.EntnicheStatus
-	}
-	return 0
-}
-
-func (x *UserInfo) GetSubscribeType() string {
-	if x != nil {
-		return x.SubscribeType
-	}
-	return ""
-}
-
-func (x *UserInfo) GetData() *Subscribe {
-	if x != nil {
-		return x.Data
-	}
-	return nil
-}
-
-func (x *UserInfo) GetErrorMsg() string {
-	if x != nil {
-		return x.ErrorMsg
-	}
-	return ""
-}
-
-func (x *UserInfo) GetErrorCode() int64 {
-	if x != nil {
-		return x.ErrorCode
-	}
-	return 0
-}
-
-//订阅设置
-type Subscribe struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	StartTime    int64            `protobuf:"varint,1,opt,name=startTime,proto3" json:"startTime,omitempty"`                                                                              //开始时间
-	EndTime      int64            `protobuf:"varint,2,opt,name=endTime,proto3" json:"endTime,omitempty"`                                                                                  //结束时间
-	Area         map[string]*List `protobuf:"bytes,3,rep,name=area,proto3" json:"area,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` //地区
-	Buyerclass   []string         `protobuf:"bytes,4,rep,name=buyerclass,proto3" json:"buyerclass,omitempty"`                                                                             //采购单位类型
-	Infotype     []string         `protobuf:"bytes,5,rep,name=infotype,proto3" json:"infotype,omitempty"`                                                                                 //信息类型
-	Items        []*Items         `protobuf:"bytes,6,rep,name=items,proto3" json:"items,omitempty"`                                                                                       //关键词
-	Matchway     int64            `protobuf:"varint,7,opt,name=matchway,proto3" json:"matchway,omitempty"`                                                                                //匹配方式 1标题 2正文
-	Projectmatch int64            `protobuf:"varint,8,opt,name=projectmatch,proto3" json:"projectmatch,omitempty"`                                                                        //项目匹配
-}
-
-func (x *Subscribe) Reset() {
-	*x = Subscribe{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[22]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *Subscribe) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*Subscribe) ProtoMessage() {}
-
-func (x *Subscribe) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[22]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use Subscribe.ProtoReflect.Descriptor instead.
-func (*Subscribe) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{22}
-}
-
-func (x *Subscribe) GetStartTime() int64 {
-	if x != nil {
-		return x.StartTime
-	}
-	return 0
-}
-
-func (x *Subscribe) GetEndTime() int64 {
-	if x != nil {
-		return x.EndTime
-	}
-	return 0
-}
-
-func (x *Subscribe) GetArea() map[string]*List {
-	if x != nil {
-		return x.Area
-	}
-	return nil
-}
-
-func (x *Subscribe) GetBuyerclass() []string {
-	if x != nil {
-		return x.Buyerclass
-	}
-	return nil
-}
-
-func (x *Subscribe) GetInfotype() []string {
-	if x != nil {
-		return x.Infotype
-	}
-	return nil
-}
-
-func (x *Subscribe) GetItems() []*Items {
-	if x != nil {
-		return x.Items
-	}
-	return nil
-}
-
-func (x *Subscribe) GetMatchway() int64 {
-	if x != nil {
-		return x.Matchway
-	}
-	return 0
-}
-
-func (x *Subscribe) GetProjectmatch() int64 {
-	if x != nil {
-		return x.Projectmatch
-	}
-	return 0
-}
-
-type List struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Value []string `protobuf:"bytes,1,rep,name=value,proto3" json:"value,omitempty"`
-}
-
-func (x *List) Reset() {
-	*x = List{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[23]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *List) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*List) ProtoMessage() {}
-
-func (x *List) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[23]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use List.ProtoReflect.Descriptor instead.
-func (*List) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{23}
-}
-
-func (x *List) GetValue() []string {
-	if x != nil {
-		return x.Value
-	}
-	return nil
-}
-
-//分类
-type Items struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	SItem      string  `protobuf:"bytes,1,opt,name=s_item,json=sItem,proto3" json:"s_item,omitempty"` //分类名称
-	UpdateTime int64   `protobuf:"varint,2,opt,name=updateTime,proto3" json:"updateTime,omitempty"`
-	AKey       []*Keys `protobuf:"bytes,3,rep,name=a_key,json=aKey,proto3" json:"a_key,omitempty"`
-}
-
-func (x *Items) Reset() {
-	*x = Items{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[24]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *Items) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*Items) ProtoMessage() {}
-
-func (x *Items) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[24]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use Items.ProtoReflect.Descriptor instead.
-func (*Items) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{24}
-}
-
-func (x *Items) GetSItem() string {
-	if x != nil {
-		return x.SItem
-	}
-	return ""
-}
-
-func (x *Items) GetUpdateTime() int64 {
-	if x != nil {
-		return x.UpdateTime
-	}
-	return 0
-}
-
-func (x *Items) GetAKey() []*Keys {
-	if x != nil {
-		return x.AKey
-	}
-	return nil
-}
-
-//关键词
-type Keys struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Key        []string `protobuf:"bytes,1,rep,name=key,proto3" json:"key,omitempty"`
-	Notkey     []string `protobuf:"bytes,2,rep,name=notkey,proto3" json:"notkey,omitempty"`
-	UpdateTime int64    `protobuf:"varint,3,opt,name=updateTime,proto3" json:"updateTime,omitempty"`
-	Matchway   int64    `protobuf:"varint,4,opt,name=matchway,proto3" json:"matchway,omitempty"`
-}
-
-func (x *Keys) Reset() {
-	*x = Keys{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[25]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *Keys) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*Keys) ProtoMessage() {}
-
-func (x *Keys) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[25]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use Keys.ProtoReflect.Descriptor instead.
-func (*Keys) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{25}
-}
-
-func (x *Keys) GetKey() []string {
-	if x != nil {
-		return x.Key
-	}
-	return nil
-}
-
-func (x *Keys) GetNotkey() []string {
-	if x != nil {
-		return x.Notkey
-	}
-	return nil
-}
-
-func (x *Keys) GetUpdateTime() int64 {
-	if x != nil {
-		return x.UpdateTime
-	}
-	return 0
-}
-
-func (x *Keys) GetMatchway() int64 {
-	if x != nil {
-		return x.Matchway
-	}
-	return 0
-}
-
-type UserReq struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	AppId  string `protobuf:"bytes,1,opt,name=appId,proto3" json:"appId,omitempty"`
-	UserId int64  `protobuf:"varint,2,opt,name=userId,proto3" json:"userId,omitempty"`
-	Types  string `protobuf:"bytes,3,opt,name=types,proto3" json:"types,omitempty"` //类型,不传按默认规则获取 m大会员 e商机管理 v超级订阅 f免费订阅
-}
-
-func (x *UserReq) Reset() {
-	*x = UserReq{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[26]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *UserReq) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*UserReq) ProtoMessage() {}
-
-func (x *UserReq) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[26]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use UserReq.ProtoReflect.Descriptor instead.
-func (*UserReq) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{26}
-}
-
-func (x *UserReq) GetAppId() string {
-	if x != nil {
-		return x.AppId
-	}
-	return ""
-}
-
-func (x *UserReq) GetUserId() int64 {
-	if x != nil {
-		return x.UserId
-	}
-	return 0
-}
-
-func (x *UserReq) GetTypes() string {
-	if x != nil {
-		return x.Types
-	}
-	return ""
-}
-
-type EntUserReq struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	AppId     string `protobuf:"bytes,1,opt,name=appId,proto3" json:"appId,omitempty"`
-	EntUserId int64  `protobuf:"varint,2,opt,name=entUserId,proto3" json:"entUserId,omitempty"`
-	EntId     int64  `protobuf:"varint,3,opt,name=entId,proto3" json:"entId,omitempty"`
-}
-
-func (x *EntUserReq) Reset() {
-	*x = EntUserReq{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[27]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *EntUserReq) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*EntUserReq) ProtoMessage() {}
-
-func (x *EntUserReq) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[27]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use EntUserReq.ProtoReflect.Descriptor instead.
-func (*EntUserReq) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{27}
-}
-
-func (x *EntUserReq) GetAppId() string {
-	if x != nil {
-		return x.AppId
-	}
-	return ""
-}
-
-func (x *EntUserReq) GetEntUserId() int64 {
-	if x != nil {
-		return x.EntUserId
-	}
-	return 0
-}
-
-func (x *EntUserReq) GetEntId() int64 {
-	if x != nil {
-		return x.EntId
-	}
-	return 0
-}
-
-type EntUserResp struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	ErrorCode int64    `protobuf:"varint,1,opt,name=error_code,json=errorCode,proto3" json:"error_code,omitempty"`
-	ErrorMsg  string   `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`
-	Data      *EntUser `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
-}
-
-func (x *EntUserResp) Reset() {
-	*x = EntUserResp{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[28]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *EntUserResp) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*EntUserResp) ProtoMessage() {}
-
-func (x *EntUserResp) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[28]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use EntUserResp.ProtoReflect.Descriptor instead.
-func (*EntUserResp) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{28}
-}
-
-func (x *EntUserResp) GetErrorCode() int64 {
-	if x != nil {
-		return x.ErrorCode
-	}
-	return 0
-}
-
-func (x *EntUserResp) GetErrorMsg() string {
-	if x != nil {
-		return x.ErrorMsg
-	}
-	return ""
-}
-
-func (x *EntUserResp) GetData() *EntUser {
-	if x != nil {
-		return x.Data
-	}
-	return nil
-}
-
-type EntUser struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Name      string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"`         //员工名册
-	Phone     string `protobuf:"bytes,2,opt,name=phone,proto3" json:"phone,omitempty"`       //员工手机号
-	Mail      string `protobuf:"bytes,3,opt,name=mail,proto3" json:"mail,omitempty"`         //邮箱
-	DeptName  string `protobuf:"bytes,4,opt,name=deptName,proto3" json:"deptName,omitempty"` //部门名称
-	EntUserId int64  `protobuf:"varint,5,opt,name=entUserId,proto3" json:"entUserId,omitempty"`
-}
-
-func (x *EntUser) Reset() {
-	*x = EntUser{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[29]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *EntUser) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*EntUser) ProtoMessage() {}
-
-func (x *EntUser) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[29]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use EntUser.ProtoReflect.Descriptor instead.
-func (*EntUser) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{29}
-}
-
-func (x *EntUser) GetName() string {
-	if x != nil {
-		return x.Name
-	}
-	return ""
-}
-
-func (x *EntUser) GetPhone() string {
-	if x != nil {
-		return x.Phone
-	}
-	return ""
-}
-
-func (x *EntUser) GetMail() string {
-	if x != nil {
-		return x.Mail
-	}
-	return ""
-}
-
-func (x *EntUser) GetDeptName() string {
-	if x != nil {
-		return x.DeptName
-	}
-	return ""
-}
-
-func (x *EntUser) GetEntUserId() int64 {
-	if x != nil {
-		return x.EntUserId
-	}
-	return 0
-}
-
-type EntUserListReq struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	AppId  string `protobuf:"bytes,1,opt,name=appId,proto3" json:"appId,omitempty"`
-	EntId  int64  `protobuf:"varint,2,opt,name=entId,proto3" json:"entId,omitempty"`
-	DeptId int64  `protobuf:"varint,3,opt,name=deptId,proto3" json:"deptId,omitempty"`
-	Name   string `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"`
-}
-
-func (x *EntUserListReq) Reset() {
-	*x = EntUserListReq{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[30]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *EntUserListReq) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*EntUserListReq) ProtoMessage() {}
-
-func (x *EntUserListReq) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[30]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use EntUserListReq.ProtoReflect.Descriptor instead.
-func (*EntUserListReq) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{30}
-}
-
-func (x *EntUserListReq) GetAppId() string {
-	if x != nil {
-		return x.AppId
-	}
-	return ""
-}
-
-func (x *EntUserListReq) GetEntId() int64 {
-	if x != nil {
-		return x.EntId
-	}
-	return 0
-}
-
-func (x *EntUserListReq) GetDeptId() int64 {
-	if x != nil {
-		return x.DeptId
-	}
-	return 0
-}
-
-func (x *EntUserListReq) GetName() string {
-	if x != nil {
-		return x.Name
-	}
-	return ""
-}
-
-type EntUserListResp struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	ErrorCode int64              `protobuf:"varint,1,opt,name=error_code,json=errorCode,proto3" json:"error_code,omitempty"`
-	ErrorMsg  string             `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`
-	Data      []*EntUserListData `protobuf:"bytes,3,rep,name=data,proto3" json:"data,omitempty"`
-}
-
-func (x *EntUserListResp) Reset() {
-	*x = EntUserListResp{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[31]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *EntUserListResp) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*EntUserListResp) ProtoMessage() {}
-
-func (x *EntUserListResp) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[31]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use EntUserListResp.ProtoReflect.Descriptor instead.
-func (*EntUserListResp) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{31}
-}
-
-func (x *EntUserListResp) GetErrorCode() int64 {
-	if x != nil {
-		return x.ErrorCode
-	}
-	return 0
-}
-
-func (x *EntUserListResp) GetErrorMsg() string {
-	if x != nil {
-		return x.ErrorMsg
-	}
-	return ""
-}
-
-func (x *EntUserListResp) GetData() []*EntUserListData {
-	if x != nil {
-		return x.Data
-	}
-	return nil
-}
-
-type EntUserListData struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Name        string             `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
-	DeptId      int64              `protobuf:"varint,2,opt,name=deptId,proto3" json:"deptId,omitempty"`
-	PId         int64              `protobuf:"varint,3,opt,name=pId,proto3" json:"pId,omitempty"`
-	EntUserList []*EntUser         `protobuf:"bytes,4,rep,name=entUserList,proto3" json:"entUserList,omitempty"`
-	DeptList    []*EntUserListData `protobuf:"bytes,5,rep,name=deptList,proto3" json:"deptList,omitempty"`
-}
-
-func (x *EntUserListData) Reset() {
-	*x = EntUserListData{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[32]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *EntUserListData) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*EntUserListData) ProtoMessage() {}
-
-func (x *EntUserListData) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[32]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use EntUserListData.ProtoReflect.Descriptor instead.
-func (*EntUserListData) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{32}
-}
-
-func (x *EntUserListData) GetName() string {
-	if x != nil {
-		return x.Name
-	}
-	return ""
-}
-
-func (x *EntUserListData) GetDeptId() int64 {
-	if x != nil {
-		return x.DeptId
-	}
-	return 0
-}
-
-func (x *EntUserListData) GetPId() int64 {
-	if x != nil {
-		return x.PId
-	}
-	return 0
-}
-
-func (x *EntUserListData) GetEntUserList() []*EntUser {
-	if x != nil {
-		return x.EntUserList
-	}
-	return nil
-}
-
-func (x *EntUserListData) GetDeptList() []*EntUserListData {
-	if x != nil {
-		return x.DeptList
-	}
-	return nil
-}
-
-type CheckIsEntAdminResp struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	ErrorCode int64  `protobuf:"varint,1,opt,name=error_code,json=errorCode,proto3" json:"error_code,omitempty"`
-	ErrorMsg  string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`
-	Status    int64  `protobuf:"varint,3,opt,name=status,proto3" json:"status,omitempty"` //1企业管理员 2部门管理员 3员工
-}
-
-func (x *CheckIsEntAdminResp) Reset() {
-	*x = CheckIsEntAdminResp{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[33]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *CheckIsEntAdminResp) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*CheckIsEntAdminResp) ProtoMessage() {}
-
-func (x *CheckIsEntAdminResp) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[33]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use CheckIsEntAdminResp.ProtoReflect.Descriptor instead.
-func (*CheckIsEntAdminResp) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{33}
-}
-
-func (x *CheckIsEntAdminResp) GetErrorCode() int64 {
-	if x != nil {
-		return x.ErrorCode
-	}
-	return 0
-}
-
-func (x *CheckIsEntAdminResp) GetErrorMsg() string {
-	if x != nil {
-		return x.ErrorMsg
-	}
-	return ""
-}
-
-func (x *CheckIsEntAdminResp) GetStatus() int64 {
-	if x != nil {
-		return x.Status
-	}
-	return 0
-}
-
-type ExamineResp_ExamineData struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Status int64 `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
-}
-
-func (x *ExamineResp_ExamineData) Reset() {
-	*x = ExamineResp_ExamineData{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[34]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *ExamineResp_ExamineData) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*ExamineResp_ExamineData) ProtoMessage() {}
-
-func (x *ExamineResp_ExamineData) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[34]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use ExamineResp_ExamineData.ProtoReflect.Descriptor instead.
-func (*ExamineResp_ExamineData) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{4, 0}
-}
-
-func (x *ExamineResp_ExamineData) GetStatus() int64 {
-	if x != nil {
-		return x.Status
-	}
-	return 0
-}
-
-type CheckEntRespCheckData struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	AuthStatus   int64 `protobuf:"varint,1,opt,name=authStatus,proto3" json:"authStatus,omitempty"`     //企业是否认证 -1 未通过,0 未认证,1 已认证. -2 已到期 3待审核
-	FrozenStatus int64 `protobuf:"varint,2,opt,name=frozenStatus,proto3" json:"frozenStatus,omitempty"` //冻结  1正常  0冻结
-}
-
-func (x *CheckEntRespCheckData) Reset() {
-	*x = CheckEntRespCheckData{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[35]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *CheckEntRespCheckData) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*CheckEntRespCheckData) ProtoMessage() {}
-
-func (x *CheckEntRespCheckData) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[35]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use CheckEntRespCheckData.ProtoReflect.Descriptor instead.
-func (*CheckEntRespCheckData) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{14, 0}
-}
-
-func (x *CheckEntRespCheckData) GetAuthStatus() int64 {
-	if x != nil {
-		return x.AuthStatus
-	}
-	return 0
-}
-
-func (x *CheckEntRespCheckData) GetFrozenStatus() int64 {
-	if x != nil {
-		return x.FrozenStatus
-	}
-	return 0
-}
-
-type GetStatusByCodeResp_GetStatusByCode struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	AuthStatus int64 `protobuf:"varint,1,opt,name=authStatus,proto3" json:"authStatus,omitempty"` //企业是否认证 -1 未通过,0 未认证,1 已认证. -2 已到期 3待审核
-	IsInEnt    bool  `protobuf:"varint,2,opt,name=isInEnt,proto3" json:"isInEnt,omitempty"`       //是否在该企业内
-}
-
-func (x *GetStatusByCodeResp_GetStatusByCode) Reset() {
-	*x = GetStatusByCodeResp_GetStatusByCode{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_userCenter_proto_msgTypes[36]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *GetStatusByCodeResp_GetStatusByCode) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*GetStatusByCodeResp_GetStatusByCode) ProtoMessage() {}
-
-func (x *GetStatusByCodeResp_GetStatusByCode) ProtoReflect() protoreflect.Message {
-	mi := &file_userCenter_proto_msgTypes[36]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use GetStatusByCodeResp_GetStatusByCode.ProtoReflect.Descriptor instead.
-func (*GetStatusByCodeResp_GetStatusByCode) Descriptor() ([]byte, []int) {
-	return file_userCenter_proto_rawDescGZIP(), []int{20, 0}
-}
-
-func (x *GetStatusByCodeResp_GetStatusByCode) GetAuthStatus() int64 {
-	if x != nil {
-		return x.AuthStatus
-	}
-	return 0
-}
-
-func (x *GetStatusByCodeResp_GetStatusByCode) GetIsInEnt() bool {
-	if x != nil {
-		return x.IsInEnt
-	}
-	return false
-}
-
-var File_userCenter_proto protoreflect.FileDescriptor
-
-var file_userCenter_proto_rawDesc = []byte{
-	0x0a, 0x10, 0x75, 0x73, 0x65, 0x72, 0x43, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f,
-	0x74, 0x6f, 0x22, 0xd8, 0x02, 0x0a, 0x0a, 0x45, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65,
-	0x71, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
-	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x43,
-	0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x69,
-	0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x65, 0x61, 0x4e, 0x75, 0x6d,
-	0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x65, 0x61, 0x4e,
-	0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x75, 0x73, 0x69, 0x6e, 0x65, 0x73,
-	0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x75, 0x73, 0x69, 0x6e, 0x65, 0x73,
-	0x73, 0x12, 0x26, 0x0a, 0x0e, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x69, 0x61, 0x6c, 0x4c, 0x65, 0x74,
-	0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x66, 0x66, 0x69, 0x63,
-	0x69, 0x61, 0x6c, 0x4c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x10, 0x6f, 0x72, 0x67,
-	0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20,
-	0x01, 0x28, 0x09, 0x52, 0x10, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f,
-	0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x50, 0x61, 0x6e, 0x79,
-	0x54, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x50,
-	0x61, 0x6e, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x75, 0x74, 0x68, 0x4e,
-	0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x75, 0x74, 0x68, 0x4e,
-	0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x50, 0x68, 0x6f, 0x6e, 0x65,
-	0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x50, 0x68, 0x6f, 0x6e,
-	0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09,
-	0x52, 0x05, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6e, 0x74, 0x49, 0x64,
-	0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x6b, 0x0a,
-	0x0b, 0x45, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x0a,
-	0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
-	0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65,
-	0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
-	0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x20, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61,
-	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x45, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68,
-	0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x3b, 0x0a, 0x0b, 0x45, 0x6e,
-	0x74, 0x41, 0x75, 0x74, 0x68, 0x44, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61,
-	0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
-	0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
-	0x52, 0x05, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x92, 0x01, 0x0a, 0x0a, 0x45, 0x78, 0x61, 0x6d,
-	0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x45, 0x6e, 0x74, 0x49, 0x64, 0x18,
-	0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x45, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08,
-	0x41, 0x75, 0x74, 0x68, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
-	0x41, 0x75, 0x74, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x61, 0x73,
-	0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e,
-	0x12, 0x1c, 0x0a, 0x09, 0x41, 0x75, 0x64, 0x69, 0x74, 0x55, 0x73, 0x65, 0x72, 0x18, 0x04, 0x20,
-	0x01, 0x28, 0x09, 0x52, 0x09, 0x41, 0x75, 0x64, 0x69, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c,
-	0x0a, 0x09, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28,
-	0x09, 0x52, 0x09, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x49, 0x64, 0x22, 0x9e, 0x01, 0x0a,
-	0x0b, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x0a,
-	0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
-	0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65,
-	0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
-	0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x2c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61,
-	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65,
-	0x52, 0x65, 0x73, 0x70, 0x2e, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x44, 0x61, 0x74, 0x61,
-	0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x25, 0x0a, 0x0b, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e,
-	0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
-	0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x90, 0x03,
-	0x0a, 0x0a, 0x45, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04,
-	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
-	0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28,
-	0x09, 0x52, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61,
-	0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61,
-	0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74,
-	0x43, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x64,
-	0x69, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
-	0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
-	0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65,
-	0x12, 0x24, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d,
-	0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45,
-	0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74,
-	0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x75, 0x74, 0x68,
-	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x53,
-	0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e,
-	0x76, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x22,
-	0x0a, 0x0c, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x09,
-	0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x45, 0x6e, 0x64, 0x54, 0x69,
-	0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x72, 0x6f, 0x7a, 0x65, 0x6e, 0x53, 0x74, 0x61, 0x74,
-	0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x7a, 0x65, 0x6e,
-	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x67, 0x50, 0x68, 0x6f,
-	0x6e, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x67, 0x50, 0x68, 0x6f,
-	0x6e, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18,
-	0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x50, 0x68, 0x6f, 0x6e, 0x65,
-	0x22, 0x67, 0x0a, 0x0b, 0x45, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12,
-	0x1d, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20,
-	0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1b,
-	0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28,
-	0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x1c, 0x0a, 0x04, 0x64,
-	0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x45, 0x6e, 0x74, 0x44,
-	0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x59, 0x0a, 0x07, 0x45, 0x6e, 0x74,
-	0x44, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20,
-	0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61,
-	0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x61,
-	0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1c, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x03,
-	0x20, 0x03, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x45, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x04,
-	0x6c, 0x69, 0x73, 0x74, 0x22, 0xfd, 0x01, 0x0a, 0x07, 0x45, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74,
-	0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64,
-	0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x50, 0x61, 0x6e, 0x79, 0x54, 0x79, 0x70, 0x65, 0x18,
-	0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x50, 0x61, 0x6e, 0x79, 0x54, 0x79,
-	0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
-	0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69,
-	0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
-	0x52, 0x10, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79,
-	0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65,
-	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x74, 0x69,
-	0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18,
-	0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x54, 0x69, 0x6d, 0x65,
-	0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07,
-	0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
-	0x12, 0x22, 0x0a, 0x0c, 0x66, 0x72, 0x6f, 0x7a, 0x65, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
-	0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x7a, 0x65, 0x6e, 0x53, 0x74,
-	0x61, 0x74, 0x75, 0x73, 0x22, 0xf8, 0x01, 0x0a, 0x0e, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65,
-	0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
-	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61,
-	0x75, 0x74, 0x68, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
-	0x61, 0x75, 0x74, 0x68, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x67,
-	0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x67,
-	0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x75, 0x74, 0x68, 0x54, 0x79, 0x70,
-	0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x75, 0x74, 0x68, 0x54, 0x79, 0x70,
-	0x65, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69,
-	0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74,
-	0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x75, 0x74, 0x68, 0x45,
-	0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x75,
-	0x74, 0x68, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x67,
-	0x65, 0x4e, 0x75, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x67, 0x65,
-	0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18,
-	0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22,
-	0x73, 0x0a, 0x0f, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65,
-	0x73, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65,
-	0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64,
-	0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02,
-	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x24,
-	0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x45,
-	0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04,
-	0x64, 0x61, 0x74, 0x61, 0x22, 0x65, 0x0a, 0x0f, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x4c,
-	0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74,
-	0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a,
-	0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52,
-	0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x20, 0x0a, 0x04, 0x6c, 0x69, 0x73,
-	0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e,
-	0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0xfd, 0x01, 0x0a, 0x0b,
-	0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69,
-	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x65,
-	0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x65, 0x6e, 0x74, 0x49,
-	0x64, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x50, 0x61, 0x6e, 0x79, 0x54, 0x79, 0x70, 0x65,
-	0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x50, 0x61, 0x6e, 0x79, 0x54,
-	0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
-	0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x69,
-	0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65,
-	0x64, 0x69, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x50,
-	0x68, 0x6f, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68,
-	0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x54, 0x69,
-	0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x54,
-	0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x75, 0x74, 0x68, 0x54, 0x79, 0x70, 0x65, 0x18,
-	0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x61, 0x75, 0x74, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12,
-	0x1a, 0x0a, 0x08, 0x72, 0x65, 0x67, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28,
-	0x09, 0x52, 0x08, 0x72, 0x65, 0x67, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x22, 0x23, 0x0a, 0x0b, 0x43,
-	0x68, 0x65, 0x63, 0x6b, 0x45, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6e,
-	0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x65, 0x6e, 0x74, 0x49, 0x64,
-	0x22, 0xc8, 0x01, 0x0a, 0x0c, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x45, 0x6e, 0x74, 0x52, 0x65, 0x73,
-	0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18,
-	0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65,
-	0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20,
-	0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x2b, 0x0a,
-	0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x43, 0x68,
-	0x65, 0x63, 0x6b, 0x45, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x63, 0x68, 0x65, 0x63, 0x6b,
-	0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x4f, 0x0a, 0x09, 0x63, 0x68,
-	0x65, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x53,
-	0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x75, 0x74,
-	0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x72, 0x6f, 0x7a, 0x65,
-	0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x66,
-	0x72, 0x6f, 0x7a, 0x65, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x6b, 0x0a, 0x0b, 0x45,
-	0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x72,
-	0x72, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09,
-	0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72,
-	0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72,
-	0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x20, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03,
-	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x45, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x44, 0x61,
-	0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xd5, 0x05, 0x0a, 0x0b, 0x45, 0x6e, 0x74,
-	0x49, 0x6e, 0x66, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
-	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a,
-	0x61, 0x72, 0x65, 0x61, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
-	0x52, 0x0a, 0x61, 0x72, 0x65, 0x61, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0d,
-	0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20,
-	0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x50, 0x65, 0x72, 0x73,
-	0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x50, 0x68, 0x6f,
-	0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63,
-	0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74,
-	0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x53,
-	0x74, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x64, 0x75, 0x73, 0x74, 0x72, 0x79,
-	0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x64, 0x75, 0x73, 0x74, 0x72, 0x79,
-	0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x54, 0x79, 0x70, 0x65, 0x18,
-	0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x54, 0x79,
-	0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x43, 0x6f, 0x64, 0x65,
-	0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x43, 0x6f,
-	0x64, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x65, 0x67, 0x61, 0x6c, 0x50, 0x65, 0x72, 0x73, 0x6f,
-	0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x65, 0x67, 0x61, 0x6c, 0x50, 0x65,
-	0x72, 0x73, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x75, 0x73, 0x69, 0x6e, 0x65, 0x73, 0x73,
-	0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x75, 0x73, 0x69, 0x6e, 0x65, 0x73, 0x73,
-	0x12, 0x26, 0x0a, 0x0e, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x69, 0x61, 0x6c, 0x4c, 0x65, 0x74, 0x74,
-	0x65, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x69,
-	0x61, 0x6c, 0x4c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x10, 0x6f, 0x72, 0x67, 0x61,
-	0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0c, 0x20, 0x01,
-	0x28, 0x09, 0x52, 0x10, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e,
-	0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x75, 0x74, 0x68, 0x54, 0x79, 0x70, 0x65,
-	0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x61, 0x75, 0x74, 0x68, 0x54, 0x79, 0x70, 0x65,
-	0x12, 0x22, 0x0a, 0x0c, 0x66, 0x6f, 0x72, 0x7a, 0x65, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
-	0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x66, 0x6f, 0x72, 0x7a, 0x65, 0x6e, 0x53, 0x74,
-	0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x64, 0x69, 0x74, 0x55, 0x73, 0x65,
-	0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x75, 0x64, 0x69, 0x74, 0x55, 0x73,
-	0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x64, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18,
-	0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x75, 0x64, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65,
-	0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x11,
-	0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65,
-	0x12, 0x24, 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d,
-	0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61,
-	0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x75, 0x74, 0x68, 0x45, 0x6e,
-	0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x75, 0x74,
-	0x68, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68,
-	0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x75,
-	0x74, 0x68, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x75, 0x74, 0x68,
-	0x54, 0x69, 0x6d, 0x65, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x75, 0x74, 0x68,
-	0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x67, 0x50, 0x68, 0x6f, 0x6e, 0x65,
-	0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x67, 0x50, 0x68, 0x6f, 0x6e, 0x65,
-	0x22, 0x44, 0x0a, 0x0c, 0x45, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71,
-	0x12, 0x14, 0x0a, 0x05, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52,
-	0x05, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
-	0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61,
-	0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x0a, 0x0f, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x45,
-	0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x78, 0x61,
-	0x6d, 0x69, 0x6e, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x78,
-	0x61, 0x6d, 0x69, 0x6e, 0x65, 0x49, 0x64, 0x22, 0x3e, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x53, 0x74,
-	0x61, 0x74, 0x75, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a,
-	0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64,
-	0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
-	0x52, 0x05, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x22, 0xd8, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x53,
-	0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12,
-	0x1d, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20,
-	0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1b,
-	0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28,
-	0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x38, 0x0a, 0x04, 0x64,
-	0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x47, 0x65, 0x74, 0x53,
-	0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e,
-	0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52,
-	0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x4b, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74,
-	0x75, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68,
-	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x75,
-	0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x73, 0x49, 0x6e,
-	0x45, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x49, 0x6e, 0x45,
-	0x6e, 0x74, 0x22, 0x8c, 0x02, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12,
-	0x14, 0x0a, 0x05, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
-	0x70, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x69, 0x70, 0x53, 0x74, 0x61, 0x74,
-	0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x76, 0x69, 0x70, 0x53, 0x74, 0x61,
-	0x74, 0x75, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x53, 0x74, 0x61,
-	0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6d, 0x65, 0x6d, 0x62, 0x65,
-	0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x65, 0x6e, 0x74, 0x6e, 0x69,
-	0x63, 0x68, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52,
-	0x0e, 0x65, 0x6e, 0x74, 0x6e, 0x69, 0x63, 0x68, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
-	0x24, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, 0x79, 0x70, 0x65,
-	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62,
-	0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20,
-	0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x52,
-	0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d,
-	0x73, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d,
-	0x73, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65,
-	0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64,
-	0x65, 0x22, 0xc7, 0x02, 0x0a, 0x09, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x12,
-	0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
-	0x28, 0x03, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a,
-	0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07,
-	0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x04, 0x61, 0x72, 0x65, 0x61, 0x18,
-	0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62,
-	0x65, 0x2e, 0x41, 0x72, 0x65, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x61, 0x72, 0x65,
-	0x61, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x75, 0x79, 0x65, 0x72, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18,
-	0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x75, 0x79, 0x65, 0x72, 0x63, 0x6c, 0x61, 0x73,
-	0x73, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x66, 0x6f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20,
-	0x03, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x66, 0x6f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a,
-	0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x06, 0x2e, 0x49,
-	0x74, 0x65, 0x6d, 0x73, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6d,
-	0x61, 0x74, 0x63, 0x68, 0x77, 0x61, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6d,
-	0x61, 0x74, 0x63, 0x68, 0x77, 0x61, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x6a, 0x65,
-	0x63, 0x74, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x70,
-	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x1a, 0x3e, 0x0a, 0x09, 0x41,
-	0x72, 0x65, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
-	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x05, 0x76, 0x61,
-	0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x05, 0x2e, 0x4c, 0x69, 0x73, 0x74,
-	0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x1c, 0x0a, 0x04, 0x4c,
-	0x69, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x03,
-	0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x5a, 0x0a, 0x05, 0x49, 0x74, 0x65,
-	0x6d, 0x73, 0x12, 0x15, 0x0a, 0x06, 0x73, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01,
-	0x28, 0x09, 0x52, 0x05, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x75, 0x70, 0x64,
-	0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x75,
-	0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x05, 0x61, 0x5f, 0x6b,
-	0x65, 0x79, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x05, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x52,
-	0x04, 0x61, 0x4b, 0x65, 0x79, 0x22, 0x6c, 0x0a, 0x04, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x10, 0x0a,
-	0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
-	0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52,
-	0x06, 0x6e, 0x6f, 0x74, 0x6b, 0x65, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74,
-	0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64,
-	0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68,
-	0x77, 0x61, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68,
-	0x77, 0x61, 0x79, 0x22, 0x4d, 0x0a, 0x07, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x14,
-	0x0a, 0x05, 0x61, 0x70, 0x70, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61,
-	0x70, 0x70, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02,
-	0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05,
-	0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x79, 0x70,
-	0x65, 0x73, 0x22, 0x56, 0x0a, 0x0a, 0x45, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71,
-	0x12, 0x14, 0x0a, 0x05, 0x61, 0x70, 0x70, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
-	0x05, 0x61, 0x70, 0x70, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65,
-	0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x6e, 0x74, 0x55, 0x73,
-	0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20,
-	0x01, 0x28, 0x03, 0x52, 0x05, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x67, 0x0a, 0x0b, 0x45, 0x6e,
-	0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x72, 0x72,
-	0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65,
-	0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f,
-	0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72,
-	0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x1c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20,
-	0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x45, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x64,
-	0x61, 0x74, 0x61, 0x22, 0x81, 0x01, 0x0a, 0x07, 0x45, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12,
-	0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e,
-	0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01,
-	0x28, 0x09, 0x52, 0x05, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x61, 0x69,
-	0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x1a, 0x0a,
-	0x08, 0x64, 0x65, 0x70, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
-	0x08, 0x64, 0x65, 0x70, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x6e, 0x74,
-	0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x6e,
-	0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x68, 0x0a, 0x0e, 0x45, 0x6e, 0x74, 0x55, 0x73,
-	0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x70, 0x70,
-	0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x70, 0x70, 0x49, 0x64, 0x12,
-	0x14, 0x0a, 0x05, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05,
-	0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x70, 0x74, 0x49, 0x64, 0x18,
-	0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x64, 0x65, 0x70, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a,
-	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
-	0x65, 0x22, 0x73, 0x0a, 0x0f, 0x45, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74,
-	0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x63, 0x6f,
-	0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43,
-	0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67,
-	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67,
-	0x12, 0x24, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10,
-	0x2e, 0x45, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61,
-	0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xa9, 0x01, 0x0a, 0x0f, 0x45, 0x6e, 0x74, 0x55, 0x73,
-	0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
-	0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16,
-	0x0a, 0x06, 0x64, 0x65, 0x70, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06,
-	0x64, 0x65, 0x70, 0x74, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x49, 0x64, 0x18, 0x03, 0x20,
-	0x01, 0x28, 0x03, 0x52, 0x03, 0x70, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x55,
-	0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x08, 0x2e,
-	0x45, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72,
-	0x4c, 0x69, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x08, 0x64, 0x65, 0x70, 0x74, 0x4c, 0x69, 0x73, 0x74,
-	0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x45, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72,
-	0x4c, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x64, 0x65, 0x70, 0x74, 0x4c, 0x69,
-	0x73, 0x74, 0x22, 0x69, 0x0a, 0x13, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x49, 0x73, 0x45, 0x6e, 0x74,
-	0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x72, 0x72,
-	0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65,
-	0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f,
-	0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72,
-	0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
-	0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x32, 0xd6, 0x04,
-	0x0a, 0x0a, 0x55, 0x73, 0x65, 0x72, 0x43, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x07,
-	0x45, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x12, 0x0b, 0x2e, 0x45, 0x6e, 0x74, 0x41, 0x75, 0x74,
-	0x68, 0x52, 0x65, 0x71, 0x1a, 0x0c, 0x2e, 0x45, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65,
-	0x73, 0x70, 0x12, 0x27, 0x0a, 0x0a, 0x45, 0x6e, 0x74, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65,
-	0x12, 0x0b, 0x2e, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x0c, 0x2e,
-	0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x24, 0x0a, 0x07, 0x45,
-	0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x0b, 0x2e, 0x45, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74,
-	0x52, 0x65, 0x71, 0x1a, 0x0c, 0x2e, 0x45, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73,
-	0x70, 0x12, 0x30, 0x0a, 0x0b, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x4c, 0x69, 0x73, 0x74,
-	0x12, 0x0f, 0x2e, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65,
-	0x71, 0x1a, 0x10, 0x2e, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52,
-	0x65, 0x73, 0x70, 0x12, 0x27, 0x0a, 0x08, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x45, 0x6e, 0x74, 0x12,
-	0x0c, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x45, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x0d, 0x2e,
-	0x43, 0x68, 0x65, 0x63, 0x6b, 0x45, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x07,
-	0x45, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0c, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x45,
-	0x6e, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x0c, 0x2e, 0x45, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52,
-	0x65, 0x73, 0x70, 0x12, 0x28, 0x0a, 0x09, 0x45, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
-	0x12, 0x0d, 0x2e, 0x45, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x1a,
-	0x0c, 0x2e, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2d, 0x0a,
-	0x0b, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x2e, 0x43,
-	0x68, 0x65, 0x63, 0x6b, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x0c,
-	0x2e, 0x45, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3c, 0x0a, 0x0f,
-	0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12,
-	0x13, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x64,
-	0x65, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
-	0x42, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x22, 0x0a, 0x0b, 0x47, 0x65,
-	0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x08, 0x2e, 0x55, 0x73, 0x65, 0x72,
-	0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2b,
-	0x0a, 0x0e, 0x47, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f,
-	0x12, 0x0b, 0x2e, 0x45, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x0c, 0x2e,
-	0x45, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x33, 0x0a, 0x0e, 0x47,
-	0x65, 0x74, 0x45, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x0f, 0x2e,
-	0x45, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x10,
-	0x2e, 0x45, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70,
-	0x12, 0x34, 0x0a, 0x0f, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x49, 0x73, 0x45, 0x6e, 0x74, 0x41, 0x64,
-	0x6d, 0x69, 0x6e, 0x12, 0x0b, 0x2e, 0x45, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71,
-	0x1a, 0x14, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x49, 0x73, 0x45, 0x6e, 0x74, 0x41, 0x64, 0x6d,
-	0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06,
-	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
-}
-
-var (
-	file_userCenter_proto_rawDescOnce sync.Once
-	file_userCenter_proto_rawDescData = file_userCenter_proto_rawDesc
-)
-
-func file_userCenter_proto_rawDescGZIP() []byte {
-	file_userCenter_proto_rawDescOnce.Do(func() {
-		file_userCenter_proto_rawDescData = protoimpl.X.CompressGZIP(file_userCenter_proto_rawDescData)
-	})
-	return file_userCenter_proto_rawDescData
-}
-
-var file_userCenter_proto_msgTypes = make([]protoimpl.MessageInfo, 38)
-var file_userCenter_proto_goTypes = []interface{}{
-	(*EntAuthReq)(nil),                          // 0: EntAuthReq
-	(*EntAuthResp)(nil),                         // 1: EntAuthResp
-	(*EntAuthData)(nil),                         // 2: EntAuthData
-	(*ExamineReq)(nil),                          // 3: ExamineReq
-	(*ExamineResp)(nil),                         // 4: ExamineResp
-	(*EntListReq)(nil),                          // 5: EntListReq
-	(*EntListResp)(nil),                         // 6: EntListResp
-	(*EntData)(nil),                             // 7: EntData
-	(*EntList)(nil),                             // 8: EntList
-	(*ExamineListReq)(nil),                      // 9: ExamineListReq
-	(*ExamineListResp)(nil),                     // 10: ExamineListResp
-	(*ExamineListData)(nil),                     // 11: ExamineListData
-	(*ExamineList)(nil),                         // 12: ExamineList
-	(*CheckEntReq)(nil),                         // 13: CheckEntReq
-	(*CheckEntResp)(nil),                        // 14: CheckEntResp
-	(*EntInfoResp)(nil),                         // 15: EntInfoResp
-	(*EntInfoData)(nil),                         // 16: EntInfoData
-	(*EntUpdateReq)(nil),                        // 17: EntUpdateReq
-	(*CheckExamineReq)(nil),                     // 18: CheckExamineReq
-	(*GetStatusByCodeReq)(nil),                  // 19: GetStatusByCodeReq
-	(*GetStatusByCodeResp)(nil),                 // 20: GetStatusByCodeResp
-	(*UserInfo)(nil),                            // 21: UserInfo
-	(*Subscribe)(nil),                           // 22: Subscribe
-	(*List)(nil),                                // 23: List
-	(*Items)(nil),                               // 24: Items
-	(*Keys)(nil),                                // 25: Keys
-	(*UserReq)(nil),                             // 26: UserReq
-	(*EntUserReq)(nil),                          // 27: EntUserReq
-	(*EntUserResp)(nil),                         // 28: EntUserResp
-	(*EntUser)(nil),                             // 29: EntUser
-	(*EntUserListReq)(nil),                      // 30: EntUserListReq
-	(*EntUserListResp)(nil),                     // 31: EntUserListResp
-	(*EntUserListData)(nil),                     // 32: EntUserListData
-	(*CheckIsEntAdminResp)(nil),                 // 33: CheckIsEntAdminResp
-	(*ExamineResp_ExamineData)(nil),             // 34: ExamineResp.ExamineData
-	(*CheckEntRespCheckData)(nil),               // 35: CheckEntResp.checkData
-	(*GetStatusByCodeResp_GetStatusByCode)(nil), // 36: GetStatusByCodeResp.GetStatusByCode
-	nil, // 37: Subscribe.AreaEntry
-}
-var file_userCenter_proto_depIdxs = []int32{
-	2,  // 0: EntAuthResp.data:type_name -> EntAuthData
-	34, // 1: ExamineResp.data:type_name -> ExamineResp.ExamineData
-	7,  // 2: EntListResp.data:type_name -> EntData
-	8,  // 3: EntData.list:type_name -> EntList
-	11, // 4: ExamineListResp.data:type_name -> ExamineListData
-	12, // 5: ExamineListData.list:type_name -> ExamineList
-	35, // 6: CheckEntResp.data:type_name -> CheckEntResp.checkData
-	16, // 7: EntInfoResp.data:type_name -> EntInfoData
-	36, // 8: GetStatusByCodeResp.data:type_name -> GetStatusByCodeResp.GetStatusByCode
-	22, // 9: UserInfo.data:type_name -> Subscribe
-	37, // 10: Subscribe.area:type_name -> Subscribe.AreaEntry
-	24, // 11: Subscribe.items:type_name -> Items
-	25, // 12: Items.a_key:type_name -> Keys
-	29, // 13: EntUserResp.data:type_name -> EntUser
-	32, // 14: EntUserListResp.data:type_name -> EntUserListData
-	29, // 15: EntUserListData.entUserList:type_name -> EntUser
-	32, // 16: EntUserListData.deptList:type_name -> EntUserListData
-	23, // 17: Subscribe.AreaEntry.value:type_name -> List
-	0,  // 18: UserCenter.EntAuth:input_type -> EntAuthReq
-	3,  // 19: UserCenter.EntExamine:input_type -> ExamineReq
-	5,  // 20: UserCenter.EntList:input_type -> EntListReq
-	9,  // 21: UserCenter.ExamineList:input_type -> ExamineListReq
-	13, // 22: UserCenter.CheckEnt:input_type -> CheckEntReq
-	13, // 23: UserCenter.EntInfo:input_type -> CheckEntReq
-	17, // 24: UserCenter.EntUpdate:input_type -> EntUpdateReq
-	18, // 25: UserCenter.ExamineInfo:input_type -> CheckExamineReq
-	19, // 26: UserCenter.GetStatusByCode:input_type -> GetStatusByCodeReq
-	26, // 27: UserCenter.GetUserInfo:input_type -> UserReq
-	27, // 28: UserCenter.GetEntUserInfo:input_type -> EntUserReq
-	30, // 29: UserCenter.GetEntUserList:input_type -> EntUserListReq
-	27, // 30: UserCenter.CheckIsEntAdmin:input_type -> EntUserReq
-	1,  // 31: UserCenter.EntAuth:output_type -> EntAuthResp
-	4,  // 32: UserCenter.EntExamine:output_type -> ExamineResp
-	6,  // 33: UserCenter.EntList:output_type -> EntListResp
-	10, // 34: UserCenter.ExamineList:output_type -> ExamineListResp
-	14, // 35: UserCenter.CheckEnt:output_type -> CheckEntResp
-	15, // 36: UserCenter.EntInfo:output_type -> EntInfoResp
-	4,  // 37: UserCenter.EntUpdate:output_type -> ExamineResp
-	15, // 38: UserCenter.ExamineInfo:output_type -> EntInfoResp
-	20, // 39: UserCenter.GetStatusByCode:output_type -> GetStatusByCodeResp
-	21, // 40: UserCenter.GetUserInfo:output_type -> UserInfo
-	28, // 41: UserCenter.GetEntUserInfo:output_type -> EntUserResp
-	31, // 42: UserCenter.GetEntUserList:output_type -> EntUserListResp
-	33, // 43: UserCenter.CheckIsEntAdmin:output_type -> CheckIsEntAdminResp
-	31, // [31:44] is the sub-list for method output_type
-	18, // [18:31] is the sub-list for method input_type
-	18, // [18:18] is the sub-list for extension type_name
-	18, // [18:18] is the sub-list for extension extendee
-	0,  // [0:18] is the sub-list for field type_name
-}
-
-func init() { file_userCenter_proto_init() }
-func file_userCenter_proto_init() {
-	if File_userCenter_proto != nil {
-		return
-	}
-	if !protoimpl.UnsafeEnabled {
-		file_userCenter_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*EntAuthReq); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*EntAuthResp); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*EntAuthData); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*ExamineReq); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*ExamineResp); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*EntListReq); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*EntListResp); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*EntData); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*EntList); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*ExamineListReq); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*ExamineListResp); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*ExamineListData); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*ExamineList); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*CheckEntReq); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*CheckEntResp); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*EntInfoResp); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*EntInfoData); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*EntUpdateReq); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*CheckExamineReq); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*GetStatusByCodeReq); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*GetStatusByCodeResp); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*UserInfo); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*Subscribe); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*List); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*Items); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*Keys); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*UserReq); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*EntUserReq); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*EntUserResp); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*EntUser); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*EntUserListReq); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*EntUserListResp); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*EntUserListData); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*CheckIsEntAdminResp); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*ExamineResp_ExamineData); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*CheckEntRespCheckData); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_userCenter_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*GetStatusByCodeResp_GetStatusByCode); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-	}
-	type x struct{}
-	out := protoimpl.TypeBuilder{
-		File: protoimpl.DescBuilder{
-			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: file_userCenter_proto_rawDesc,
-			NumEnums:      0,
-			NumMessages:   38,
-			NumExtensions: 0,
-			NumServices:   1,
-		},
-		GoTypes:           file_userCenter_proto_goTypes,
-		DependencyIndexes: file_userCenter_proto_depIdxs,
-		MessageInfos:      file_userCenter_proto_msgTypes,
-	}.Build()
-	File_userCenter_proto = out.File
-	file_userCenter_proto_rawDesc = nil
-	file_userCenter_proto_goTypes = nil
-	file_userCenter_proto_depIdxs = nil
-}

+ 1 - 1
rpc/test/ent_test.go

@@ -74,7 +74,7 @@ func Test_EntInfo(t *testing.T) {
 	ctx, _ := context.WithTimeout(context.Background(), 5*time.Second)
 	FileSystem := usercenterclient.NewUserCenter(zrpc.MustNewClient(c.FileSystemConf))
 	req := &pb.CheckEntReq{
-		EntId: 14823,
+		EntId: 14783,
 	}
 	res, err := FileSystem.EntInfo(ctx, req)
 	log.Println("err ", err)

+ 56 - 0
rpc/test/user_test.go

@@ -0,0 +1,56 @@
+package test
+
+import (
+	"context"
+	"log"
+	"testing"
+	"time"
+
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/pb"
+	usercenterclient "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/usercenter"
+	"github.com/zeromicro/go-zero/zrpc"
+)
+
+// go test -v -run Test_UserAdd
+func Test_UserAdd(t *testing.T) {
+	ctx, _ := context.WithTimeout(context.Background(), 2*time.Second)
+	FileSystem := usercenterclient.NewUserCenter(zrpc.MustNewClient(c.FileSystemConf))
+	req := &pb.UserAddReq{
+		Appid:    "10000",
+		Phone:    "18530014520",
+		Nickname: "xx",
+		Company:  "郑州森曼木材有限公司",
+	}
+	res, err := FileSystem.UserAdd(ctx, req)
+	log.Println("err ", err)
+	log.Println("res:", res)
+}
+
+// go test -v -run Test_UserUpdate
+func Test_UserUpdate(t *testing.T) {
+	ctx, _ := context.WithTimeout(context.Background(), 2*time.Second)
+	FileSystem := usercenterclient.NewUserCenter(zrpc.MustNewClient(c.FileSystemConf))
+	req := &pb.UserIdReq{
+		Id:       int64(4),
+		Appid:    "10000",
+		Phone:    "18530014520",
+		Nickname: "小徐的公司",
+		Company:  "郑州森曼木材有限公司",
+	}
+	res, err := FileSystem.UserUpdate(ctx, req)
+	log.Println("err ", err)
+	log.Println("res:", res)
+}
+
+// go test -v -run Test_UserDel
+func Test_UserDel(t *testing.T) {
+	ctx, _ := context.WithTimeout(context.Background(), 2*time.Second)
+	FileSystem := usercenterclient.NewUserCenter(zrpc.MustNewClient(c.FileSystemConf))
+	req := &pb.UserIdReq{
+		Id:    int64(4),
+		Appid: "10000",
+	}
+	res, err := FileSystem.UserDel(ctx, req)
+	log.Println("err ", err)
+	log.Println("res:", res)
+}

+ 21 - 2
rpc/test/usercenter.yaml

@@ -1,5 +1,5 @@
 Name: usercenter.rpc
-ListenOn: 127.0.0.1:1001
+ListenOn: 127.0.0.1:8080
 Redis:
   Host: 127.0.0.1
   addr: 127.0.0.1:6379
@@ -28,7 +28,26 @@ Mysql:
   passWord: Topnet123
   maxOpenConns: 5
   maxIdleConns: 5
+<<<<<<< HEAD
 Mongo:
   dbName: qfw
   size: 5
-  address: 192.168.3.206:27080
+  address: 192.168.3.206:27080
+=======
+BaseMysql:
+  dbName: base_service  
+  address: 192.168.3.11:3366
+  userName: root
+  passWord: Topnet123
+  maxOpenConns: 5
+  maxIdleConns: 5
+Logx:
+  Mode: console #console|file|volume
+  Path: logs
+  Level: info #info|error|severe
+  KeepDays: 100
+IsRun: true
+CheckEntIsExpire: 00:00
+DoMain: https://jybx-webtest.jydev.jianyu360.com
+Timeout:  5000
+>>>>>>> master

+ 67 - 20
rpc/userCenter.proto

@@ -44,12 +44,13 @@ message ExamineReq{
 message ExamineResp{
 	int64   error_code = 1;
 	string  error_msg = 2;
-	message ExamineData{
-		int64 status = 1;
-	}
 	ExamineData data =3;
 }
 
+message ExamineData{
+	int64 status = 1;
+}
+
 //企业列表入参
 message EntListReq{
 	string name = 1;//企业名称
@@ -135,13 +136,14 @@ message CheckEntReq{
 message CheckEntResp{
 	int64   error_code = 1;
 	string  error_msg = 2;
-	message checkData {
-		int64 authStatus =1;//企业是否认证 -1 未通过,0 未认证,1 已认证. -2 已到期 3待审核
-		int64 frozenStatus =2; //冻结  1正常  0冻结
-	}
 	checkData data =3;
 }
 
+message checkData {
+	int64 authStatus =1;//企业是否认证 -1 未通过,0 未认证,1 已认证. -2 已到期 3待审核
+	int64 frozenStatus =2; //冻结  1正常  0冻结
+}
+
 message EntInfoResp{
 	int64   error_code = 1;
 	string  error_msg = 2;
@@ -192,10 +194,6 @@ message GetStatusByCodeReq{
 message GetStatusByCodeResp{
 	int64   error_code = 1;
 	string  error_msg = 2;
-	message GetStatusByCode {
-		int64 authStatus =1;//企业是否认证 -1 未通过,0 未认证,1 已认证. -2 已到期 3待审核
-		bool isInEnt =2; //是否在该企业内
-	}
 	GetStatusByCode data = 3; //详情
 }
 
@@ -295,23 +293,66 @@ message CheckIsEntAdminResp{
 	int64 status=3; //1企业管理员 2部门管理员 3员工 
 }
 
+message GetStatusByCode {
+	int64 authStatus =1;//企业是否认证 -1 未通过,0 未认证,1 已认证. -2 已到期 3待审核
+	bool isInEnt =2; //是否在该企业内
+}
+
+message UserAddReq {
+	string appid = 1;
+	string phone = 2;
+	string nickname = 3;
+	string headimg = 4;
+	string company = 5;
+	string position = 6;
+	string password = 7;
+	string s_openid = 8;
+	string a_openid = 9;
+	string unionid = 10;
+}
+
+message UserAddResp {
+	int64   error_code = 1;
+	string  error_msg = 2;
+	UserAdds data = 3;
+}
+
+message UserAdds {
+	int64 status = 1;
+	int64 id = 2;
+}
+
+message UserIdReq {
+	string appid = 1;
+	int64 id = 2; 
+	string phone = 3;
+	string nickname = 4;
+	string headimg = 5;
+	string company = 6;
+	string position = 7;
+	string password = 8;
+	string s_openid = 9;
+	string a_openid = 10;
+	string unionid = 11;
+}
+
 service UserCenter {
 	//企业认证
 	rpc EntAuth (EntAuthReq) returns (EntAuthResp);
 	//机构审核
-	rpc EntExamine(ExamineReq) returns (ExamineResp);
+	rpc EntExamine (ExamineReq) returns (ExamineResp);
 	//企业列表
-	rpc EntList(EntListReq) returns (EntListResp);
+	rpc EntList (EntListReq) returns (EntListResp);
 	//审核列表
-	rpc ExamineList (ExamineListReq)returns (ExamineListResp);
+	rpc ExamineList (ExamineListReq) returns (ExamineListResp);
 	//查看企业状态
-	rpc CheckEnt (CheckEntReq) returns(CheckEntResp);
+	rpc CheckEnt (CheckEntReq) returns (CheckEntResp);
 	//查看企业详情
-	rpc EntInfo (CheckEntReq)returns (EntInfoResp);
-	// 冻结/解冻企业
-	rpc EntUpdate (EntUpdateReq) returns(ExamineResp);
+	rpc EntInfo (CheckEntReq) returns (EntInfoResp);
+	//冻结/解冻企业
+	rpc EntUpdate (EntUpdateReq) returns (ExamineResp);
 	//查看审核详情
-	rpc ExamineInfo(CheckExamineReq) returns (EntInfoResp);
+	rpc ExamineInfo (CheckExamineReq) returns (EntInfoResp);
 	//根据统一社会信用代码查询企业状态
 	rpc GetStatusByCode(GetStatusByCodeReq) returns(GetStatusByCodeResp);
 	//获取客户信息
@@ -322,4 +363,10 @@ service UserCenter {
 	rpc GetEntUserList (EntUserListReq) returns(EntUserListResp);
 	//查看员工是否是企业管理员
 	rpc CheckIsEntAdmin(EntUserReq)returns(CheckIsEntAdminResp);
-}
+	//新增用户
+	rpc UserAdd (UserAddReq) returns (UserAddResp);
+	//更新用户
+	rpc UserUpdate (UserIdReq) returns (ExamineResp);
+	//删除用户
+	rpc UserDel (UserIdReq) returns (ExamineResp);
+ }

+ 89 - 29
rpc/usercenter/usercenter.go

@@ -1,6 +1,8 @@
 // Code generated by goctl. DO NOT EDIT!
 // Source: userCenter.proto
 
+//go:generate mockgen -destination ./usercenter_mock.go -package usercenter -source $GOFILE
+
 package usercenter
 
 import (
@@ -9,10 +11,10 @@ import (
 	"bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/pb"
 
 	"github.com/zeromicro/go-zero/zrpc"
-	"google.golang.org/grpc"
 )
 
 type (
+<<<<<<< HEAD
 	CheckEntReq                         = pb.CheckEntReq
 	CheckEntResp                        = pb.CheckEntResp
 	CheckEntRespCheckData               = pb.CheckEntRespCheckData
@@ -50,25 +52,56 @@ type (
 	Subscribe                           = pb.Subscribe
 	UserInfo                            = pb.UserInfo
 	UserReq                             = pb.UserReq
+=======
+	EntUpdateReq        = pb.EntUpdateReq
+	GetStatusByCode     = pb.GetStatusByCode
+	ExamineResp         = pb.ExamineResp
+	EntData             = pb.EntData
+	CheckEntReq         = pb.CheckEntReq
+	GetStatusByCodeReq  = pb.GetStatusByCodeReq
+	EntAuthResp         = pb.EntAuthResp
+	ExamineList         = pb.ExamineList
+	EntInfoData         = pb.EntInfoData
+	UserAddResp         = pb.UserAddResp
+	EntListReq          = pb.EntListReq
+	ExamineListReq      = pb.ExamineListReq
+	UserAdds            = pb.UserAdds
+	EntAuthReq          = pb.EntAuthReq
+	EntAuthData         = pb.EntAuthData
+	EntInfoResp         = pb.EntInfoResp
+	GetStatusByCodeResp = pb.GetStatusByCodeResp
+	CheckData           = pb.CheckData
+	CheckExamineReq     = pb.CheckExamineReq
+	ExamineReq          = pb.ExamineReq
+	ExamineData         = pb.ExamineData
+	EntList             = pb.EntList
+	ExamineListData     = pb.ExamineListData
+	EntListResp         = pb.EntListResp
+	ExamineListResp     = pb.ExamineListResp
+	UserAddReq          = pb.UserAddReq
+	CheckEntResp        = pb.CheckEntResp
+	UserIdReq           = pb.UserIdReq
+>>>>>>> master
 
 	UserCenter interface {
 		// 企业认证
-		EntAuth(ctx context.Context, in *EntAuthReq, opts ...grpc.CallOption) (*EntAuthResp, error)
+		EntAuth(ctx context.Context, in *EntAuthReq) (*EntAuthResp, error)
 		// 机构审核
-		EntExamine(ctx context.Context, in *ExamineReq, opts ...grpc.CallOption) (*ExamineResp, error)
+		EntExamine(ctx context.Context, in *ExamineReq) (*ExamineResp, error)
 		// 企业列表
-		EntList(ctx context.Context, in *EntListReq, opts ...grpc.CallOption) (*EntListResp, error)
+		EntList(ctx context.Context, in *EntListReq) (*EntListResp, error)
 		// 审核列表
-		ExamineList(ctx context.Context, in *ExamineListReq, opts ...grpc.CallOption) (*ExamineListResp, error)
+		ExamineList(ctx context.Context, in *ExamineListReq) (*ExamineListResp, error)
 		// 查看企业状态
-		CheckEnt(ctx context.Context, in *CheckEntReq, opts ...grpc.CallOption) (*CheckEntResp, error)
+		CheckEnt(ctx context.Context, in *CheckEntReq) (*CheckEntResp, error)
 		// 查看企业详情
-		EntInfo(ctx context.Context, in *CheckEntReq, opts ...grpc.CallOption) (*EntInfoResp, error)
-		//  冻结/解冻企业
-		EntUpdate(ctx context.Context, in *EntUpdateReq, opts ...grpc.CallOption) (*ExamineResp, error)
+		EntInfo(ctx context.Context, in *CheckEntReq) (*EntInfoResp, error)
+		// 冻结/解冻企业
+		EntUpdate(ctx context.Context, in *EntUpdateReq) (*ExamineResp, error)
 		// 查看审核详情
-		ExamineInfo(ctx context.Context, in *CheckExamineReq, opts ...grpc.CallOption) (*EntInfoResp, error)
+		ExamineInfo(ctx context.Context, in *CheckExamineReq) (*EntInfoResp, error)
 		// 根据统一社会信用代码查询企业状态
+<<<<<<< HEAD
 		GetStatusByCode(ctx context.Context, in *GetStatusByCodeReq, opts ...grpc.CallOption) (*GetStatusByCodeResp, error)
 		// 获取客户信息
 		GetUserInfo(ctx context.Context, in *UserReq, opts ...grpc.CallOption) (*UserInfo, error)
@@ -78,6 +111,15 @@ type (
 		GetEntUserList(ctx context.Context, in *EntUserListReq, opts ...grpc.CallOption) (*EntUserListResp, error)
 		// 查看员工是否是企业管理员
 		CheckIsEntAdmin(ctx context.Context, in *EntUserReq, opts ...grpc.CallOption) (*CheckIsEntAdminResp, error)
+=======
+		GetStatusByCode(ctx context.Context, in *GetStatusByCodeReq) (*GetStatusByCodeResp, error)
+		// 新增用户
+		UserAdd(ctx context.Context, in *UserAddReq) (*UserAddResp, error)
+		// 更新用户
+		UserUpdate(ctx context.Context, in *UserIdReq) (*ExamineResp, error)
+		// 删除用户
+		UserDel(ctx context.Context, in *UserIdReq) (*ExamineResp, error)
+>>>>>>> master
 	}
 
 	defaultUserCenter struct {
@@ -92,57 +134,75 @@ func NewUserCenter(cli zrpc.Client) UserCenter {
 }
 
 // 企业认证
-func (m *defaultUserCenter) EntAuth(ctx context.Context, in *EntAuthReq, opts ...grpc.CallOption) (*EntAuthResp, error) {
+func (m *defaultUserCenter) EntAuth(ctx context.Context, in *EntAuthReq) (*EntAuthResp, error) {
 	client := pb.NewUserCenterClient(m.cli.Conn())
-	return client.EntAuth(ctx, in, opts...)
+	return client.EntAuth(ctx, in)
 }
 
 // 机构审核
-func (m *defaultUserCenter) EntExamine(ctx context.Context, in *ExamineReq, opts ...grpc.CallOption) (*ExamineResp, error) {
+func (m *defaultUserCenter) EntExamine(ctx context.Context, in *ExamineReq) (*ExamineResp, error) {
 	client := pb.NewUserCenterClient(m.cli.Conn())
-	return client.EntExamine(ctx, in, opts...)
+	return client.EntExamine(ctx, in)
 }
 
 // 企业列表
-func (m *defaultUserCenter) EntList(ctx context.Context, in *EntListReq, opts ...grpc.CallOption) (*EntListResp, error) {
+func (m *defaultUserCenter) EntList(ctx context.Context, in *EntListReq) (*EntListResp, error) {
 	client := pb.NewUserCenterClient(m.cli.Conn())
-	return client.EntList(ctx, in, opts...)
+	return client.EntList(ctx, in)
 }
 
 // 审核列表
-func (m *defaultUserCenter) ExamineList(ctx context.Context, in *ExamineListReq, opts ...grpc.CallOption) (*ExamineListResp, error) {
+func (m *defaultUserCenter) ExamineList(ctx context.Context, in *ExamineListReq) (*ExamineListResp, error) {
 	client := pb.NewUserCenterClient(m.cli.Conn())
-	return client.ExamineList(ctx, in, opts...)
+	return client.ExamineList(ctx, in)
 }
 
 // 查看企业状态
-func (m *defaultUserCenter) CheckEnt(ctx context.Context, in *CheckEntReq, opts ...grpc.CallOption) (*CheckEntResp, error) {
+func (m *defaultUserCenter) CheckEnt(ctx context.Context, in *CheckEntReq) (*CheckEntResp, error) {
 	client := pb.NewUserCenterClient(m.cli.Conn())
-	return client.CheckEnt(ctx, in, opts...)
+	return client.CheckEnt(ctx, in)
 }
 
 // 查看企业详情
-func (m *defaultUserCenter) EntInfo(ctx context.Context, in *CheckEntReq, opts ...grpc.CallOption) (*EntInfoResp, error) {
+func (m *defaultUserCenter) EntInfo(ctx context.Context, in *CheckEntReq) (*EntInfoResp, error) {
 	client := pb.NewUserCenterClient(m.cli.Conn())
-	return client.EntInfo(ctx, in, opts...)
+	return client.EntInfo(ctx, in)
 }
 
-//  冻结/解冻企业
-func (m *defaultUserCenter) EntUpdate(ctx context.Context, in *EntUpdateReq, opts ...grpc.CallOption) (*ExamineResp, error) {
+// 冻结/解冻企业
+func (m *defaultUserCenter) EntUpdate(ctx context.Context, in *EntUpdateReq) (*ExamineResp, error) {
 	client := pb.NewUserCenterClient(m.cli.Conn())
-	return client.EntUpdate(ctx, in, opts...)
+	return client.EntUpdate(ctx, in)
 }
 
 // 查看审核详情
-func (m *defaultUserCenter) ExamineInfo(ctx context.Context, in *CheckExamineReq, opts ...grpc.CallOption) (*EntInfoResp, error) {
+func (m *defaultUserCenter) ExamineInfo(ctx context.Context, in *CheckExamineReq) (*EntInfoResp, error) {
 	client := pb.NewUserCenterClient(m.cli.Conn())
-	return client.ExamineInfo(ctx, in, opts...)
+	return client.ExamineInfo(ctx, in)
 }
 
 // 根据统一社会信用代码查询企业状态
-func (m *defaultUserCenter) GetStatusByCode(ctx context.Context, in *GetStatusByCodeReq, opts ...grpc.CallOption) (*GetStatusByCodeResp, error) {
+func (m *defaultUserCenter) GetStatusByCode(ctx context.Context, in *GetStatusByCodeReq) (*GetStatusByCodeResp, error) {
+	client := pb.NewUserCenterClient(m.cli.Conn())
+	return client.GetStatusByCode(ctx, in)
+}
+
+// 新增用户
+func (m *defaultUserCenter) UserAdd(ctx context.Context, in *UserAddReq) (*UserAddResp, error) {
+	client := pb.NewUserCenterClient(m.cli.Conn())
+	return client.UserAdd(ctx, in)
+}
+
+// 更新用户
+func (m *defaultUserCenter) UserUpdate(ctx context.Context, in *UserIdReq) (*ExamineResp, error) {
+	client := pb.NewUserCenterClient(m.cli.Conn())
+	return client.UserUpdate(ctx, in)
+}
+
+// 删除用户
+func (m *defaultUserCenter) UserDel(ctx context.Context, in *UserIdReq) (*ExamineResp, error) {
 	client := pb.NewUserCenterClient(m.cli.Conn())
-	return client.GetStatusByCode(ctx, in, opts...)
+	return client.UserDel(ctx, in)
 }
 
 // 获取客户信息

+ 168 - 0
service/user.go

@@ -0,0 +1,168 @@
+package service
+
+import (
+	"database/sql"
+	"time"
+
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/entity"
+	. "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/usercenter"
+)
+
+func UserAdd(this *UserAddReq) *UserAddResp {
+	userId := entity.BaseMysql.Insert(entity.UserTable, map[string]interface{}{
+		"appid":       this.Appid,
+		"phone":       this.Phone,
+		"nickname":    this.Nickname,
+		"headimg":     this.Headimg,
+		"company":     this.Company,
+		"position":    this.Position,
+		"password":    this.Password,
+		"s_openid":    this.SOpenid,
+		"a_openid":    this.AOpenid,
+		"unionid":     this.Unionid,
+		"create_time": time.Now().Format("2006-01-02 15:04:05"),
+	})
+	status, msg := 0, ""
+	if userId > 0 {
+		status = 1
+	} else {
+		msg = "新增用户失败"
+	}
+	return &UserAddResp{
+		ErrorCode: entity.SuccessCode,
+		ErrorMsg:  msg,
+		Data:      &UserAdds{Status: int64(status), Id: userId},
+	}
+}
+
+func UserUpdate(this *UserIdReq) *ExamineResp {
+	ok := UserUpdates(this)
+	status, msg := 0, ""
+	if ok {
+		status = 1
+	} else {
+		msg = "更新用户失败"
+	}
+	return &ExamineResp{
+		ErrorCode: entity.SuccessCode,
+		ErrorMsg:  msg,
+		Data:      &ExamineData{Status: int64(status)},
+	}
+}
+
+func UserDel(this *UserIdReq) *ExamineResp {
+	ok := UserDels(this)
+	status, msg := 0, ""
+	if ok {
+		status = 1
+	} else {
+		msg = "删除用户失败"
+	}
+	return &ExamineResp{
+		ErrorCode: entity.SuccessCode,
+		ErrorMsg:  msg,
+		Data:      &ExamineData{Status: int64(status)},
+	}
+}
+
+func UserUpdates(this *UserIdReq) bool {
+	ok := false
+	flag := entity.BaseMysql.ExecTx("", func(tx *sql.Tx) bool {
+		set := map[string]interface{}{}
+		if this.Phone != "" {
+			set["phone"] = this.Phone
+		} else {
+			set["phone"] = ""
+		}
+		if this.Nickname != "" {
+			set["nickname"] = this.Nickname
+		} else {
+			set["nickname"] = ""
+		}
+		if this.Headimg != "" {
+			set["headimg"] = this.Headimg
+		} else {
+			set["headimg"] = ""
+		}
+		if this.Company != "" {
+			set["company"] = this.Company
+		} else {
+			set["company"] = ""
+		}
+		if this.Position != "" {
+			set["position"] = this.Position
+		} else {
+			set["position"] = ""
+		}
+		if this.Password != "" {
+			set["password"] = this.Password
+		} else {
+			set["password"] = ""
+		}
+		if this.AOpenid != "" {
+			set["a_openid"] = this.AOpenid
+		} else {
+			set["a_openid"] = ""
+		}
+		if this.SOpenid != "" {
+			set["s_openid"] = this.SOpenid
+		} else {
+			set["s_openid"] = ""
+		}
+		if this.Unionid != "" {
+			set["unionid"] = this.Unionid
+		} else {
+			set["unionid"] = ""
+		}
+		ok1 := entity.BaseMysql.UpdateByTx(tx, entity.UserTable, map[string]interface{}{"id": this.Id}, set)
+		snapshot := entity.BaseMysql.InsertByTx(tx, entity.UserSnapshotTable, map[string]interface{}{
+			"appid":       this.Appid,
+			"user_id":     this.Id,
+			"phone":       this.Phone,
+			"nickname":    this.Nickname,
+			"headimg":     this.Headimg,
+			"company":     this.Company,
+			"position":    this.Position,
+			"password":    this.Password,
+			"s_openid":    this.SOpenid,
+			"a_openid":    this.AOpenid,
+			"unionid":     this.Unionid,
+			"create_time": time.Now().Format("2006-01-02 15:04:05"),
+		})
+		return ok1 && snapshot > 0
+	})
+	if flag {
+		ok = true
+	}
+	return ok
+}
+
+func UserDels(this *UserIdReq) bool {
+	ok := false
+	userData := entity.BaseMysql.FindOne(entity.UserTable, map[string]interface{}{"id": this.Id}, "", "")
+	if userData != nil && len(*userData) > 0 {
+		flag := entity.BaseMysql.ExecTx("", func(tx *sql.Tx) bool {
+			thisdata := *userData
+			ok1 := entity.BaseMysql.DeleteByTx(tx, entity.UserTable, map[string]interface{}{"id": this.Id})
+			snapshot := entity.BaseMysql.InsertByTx(tx, entity.UserSnapshotTable, map[string]interface{}{
+				"appid":       thisdata["appid"],
+				"user_id":     this.Id,
+				"phone":       thisdata["phone"],
+				"nickname":    thisdata["nickname"],
+				"headimg":     thisdata["headimg"],
+				"company":     thisdata["company"],
+				"position":    thisdata["position"],
+				"password":    thisdata["password"],
+				"s_openid":    thisdata["s_openid"],
+				"a_openid":    thisdata["a_openid"],
+				"unionid":     thisdata["unionid"],
+				"create_time": time.Now().Format("2006-01-02 15:04:05"),
+			})
+			return ok1 && snapshot > 0
+		})
+		if flag {
+			ok = true
+		}
+	}
+	return ok
+}