Files
EdgeCommon/pkg/rpc/protos/service_post.proto

99 lines
2.3 KiB
Protocol Buffer
Raw Normal View History

syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_post.proto";
import "models/rpc_messages.proto";
// 文章管理服务
service PostService {
// 创建文章
rpc createPost(CreatePostRequest) returns (CreatePostResponse);
// 修改文章
rpc updatePost(UpdatePostRequest) returns (RPCSuccess);
// 删除文章
rpc deletePost(DeletePostRequest) returns (RPCSuccess);
// 发布文章
rpc publishPost(PublishPostRequest) returns (RPCSuccess);
// 计算文章数量
rpc countPosts(CountPostsRequest) returns (RPCCountResponse);
// 列出单页文章
rpc listPosts(ListPostsRequest) returns (ListPostsResponse);
// 查询单篇文章
rpc findPost(FindPostRequest) returns (FindPostResponse);
}
// 创建文章
message CreatePostRequest {
int64 postCategoryId = 1; // 文章分类ID
string type = 2; // 类型normal, url
string productCode = 3; // 产品代号
string subject = 4; // 标题
string url = 5; // 跳转的URLtype=url
string body = 6; // 文章内容type=normal
}
message CreatePostResponse {
int64 postId = 1; // 文章ID
}
// 修改文章
message UpdatePostRequest {
int64 postId = 1; // 文章ID
int64 postCategoryId = 2; // 文章分类ID
string productCode = 3; // 产品代号
string subject = 4; // 标题
string type = 5; // 类型normal, url
string url = 6; // 跳转的URLtype=url
string body = 7; // 文章内容type=normal
}
// 删除文章
message DeletePostRequest {
int64 postId = 1; // 文章ID
}
// 发布文章
message PublishPostRequest {
int64 postId = 1; // 文章ID
}
// 计算文章数量
message CountPostsRequest {
int64 postCategoryId = 1; // 分类ID
string productCode = 2; // 产品代号
bool publishedOnly = 3; // 只列出已发布的
}
// 列出单页文章
message ListPostsRequest {
int64 offset = 1;
int64 size = 2;
string productCode = 3; // 产品代号
int64 postCategoryId = 4; // 分类ID
string postCategoryCode = 5; // 分类代号
string excludingPostCategoryCode = 6; // 排除的分类代号
bool publishedOnly = 7; // 只列出已发布的
bool containsBody = 8; // 是否包含文章内容
}
message ListPostsResponse {
repeated Post posts = 1; // 文章列表
}
// 查询单篇文章
message FindPostRequest {
int64 postId = 1; // 文章ID
}
message FindPostResponse {
Post post = 1; // 文章信息
}