muyu-apiserver/rpc/system/system.proto

320 lines
6.1 KiB
Protocol Buffer
Raw Permalink Normal View History

syntax = "proto3";
package system;
option go_package = "./pb";
// ==================== Auth ====================
message LoginReq {
string username = 1;
string password = 2;
string ip = 3;
}
message LoginResp {
string user_id = 1;
string username = 2;
string real_name = 3;
string avatar = 4;
string role_key = 5;
string role_name = 6;
}
message ChangePasswordReq {
string user_id = 1;
string old_password = 2;
string new_password = 3;
}
// ==================== User ====================
message UserInfo {
string user_id = 1;
string username = 2;
string real_name = 3;
string phone = 4;
string email = 5;
string avatar = 6;
int64 status = 7;
string role_id = 8;
string role_name = 9;
string last_login_time = 10;
string created_at = 11;
string updated_at = 12;
}
message CreateUserReq {
string username = 1;
string password = 2;
string real_name = 3;
string phone = 4;
string email = 5;
string role_id = 6;
}
message UpdateUserReq {
string user_id = 1;
string real_name = 2;
string phone = 3;
string email = 4;
string role_id = 5;
string avatar = 6;
}
message DeleteUserReq {
string user_id = 1;
}
message GetUserReq {
string user_id = 1;
}
message ListUserReq {
int64 page = 1;
int64 page_size = 2;
string username = 3;
string real_name = 4;
string phone = 5;
int64 status = 6;
}
message ListUserResp {
int64 total = 1;
repeated UserInfo list = 2;
}
message UpdateUserStatusReq {
string user_id = 1;
int64 status = 2;
}
// ==================== Role ====================
message RoleInfo {
string role_id = 1;
string role_name = 2;
string role_key = 3;
string role_desc = 4;
int64 sort_order = 5;
int64 status = 6;
repeated string menu_ids = 7;
string created_at = 8;
string updated_at = 9;
}
message CreateRoleReq {
string role_name = 1;
string role_key = 2;
string role_desc = 3;
int64 sort_order = 4;
}
message UpdateRoleReq {
string role_id = 1;
string role_name = 2;
string role_key = 3;
string role_desc = 4;
int64 sort_order = 5;
}
message DeleteRoleReq {
string role_id = 1;
}
message GetRoleReq {
string role_id = 1;
}
message ListRoleReq {
int64 page = 1;
int64 page_size = 2;
string role_name = 3;
int64 status = 4;
}
message ListRoleResp {
int64 total = 1;
repeated RoleInfo list = 2;
}
message SetRolePermissionsReq {
string role_id = 1;
repeated string menu_ids = 2;
}
// ==================== Menu ====================
message MenuInfo {
string menu_id = 1;
string parent_id = 2;
string menu_name = 3;
int64 menu_type = 4;
string path = 5;
string component = 6;
string permission = 7;
string icon = 8;
int64 sort_order = 9;
int64 visible = 10;
int64 status = 11;
repeated MenuInfo children = 12;
string created_at = 13;
string updated_at = 14;
}
message CreateMenuReq {
string parent_id = 1;
string menu_name = 2;
int64 menu_type = 3;
string path = 4;
string component = 5;
string permission = 6;
string icon = 7;
int64 sort_order = 8;
}
message UpdateMenuReq {
string menu_id = 1;
string parent_id = 2;
string menu_name = 3;
int64 menu_type = 4;
string path = 5;
string component = 6;
string permission = 7;
string icon = 8;
int64 sort_order = 9;
int64 visible = 10;
}
message DeleteMenuReq {
string menu_id = 1;
}
message GetMenuReq {
string menu_id = 1;
}
message ListMenuReq {}
message ListMenuResp {
repeated MenuInfo list = 1;
}
// ==================== Operation Log ====================
message OperationLogInfo {
string log_id = 1;
string user_id = 2;
string username = 3;
string module = 4;
string operation = 5;
string method = 6;
string path = 7;
string ip = 8;
int64 duration = 9;
int64 status = 10;
string created_at = 11;
}
message CreateLogReq {
string user_id = 1;
string username = 2;
string module = 3;
string operation = 4;
string method = 5;
string path = 6;
string request_body = 7;
string response_body = 8;
string ip = 9;
string user_agent = 10;
int64 duration = 11;
int64 status = 12;
}
message ListLogReq {
int64 page = 1;
int64 page_size = 2;
string username = 3;
string module = 4;
string operation = 5;
string start_time = 6;
string end_time = 7;
}
message ListLogResp {
int64 total = 1;
repeated OperationLogInfo list = 2;
}
// ==================== Config ====================
message ConfigInfo {
string config_id = 1;
string config_key = 2;
string config_value = 3;
string config_name = 4;
string config_group = 5;
string remark = 6;
string updated_at = 7;
}
message ListConfigReq {
string config_group = 1;
}
message ListConfigResp {
repeated ConfigInfo list = 1;
}
message UpdateConfigReq {
string config_key = 1;
string config_value = 2;
}
// ==================== Common ====================
message IdResp {
string id = 1;
}
message Empty {}
// ==================== Service ====================
service SystemService {
// Auth
rpc Login(LoginReq) returns (LoginResp);
rpc ChangePassword(ChangePasswordReq) returns (Empty);
// User
rpc CreateUser(CreateUserReq) returns (IdResp);
rpc UpdateUser(UpdateUserReq) returns (Empty);
rpc DeleteUser(DeleteUserReq) returns (Empty);
rpc GetUser(GetUserReq) returns (UserInfo);
rpc ListUser(ListUserReq) returns (ListUserResp);
rpc UpdateUserStatus(UpdateUserStatusReq) returns (Empty);
// Role
rpc CreateRole(CreateRoleReq) returns (IdResp);
rpc UpdateRole(UpdateRoleReq) returns (Empty);
rpc DeleteRole(DeleteRoleReq) returns (Empty);
rpc GetRole(GetRoleReq) returns (RoleInfo);
rpc ListRole(ListRoleReq) returns (ListRoleResp);
rpc SetRolePermissions(SetRolePermissionsReq) returns (Empty);
// Menu
rpc CreateMenu(CreateMenuReq) returns (IdResp);
rpc UpdateMenu(UpdateMenuReq) returns (Empty);
rpc DeleteMenu(DeleteMenuReq) returns (Empty);
rpc GetMenu(GetMenuReq) returns (MenuInfo);
rpc ListMenu(ListMenuReq) returns (ListMenuResp);
// Operation Log
rpc CreateOperationLog(CreateLogReq) returns (Empty);
rpc ListOperationLog(ListLogReq) returns (ListLogResp);
// Config
rpc ListConfig(ListConfigReq) returns (ListConfigResp);
rpc UpdateConfig(UpdateConfigReq) returns (Empty);
}