syntax = "proto3"; option go_package = "./pb"; package pb; import "models/model_admin.proto"; import "models/model_admin_list.proto"; import "models/rpc_messages.proto"; service AdminService { // 登录 rpc loginAdmin (LoginAdminRequest) returns (LoginAdminResponse); // 检查管理员是否存在 rpc checkAdminExists (CheckAdminExistsRequest) returns (CheckAdminExistsResponse); // 检查用户名是否存在 rpc checkAdminUsername (CheckAdminUsernameRequest) returns (CheckAdminUsernameResponse); // 获取管理员名称 rpc findAdminFullname (FindAdminFullnameRequest) returns (FindAdminFullnameResponse); // 获取管理员信息 rpc findEnabledAdmin (FindEnabledAdminRequest) returns (FindEnabledAdminResponse); // 创建或修改管理员 rpc createOrUpdateAdmin (CreateOrUpdateAdminRequest) returns (CreateOrUpdateAdminResponse); // 修改管理员信息 rpc updateAdminInfo (UpdateAdminInfoRequest) returns (RPCSuccess); // 修改管理员登录信息 rpc updateAdminLogin (UpdateAdminLoginRequest) returns (RPCSuccess); // 获取所有管理员的权限列表 rpc findAllAdminModules (FindAllAdminModulesRequest) returns (FindAllAdminModulesResponse); // 创建管理员 rpc createAdmin (CreateAdminRequest) returns (CreateAdminResponse); // 修改管理员 rpc updateAdmin (UpdateAdminRequest) returns (RPCSuccess); // 计算管理员数量 rpc countAllEnabledAdmins (CountAllEnabledAdminsRequest) returns (RPCCountResponse); // 列出单页的管理员 rpc listEnabledAdmins (ListEnabledAdminsRequest) returns (ListEnabledAdminsResponse); // 删除管理员 rpc deleteAdmin (DeleteAdminRequest) returns (RPCSuccess); // 根据用户名检查是否需要输入OTP rpc checkAdminOTPWithUsername (CheckAdminOTPWithUsernameRequest) returns (CheckAdminOTPWithUsernameResponse); // 取得管理员Dashboard数据 rpc composeAdminDashboard (ComposeAdminDashboardRequest) returns (ComposeAdminDashboardResponse); } // 登录 message LoginAdminRequest { string username = 1; string password = 2; } message LoginAdminResponse { int64 adminId = 1; bool isOk = 2; string message = 3; } // 检查管理员是否存在 message CheckAdminExistsRequest { int64 adminId = 1; } message CheckAdminExistsResponse { bool isOk = 1; string message = 2; } // 检查用户名是否存在 message CheckAdminUsernameRequest { int64 adminId = 1; string username = 2; } message CheckAdminUsernameResponse { bool exists = 1; } // 获取管理员名称 message FindAdminFullnameRequest { int64 adminId = 1; } message FindAdminFullnameResponse { string fullname = 1; } // 获取管理员信息 message FindEnabledAdminRequest { int64 adminId = 1; } message FindEnabledAdminResponse { Admin admin = 1; } // 创建或修改管理员 message CreateOrUpdateAdminRequest { string username = 1; string password = 2; } message CreateOrUpdateAdminResponse { int64 adminId = 1; } // 修改管理员信息 message UpdateAdminInfoRequest { int64 adminId = 1; string fullname = 2; } // 修改管理员登录信息 message UpdateAdminLoginRequest { int64 adminId = 1; string username = 2; string password = 3; } // 获取管理所有权限列表 message FindAllAdminModulesRequest { } message FindAllAdminModulesResponse { repeated AdminModuleList adminModules = 1; } // 创建管理员 message CreateAdminRequest { string username = 1; string password = 2; string fullname = 3; bytes modulesJSON = 4; bool isSuper = 5; bool canLogin = 6; } message CreateAdminResponse { int64 adminId = 1; } // 修改管理员 message UpdateAdminRequest { int64 adminId = 1; string username = 2; string password = 3; string fullname = 4; bytes modulesJSON = 5; bool isSuper = 6; bool isOn = 7; bool canLogin = 8; } // 计算管理员数量 message CountAllEnabledAdminsRequest { } // 列出单页的管理员 message ListEnabledAdminsRequest { int64 offset = 1; int64 size = 2; } message ListEnabledAdminsResponse { repeated Admin admins = 1; } // 删除管理员 message DeleteAdminRequest { int64 adminId = 1; } // 根据用户名检查是否需要输入OTP message CheckAdminOTPWithUsernameRequest { string username = 1; } message CheckAdminOTPWithUsernameResponse { bool requireOTP = 1; } // 取得管理员Dashboard数据 message ComposeAdminDashboardRequest { } message ComposeAdminDashboardResponse { int64 countNodeClusters = 1; int64 countNodes = 2; int64 countServers = 3; int64 countUsers = 4; int64 countAPINodes = 5; int64 countDBNodes = 6; int64 countUserNodes = 7; repeated DailyTrafficStat dailyTrafficStats = 30; repeated HourlyTrafficStat hourlyTrafficStats = 31; UpgradeInfo nodeUpgradeInfo = 32; UpgradeInfo apiNodeUpgradeInfo = 33; UpgradeInfo monitorNodeUpgradeInfo = 34; UpgradeInfo userNodeUpgradeInfo = 35; UpgradeInfo authorityNodeUpgradeInfo = 36; message DailyTrafficStat { string day = 1; int64 bytes = 2; } message HourlyTrafficStat { string hour = 1; int64 bytes = 2; } // 节点升级信息 message UpgradeInfo { int64 countNodes = 1; string newVersion = 2; } }