|
|
|
syntax = "proto3";
|
|
|
|
|
|
|
|
import "google/protobuf/timestamp.proto";
|
|
|
|
import "gogoproto/gogo.proto";
|
|
|
|
// import "validate/validate.proto";
|
|
|
|
import "google/api/annotations.proto";
|
|
|
|
import "google/protobuf/empty.proto";
|
|
|
|
|
|
|
|
package api.v1;
|
|
|
|
|
|
|
|
option go_package = "moredoc/api/v1;v1";
|
|
|
|
option java_multiple_files = true;
|
|
|
|
option java_package = "api.v1";
|
|
|
|
|
|
|
|
// 权限
|
|
|
|
message Permission {
|
|
|
|
int64 id = 1; // 权限ID
|
|
|
|
string method = 2; // 请求方法
|
|
|
|
string path = 3; // 请求路径
|
|
|
|
string title = 4; // 权限名称
|
|
|
|
string description = 5; // 权限描述
|
|
|
|
google.protobuf.Timestamp created_at = 6
|
|
|
|
[ (gogoproto.stdtime) = true ]; // 创建时间
|
|
|
|
google.protobuf.Timestamp updated_at = 7
|
|
|
|
[ (gogoproto.stdtime) = true ]; // 更新时间
|
|
|
|
}
|
|
|
|
|
|
|
|
// 权限请求
|
|
|
|
message GetPermissionRequest { int64 id = 1; }
|
|
|
|
|
|
|
|
// 权限响应
|
|
|
|
message GetPermissionReply { Permission permission = 1; }
|
|
|
|
|
|
|
|
// 权限列表请求
|
|
|
|
message ListPermissionRequest {
|
|
|
|
int64 page = 1;
|
|
|
|
int64 size = 2;
|
|
|
|
string wd = 3;
|
|
|
|
repeated string method = 4;
|
|
|
|
string path = 5;
|
|
|
|
}
|
|
|
|
|
|
|
|
// 权限列表响应
|
|
|
|
message ListPermissionReply {
|
|
|
|
int64 total = 1;
|
|
|
|
repeated Permission permission = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
// 权限API服务
|
|
|
|
service PermissionAPI {
|
|
|
|
// 更新权限信息。这里只能操作title和description
|
|
|
|
rpc UpdatePermission(Permission) returns (google.protobuf.Empty) {
|
|
|
|
option (google.api.http) = {
|
|
|
|
put : '/api/v1/permission',
|
|
|
|
body : '*',
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
// 查询权限信息
|
|
|
|
rpc GetPermission(GetPermissionRequest) returns (Permission) {
|
|
|
|
option (google.api.http) = {
|
|
|
|
get : '/api/v1/permission',
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
// 查询权限列表
|
|
|
|
rpc ListPermission(ListPermissionRequest) returns (ListPermissionReply) {
|
|
|
|
option (google.api.http) = {
|
|
|
|
get : '/api/v1/permission/list',
|
|
|
|
};
|
|
|
|
}
|
|
|
|
}
|