feat: import services and standardize Go 1.26.5
This commit is contained in:
36
apps/base/cms/internal/server/category_server.go
Normal file
36
apps/base/cms/internal/server/category_server.go
Normal file
@@ -0,0 +1,36 @@
|
||||
// Code generated by protoc-gen-slc. DO NOT EDIT.
|
||||
package server
|
||||
|
||||
import (
|
||||
"context"
|
||||
"git.apinb.com/bsm-apps/cms/internal/logic/category"
|
||||
pb "git.apinb.com/bsm-apps/cms/pb"
|
||||
)
|
||||
|
||||
type CategoryServer struct {
|
||||
pb.UnimplementedCategoryServer
|
||||
}
|
||||
|
||||
func NewCategoryServer() *CategoryServer {
|
||||
return &CategoryServer{}
|
||||
}
|
||||
|
||||
// 分类列表
|
||||
func (s *CategoryServer) Fetch(ctx context.Context, in *pb.IdentRequest) (*pb.CategoryListReply, error) {
|
||||
return category.Fetch(ctx, in)
|
||||
}
|
||||
|
||||
// 添加分类
|
||||
func (s *CategoryServer) Create(ctx context.Context, in *pb.CategoryItem) (*pb.StatusReply, error) {
|
||||
return category.Create(ctx, in)
|
||||
}
|
||||
|
||||
// 修改分类
|
||||
func (s *CategoryServer) Modify(ctx context.Context, in *pb.ModifyCategoryRequest) (*pb.StatusReply, error) {
|
||||
return category.Modify(ctx, in)
|
||||
}
|
||||
|
||||
// 删除分类
|
||||
func (s *CategoryServer) Delete(ctx context.Context, in *pb.DeleteCategoryRequest) (*pb.StatusReply, error) {
|
||||
return category.Delete(ctx, in)
|
||||
}
|
||||
111
apps/base/cms/internal/server/new.go
Normal file
111
apps/base/cms/internal/server/new.go
Normal file
@@ -0,0 +1,111 @@
|
||||
// Code generated by protoc-gen-slc. DO NOT EDIT.
|
||||
package server
|
||||
|
||||
import (
|
||||
"context"
|
||||
pb "git.apinb.com/bsm-apps/cms/pb"
|
||||
"git.apinb.com/bsm-sdk/core/vars"
|
||||
gwRuntime "github.com/grpc-ecosystem/grpc-gateway/v2/runtime"
|
||||
"google.golang.org/grpc"
|
||||
"google.golang.org/grpc/credentials/insecure"
|
||||
"google.golang.org/grpc/reflection"
|
||||
"google.golang.org/protobuf/proto"
|
||||
"net/http"
|
||||
"os"
|
||||
"strings"
|
||||
"time"
|
||||
)
|
||||
|
||||
type Server struct {
|
||||
Grpc *grpc.Server
|
||||
Ctx context.Context
|
||||
Mux *gwRuntime.ServeMux
|
||||
grpcConns map[string]*grpc.ClientConn // 连接池
|
||||
}
|
||||
|
||||
func New(addr string) *Server {
|
||||
srv := &Server{
|
||||
Ctx: context.Background(),
|
||||
Grpc: grpc.NewServer(),
|
||||
Mux: gwRuntime.NewServeMux(gwRuntime.WithForwardResponseRewriter(responseEnvelope)),
|
||||
grpcConns: make(map[string]*grpc.ClientConn),
|
||||
}
|
||||
|
||||
// register service to grpc.Server
|
||||
pb.RegisterCategoryServer(srv.Grpc, NewCategoryServer())
|
||||
pb.RegisterPagesServer(srv.Grpc, NewPagesServer())
|
||||
pb.RegisterPostServer(srv.Grpc, NewPostServer())
|
||||
pb.RegisterSiteServer(srv.Grpc, NewSiteServer())
|
||||
pb.RegisterTagsServer(srv.Grpc, NewTagsServer())
|
||||
|
||||
reflection.Register(srv.Grpc)
|
||||
|
||||
// 连接池: 只创建一次连接并复用
|
||||
conn, ok := srv.grpcConns[addr]
|
||||
if !ok {
|
||||
var err error
|
||||
conn, err = grpc.NewClient(addr, grpc.WithTransportCredentials(insecure.NewCredentials()))
|
||||
if err != nil {
|
||||
panic("failed to dial grpc server: " + err.Error())
|
||||
}
|
||||
srv.grpcConns[addr] = conn
|
||||
}
|
||||
|
||||
// 将服务注册到Gateway
|
||||
|
||||
if err := pb.RegisterCategoryHandler(srv.Ctx, srv.Mux, conn); err != nil {
|
||||
panic("Failed to register Category handler: " + err.Error())
|
||||
}
|
||||
|
||||
if err := pb.RegisterPagesHandler(srv.Ctx, srv.Mux, conn); err != nil {
|
||||
panic("Failed to register Pages handler: " + err.Error())
|
||||
}
|
||||
|
||||
if err := pb.RegisterPostHandler(srv.Ctx, srv.Mux, conn); err != nil {
|
||||
panic("Failed to register Post handler: " + err.Error())
|
||||
}
|
||||
|
||||
if err := pb.RegisterSiteHandler(srv.Ctx, srv.Mux, conn); err != nil {
|
||||
panic("Failed to register Site handler: " + err.Error())
|
||||
}
|
||||
|
||||
if err := pb.RegisterTagsHandler(srv.Ctx, srv.Mux, conn); err != nil {
|
||||
panic("Failed to register Tags handler: " + err.Error())
|
||||
}
|
||||
|
||||
// Register services swagger
|
||||
srv.RegisterSwagger()
|
||||
|
||||
return srv
|
||||
}
|
||||
|
||||
// RegisterSwagger 注册swagger
|
||||
func (s *Server) RegisterSwagger() {
|
||||
srvKey := strings.ToLower(vars.ServiceKey)
|
||||
s.Mux.HandlePath("GET", "/"+srvKey+".swagger.json", func(w http.ResponseWriter, r *http.Request, pathParams map[string]string) {
|
||||
w.Header().Set("Content-Type", "application/json")
|
||||
bytes, err := os.ReadFile("./swagger/" + srvKey + ".swagger.json")
|
||||
if err != nil {
|
||||
w.WriteHeader(http.StatusNotFound)
|
||||
w.Write([]byte(err.Error()))
|
||||
return
|
||||
}
|
||||
w.Write(bytes)
|
||||
return
|
||||
|
||||
})
|
||||
}
|
||||
|
||||
// response envelope
|
||||
func responseEnvelope(_ context.Context, response proto.Message) (interface{}, error) {
|
||||
name := string(response.ProtoReflect().Descriptor().Name())
|
||||
if name == "Status" || name == "Error" || name == "StatusReply" {
|
||||
return response, nil
|
||||
}
|
||||
return map[string]any{
|
||||
"code": 0,
|
||||
"message": vars.OK,
|
||||
"details": response,
|
||||
"timeseq": time.Now().Unix(),
|
||||
}, nil
|
||||
}
|
||||
46
apps/base/cms/internal/server/pages_server.go
Normal file
46
apps/base/cms/internal/server/pages_server.go
Normal file
@@ -0,0 +1,46 @@
|
||||
// Code generated by protoc-gen-slc. DO NOT EDIT.
|
||||
package server
|
||||
|
||||
import (
|
||||
"context"
|
||||
"git.apinb.com/bsm-apps/cms/internal/logic/pages"
|
||||
pb "git.apinb.com/bsm-apps/cms/pb"
|
||||
)
|
||||
|
||||
type PagesServer struct {
|
||||
pb.UnimplementedPagesServer
|
||||
}
|
||||
|
||||
func NewPagesServer() *PagesServer {
|
||||
return &PagesServer{}
|
||||
}
|
||||
|
||||
// 单页列表
|
||||
func (s *PagesServer) Fetch(ctx context.Context, in *pb.PagesListRequest) (*pb.PagesListReply, error) {
|
||||
return pages.Fetch(ctx, in)
|
||||
}
|
||||
|
||||
// 获取单页详情 By Identity
|
||||
func (s *PagesServer) GetByIdentity(ctx context.Context, in *pb.GetPagesRequest) (*pb.PagesItem, error) {
|
||||
return pages.GetByIdentity(ctx, in)
|
||||
}
|
||||
|
||||
// 获取单页详情 By Key
|
||||
func (s *PagesServer) GetByKey(ctx context.Context, in *pb.GetPagesByKeyRequest) (*pb.PagesItem, error) {
|
||||
return pages.GetByKey(ctx, in)
|
||||
}
|
||||
|
||||
// 发布单页
|
||||
func (s *PagesServer) Create(ctx context.Context, in *pb.PagesItem) (*pb.StatusReply, error) {
|
||||
return pages.Create(ctx, in)
|
||||
}
|
||||
|
||||
// 修改单页
|
||||
func (s *PagesServer) Modify(ctx context.Context, in *pb.PagesItem) (*pb.StatusReply, error) {
|
||||
return pages.Modify(ctx, in)
|
||||
}
|
||||
|
||||
// 删除单页
|
||||
func (s *PagesServer) Delete(ctx context.Context, in *pb.IdentRequest) (*pb.StatusReply, error) {
|
||||
return pages.Delete(ctx, in)
|
||||
}
|
||||
111
apps/base/cms/internal/server/post_server.go
Normal file
111
apps/base/cms/internal/server/post_server.go
Normal file
@@ -0,0 +1,111 @@
|
||||
// Code generated by protoc-gen-slc. DO NOT EDIT.
|
||||
package server
|
||||
|
||||
import (
|
||||
"context"
|
||||
"git.apinb.com/bsm-apps/cms/internal/logic/post"
|
||||
pb "git.apinb.com/bsm-apps/cms/pb"
|
||||
)
|
||||
|
||||
type PostServer struct {
|
||||
pb.UnimplementedPostServer
|
||||
}
|
||||
|
||||
func NewPostServer() *PostServer {
|
||||
return &PostServer{}
|
||||
}
|
||||
|
||||
// 文章列表
|
||||
func (s *PostServer) Fetch(ctx context.Context, in *pb.PostListRequest) (*pb.PostListReply, error) {
|
||||
return post.Fetch(ctx, in)
|
||||
}
|
||||
|
||||
// 获取文章详情 By Identity
|
||||
func (s *PostServer) GetByIdentity(ctx context.Context, in *pb.GetPostRequest) (*pb.PostItem, error) {
|
||||
return post.GetByIdentity(ctx, in)
|
||||
}
|
||||
|
||||
// 获取文章详情 By Key
|
||||
func (s *PostServer) GetByKey(ctx context.Context, in *pb.GetPostByKeyRequest) (*pb.PostItem, error) {
|
||||
return post.GetByKey(ctx, in)
|
||||
}
|
||||
|
||||
// 搜索文章
|
||||
func (s *PostServer) Search(ctx context.Context, in *pb.SearchRequest) (*pb.PostListReply, error) {
|
||||
return post.Search(ctx, in)
|
||||
}
|
||||
|
||||
// 发布文章
|
||||
func (s *PostServer) Create(ctx context.Context, in *pb.PostItem) (*pb.StatusReply, error) {
|
||||
return post.Create(ctx, in)
|
||||
}
|
||||
|
||||
// 修改文章
|
||||
func (s *PostServer) Modify(ctx context.Context, in *pb.PostItem) (*pb.StatusReply, error) {
|
||||
return post.Modify(ctx, in)
|
||||
}
|
||||
|
||||
// 删除文章
|
||||
func (s *PostServer) Delete(ctx context.Context, in *pb.IdentRequest) (*pb.StatusReply, error) {
|
||||
return post.Delete(ctx, in)
|
||||
}
|
||||
|
||||
// 文章点赞处理
|
||||
func (s *PostServer) IncrPostLike(ctx context.Context, in *pb.PostOpIdentityRequest) (*pb.StatusReply, error) {
|
||||
return post.IncrPostLike(ctx, in)
|
||||
}
|
||||
|
||||
// 文章点赞取消处理
|
||||
func (s *PostServer) DescPostLike(ctx context.Context, in *pb.PostOpIdentityRequest) (*pb.StatusReply, error) {
|
||||
return post.DescPostLike(ctx, in)
|
||||
}
|
||||
|
||||
// 文章点踩处理
|
||||
func (s *PostServer) IncrPostUnlike(ctx context.Context, in *pb.PostOpIdentityRequest) (*pb.StatusReply, error) {
|
||||
return post.IncrPostUnlike(ctx, in)
|
||||
}
|
||||
|
||||
// 文章点踩取消处理
|
||||
func (s *PostServer) DescPostUnlike(ctx context.Context, in *pb.PostOpIdentityRequest) (*pb.StatusReply, error) {
|
||||
return post.DescPostUnlike(ctx, in)
|
||||
}
|
||||
|
||||
// 评论列表
|
||||
func (s *PostServer) CommentList(ctx context.Context, in *pb.CommentListRequest) (*pb.CommentListResponse, error) {
|
||||
return post.CommentList(ctx, in)
|
||||
}
|
||||
|
||||
// 发布评论
|
||||
func (s *PostServer) AddComment(ctx context.Context, in *pb.CommentItem) (*pb.StatusReply, error) {
|
||||
return post.AddComment(ctx, in)
|
||||
}
|
||||
|
||||
// 修改评论
|
||||
func (s *PostServer) ModifyComment(ctx context.Context, in *pb.CommentItem) (*pb.StatusReply, error) {
|
||||
return post.ModifyComment(ctx, in)
|
||||
}
|
||||
|
||||
// 删除评论
|
||||
func (s *PostServer) DeleteComment(ctx context.Context, in *pb.DeleteCommentRequest) (*pb.StatusReply, error) {
|
||||
return post.DeleteComment(ctx, in)
|
||||
}
|
||||
|
||||
// 评论点赞处理
|
||||
func (s *PostServer) IncrCommentLike(ctx context.Context, in *pb.CommentOpIdentityRequest) (*pb.StatusReply, error) {
|
||||
return post.IncrCommentLike(ctx, in)
|
||||
}
|
||||
|
||||
// 评论点赞取消处理
|
||||
func (s *PostServer) DescCommentLike(ctx context.Context, in *pb.CommentOpIdentityRequest) (*pb.StatusReply, error) {
|
||||
return post.DescCommentLike(ctx, in)
|
||||
}
|
||||
|
||||
// 评论点踩处理
|
||||
func (s *PostServer) IncrCommentUnlike(ctx context.Context, in *pb.CommentOpIdentityRequest) (*pb.StatusReply, error) {
|
||||
return post.IncrCommentUnlike(ctx, in)
|
||||
}
|
||||
|
||||
// 评论点踩取消处理
|
||||
func (s *PostServer) DescCommentUnlike(ctx context.Context, in *pb.CommentOpIdentityRequest) (*pb.StatusReply, error) {
|
||||
return post.DescCommentUnlike(ctx, in)
|
||||
}
|
||||
41
apps/base/cms/internal/server/site_server.go
Normal file
41
apps/base/cms/internal/server/site_server.go
Normal file
@@ -0,0 +1,41 @@
|
||||
// Code generated by protoc-gen-slc. DO NOT EDIT.
|
||||
package server
|
||||
|
||||
import (
|
||||
"context"
|
||||
"git.apinb.com/bsm-apps/cms/internal/logic/site"
|
||||
pb "git.apinb.com/bsm-apps/cms/pb"
|
||||
)
|
||||
|
||||
type SiteServer struct {
|
||||
pb.UnimplementedSiteServer
|
||||
}
|
||||
|
||||
func NewSiteServer() *SiteServer {
|
||||
return &SiteServer{}
|
||||
}
|
||||
|
||||
// 站点列表
|
||||
func (s *SiteServer) Fetch(ctx context.Context, in *pb.Empty) (*pb.SiteListReply, error) {
|
||||
return site.Fetch(ctx, in)
|
||||
}
|
||||
|
||||
// 站点详情
|
||||
func (s *SiteServer) Get(ctx context.Context, in *pb.IdentRequest) (*pb.SiteItem, error) {
|
||||
return site.Get(ctx, in)
|
||||
}
|
||||
|
||||
// 添加站点
|
||||
func (s *SiteServer) Create(ctx context.Context, in *pb.SiteItem) (*pb.StatusReply, error) {
|
||||
return site.Create(ctx, in)
|
||||
}
|
||||
|
||||
// 修改站点
|
||||
func (s *SiteServer) Modify(ctx context.Context, in *pb.SiteItem) (*pb.StatusReply, error) {
|
||||
return site.Modify(ctx, in)
|
||||
}
|
||||
|
||||
// 删除站点
|
||||
func (s *SiteServer) Delete(ctx context.Context, in *pb.IdentRequest) (*pb.StatusReply, error) {
|
||||
return site.Delete(ctx, in)
|
||||
}
|
||||
36
apps/base/cms/internal/server/tags_server.go
Normal file
36
apps/base/cms/internal/server/tags_server.go
Normal file
@@ -0,0 +1,36 @@
|
||||
// Code generated by protoc-gen-slc. DO NOT EDIT.
|
||||
package server
|
||||
|
||||
import (
|
||||
"context"
|
||||
"git.apinb.com/bsm-apps/cms/internal/logic/tags"
|
||||
pb "git.apinb.com/bsm-apps/cms/pb"
|
||||
)
|
||||
|
||||
type TagsServer struct {
|
||||
pb.UnimplementedTagsServer
|
||||
}
|
||||
|
||||
func NewTagsServer() *TagsServer {
|
||||
return &TagsServer{}
|
||||
}
|
||||
|
||||
// 标签列表
|
||||
func (s *TagsServer) Fetch(ctx context.Context, in *pb.IdentRequest) (*pb.TagsListReply, error) {
|
||||
return tags.Fetch(ctx, in)
|
||||
}
|
||||
|
||||
// 创建标签
|
||||
func (s *TagsServer) Create(ctx context.Context, in *pb.TagsItem) (*pb.StatusReply, error) {
|
||||
return tags.Create(ctx, in)
|
||||
}
|
||||
|
||||
// 修改标签
|
||||
func (s *TagsServer) Modify(ctx context.Context, in *pb.TagsItem) (*pb.StatusReply, error) {
|
||||
return tags.Modify(ctx, in)
|
||||
}
|
||||
|
||||
// 删除标签
|
||||
func (s *TagsServer) Delete(ctx context.Context, in *pb.IdentRequest) (*pb.StatusReply, error) {
|
||||
return tags.Delete(ctx, in)
|
||||
}
|
||||
Reference in New Issue
Block a user