This commit is contained in:
2026-09-18 16:43:29 +07:00
parent 0107274a08
commit d71add5998
9 changed files with 291 additions and 1 deletions
+60
View File
@@ -516,6 +516,29 @@ service EveningDetectiveServer {
};
}
rpc IssueGameTickets(IssueGameTicketsReq) returns (IssueGameTicketsRsp) {
option (google.api.http) = {
post: "/api/games/{gameId}/tickets"
body: "*"
};
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
security: { security_requirement: {} }
tags: "Билеты";
summary: "Выпустить билеты на игру";
};
}
rpc GetTicket(GetTicketReq) returns (GetTicketRsp) {
option (google.api.http) = {
get: "/api/tickets/{token}"
};
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
security: { security_requirement: {} }
tags: "Билеты";
summary: "Получить данные билета";
};
}
// Создать сессию экрана. Экран получает токен и показывает QR для привязки.
rpc CreateScreenSession(CreateScreenSessionReq) returns (CreateScreenSessionRsp) {
option (google.api.http) = {
@@ -1354,6 +1377,7 @@ message AddGameReq {
google.protobuf.Timestamp start_at = 3;
int32 scenario_id = 4;
string format = 5;
string location = 6;
}
message AddGameRsp {
@@ -1379,6 +1403,7 @@ message Game {
optional google.protobuf.Timestamp started_at = 8;
optional google.protobuf.Timestamp ended_at = 9;
string format = 10;
string location = 11;
}
enum ScreenMode {
@@ -1695,6 +1720,7 @@ message UpdateGameReq {
google.protobuf.Timestamp start_at = 4;
int32 scenario_id = 5;
string format = 6;
string location = 7;
}
message UpdateGameRsp {
@@ -1861,3 +1887,37 @@ message UpdateScenarioBackgroundReq {
message UpdateScenarioBackgroundRsp {
string error = 1;
}
message IssueGameTicketsReq {
int32 gameId = 1;
int32 count = 2;
}
message IssueGameTicketsRsp {
string error = 1;
repeated Ticket tickets = 2;
}
message Ticket {
int32 id = 1;
string url = 2;
}
message GetTicketReq {
string token = 1;
}
message GetTicketRsp {
string error = 1;
TicketPage ticket = 2;
}
message TicketPage {
int32 id = 1;
string game_name = 2;
google.protobuf.Timestamp start_at = 3;
string location = 4;
string status = 5;
string game_status = 6;
optional google.protobuf.Timestamp used_at = 7;
}