feat: refactors all proto files
Some checks failed
Publish / Publish Job (push) Failing after 2m21s

This commit is contained in:
Дмитрий
2026-04-11 14:16:12 +03:00
parent 9551822665
commit 2bc4708f31
7 changed files with 186 additions and 115 deletions

View File

@@ -0,0 +1,122 @@
syntax = "proto3";
package admin.account.v1;
option go_package = "git.lendry.ru/lendry-erp/proto.git/go;pb";
service AdminAccountService {
rpc AdminResetPassword (AdminResetPasswordRequest) returns (AdminResetPasswordResponse);
rpc CreateUser(CreateUserRequest) returns (CreateUserResponse);
rpc DeleteUser(DeleteUserRequest) returns (DeleteUserResponse);
rpc ChangeData(ChangeDataRequest) returns (ChangeDataResponse);
rpc AssignRole (AssignRoleRequest) returns (AssignRoleResponse);
rpc RevokeRole (RevokeRoleRequest) returns (RevokeRoleResponse);
rpc BlockUser(BlockUserRequest) returns (BlockUserResponse);
rpc UnblockUser(UnblockUserRequest) returns (UnblockUserResponse);
rpc BlockIp(BlockIpRequest) returns (BlockIpResponse);
rpc UnblockIp(UnblockIpRequest) returns (UnblockIpResponse);
rpc SyncUsersToSearch (SyncUsersToSearchRequest) returns (SyncUsersToSearchResponse);
}
message AdminResetPasswordRequest {
string user_id = 1;
string new_password = 2;
}
message AdminResetPasswordResponse {
bool success = 1;
string message = 2;
}
message CreateUserRequest {
string username = 1;
string password = 2;
repeated string roles = 3;
}
message CreateUserResponse {
bool success = 1;
string message = 2;
}
message DeleteUserRequest {
string user_id = 1;
}
message DeleteUserResponse {
bool success = 1;
string message = 2;
}
message ChangeDataRequest {
string user_id = 1;
string session_id = 2;
optional string email = 3;
optional string phone = 4;
optional string full_name = 5;
optional string avatar_url = 6;
optional string custom_status_text = 7;
optional string custom_status_emoji = 8;
optional string timezone = 9;
optional string language = 10;
optional bool is_public = 11;
}
message ChangeDataResponse {
bool success = 1;
string message = 2;
}
message AssignRoleRequest {
string user_id = 1;
string role_id = 2; // В gRPC передаем как string, внутри преобразуем в Int
}
message AssignRoleResponse {
bool success = 1;
string message = 2;
}
message RevokeRoleRequest {
string user_id = 1;
string role_id = 2;
}
message RevokeRoleResponse {
bool success = 1;
string message = 2;
}
message BlockUserRequest {
string user_id = 1; // Кого блокируем
string admin_id = 2; // Кто блокирует
optional string reason = 3;
}
message BlockUserResponse { bool success = 1; string message = 2; }
message UnblockUserRequest {
string user_id = 1;
string admin_id = 2;
}
message UnblockUserResponse { bool success = 1; string message = 2; }
message BlockIpRequest {
string ip_address = 1;
string admin_id = 2;
optional string reason = 3;
}
message BlockIpResponse { bool success = 1; string message = 2; }
message UnblockIpRequest {
string ip_address = 1;
string admin_id = 2;
}
message UnblockIpResponse { bool success = 1; string message = 2; }
message SyncUsersToSearchRequest {
// Можно оставить пустым, так как нам не нужны входные данные
}
message SyncUsersToSearchResponse {
bool success = 1;
string message = 2;
}

99
proto/admin/rbac.proto Normal file
View File

@@ -0,0 +1,99 @@
syntax = "proto3";
package rbac.v1;
option go_package = "git.lendry.ru/lendry-erp/proto.git/go;pb";
service RbacService {
rpc CreateRole(CreateRoleRequest) returns (ModifyRoleResponse);
rpc UpdateRole(UpdateRoleRequest) returns (ModifyRoleResponse);
rpc DeleteRole(DeleteRoleRequest) returns (DeleteRoleResponse);
rpc CreatePermission(CreatePermissionRequest) returns (ModifyPermissionResponse);
rpc UpdatePermission(UpdatePermissionRequest) returns (ModifyPermissionResponse);
rpc GetAllPermissions (GetAllPermissionsRequest) returns (GetAllPermissionsResponse);
rpc GetAllRoles(GetAllRolesRequest) returns (GetAllRolesResponse);
}
message GetAllPermissionsRequest {
string user_id = 1;
string session_id=2;
}
message GetAllPermissionsResponse {
repeated Permission permissions = 1;
}
message Permission {
string id = 1;
string code = 2;
string description = 3;
string module = 4;
repeated string roles = 5;
}
message GetAllRolesRequest {
string user_id = 1;
string session_id=2;
}
message GetAllRolesResponse {
repeated Roles roles = 1;
}
message CreateRoleRequest {
string name = 1;
int32 level = 2;
repeated string permission_codes = 3;
}
message UpdateRoleRequest {
string id = 1;
optional string name = 2;
optional int32 level = 3;
repeated string permission_codes = 4;
}
message ModifyRoleResponse {
bool success = 1;
string message = 2;
}
message DeleteRoleRequest {
string id = 1;
}
message DeleteRoleResponse {
bool success = 1;
string message = 2;
optional string fallback_role_name = 3;
}
message CreatePermissionRequest {
string code = 1;
string description = 2;
string module = 3;
}
message UpdatePermissionRequest {
string id = 1;
repeated string role_ids = 2; // Привязка к конкретным ролям
}
message ModifyPermissionResponse {
bool success = 1;
string message = 2;
}
message Roles {
string id = 1;
string name = 2;
int32 level = 3;
repeated string permissions = 4;
repeated string ldap_mapping = 5;
repeated string accounts = 6;
}