39 lines
989 B
Go
39 lines
989 B
Go
|
package logic
|
||
|
|
||
|
import (
|
||
|
"context"
|
||
|
|
||
|
"gitea.youtukeji.com.cn/youtu/youtu_grpc/app/admin_service/admin_service"
|
||
|
"gitea.youtukeji.com.cn/youtu/youtu_grpc/app/admin_service/internal/svc"
|
||
|
"google.golang.org/grpc/codes"
|
||
|
"google.golang.org/grpc/status"
|
||
|
|
||
|
"github.com/zeromicro/go-zero/core/logx"
|
||
|
)
|
||
|
|
||
|
type AddAppLogic struct {
|
||
|
ctx context.Context
|
||
|
svcCtx *svc.ServiceContext
|
||
|
logx.Logger
|
||
|
}
|
||
|
|
||
|
func NewAddAppLogic(ctx context.Context, svcCtx *svc.ServiceContext) *AddAppLogic {
|
||
|
return &AddAppLogic{
|
||
|
ctx: ctx,
|
||
|
svcCtx: svcCtx,
|
||
|
Logger: logx.WithContext(ctx),
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// AddApp 添加app
|
||
|
func (l *AddAppLogic) AddApp(in *admin_service.AddAppRequest) (*admin_service.AddAppResponse, error) {
|
||
|
// 检查app是否存在
|
||
|
if _, find := l.svcCtx.Cached.FindAppById(in.AppInfo.AppId); find {
|
||
|
return nil, status.Errorf(codes.AlreadyExists, "app %s already exists", in.AppInfo.AppId)
|
||
|
}
|
||
|
|
||
|
// 添加app
|
||
|
l.svcCtx.Cached.PutToEtcd(l.ctx, in.AppInfo)
|
||
|
return &admin_service.AddAppResponse{}, nil
|
||
|
}
|