mirror of
				https://github.com/TeaOSLab/EdgeCommon.git
				synced 2025-11-04 05:00:24 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			99 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
	
	
	
			
		
		
	
	
			99 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
	
	
	
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; // 跳转的URL(type=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; // 跳转的URL(type=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; // 文章信息
 | 
						||
} |