UIKit/lib/model/ticket.ts

74 lines
1.4 KiB
TypeScript
Raw Normal View History

2023-06-06 10:02:17 +00:00
export interface CreateTicketRequest {
Title: string;
Message: string;
System: boolean
2023-08-21 11:10:34 +00:00
}
2023-06-06 10:02:17 +00:00
export interface CreateTicketResponse {
Ticket: string;
sess: string;
2023-08-21 11:10:34 +00:00
}
2023-06-06 10:02:17 +00:00
export interface SendTicketMessageRequest {
message: string;
ticket: string;
lang: string;
files: string[];
System?: boolean;
2023-08-21 11:10:34 +00:00
}
2023-06-06 10:02:17 +00:00
export type TicketStatus = "open";
export interface GetTicketsRequest {
amt: number;
/** Пагинация начинается с индекса 0 */
page: number;
srch?: string;
status?: TicketStatus;
2023-08-21 11:10:34 +00:00
}
2023-06-06 10:02:17 +00:00
export interface GetTicketsResponse {
count: number;
data: Ticket[] | null;
2023-08-21 11:10:34 +00:00
}
2023-06-06 10:02:17 +00:00
export interface Ticket {
id: string;
user: string;
sess: string;
ans: string;
state: string;
top_message: TicketMessage;
title: string;
created_at: string;
updated_at: string;
rate: number;
2024-03-11 08:50:05 +00:00
origin: string;
2023-08-21 11:10:34 +00:00
}
2023-06-06 10:02:17 +00:00
export interface TicketMessage {
id: string;
ticket_id: string;
user_id: string,
session_id: string;
message: string;
files: string[],
shown: { [key: string]: number; },
request_screenshot: string,
created_at: string;
2023-08-21 11:10:34 +00:00
}
2023-06-06 10:02:17 +00:00
export interface GetMessagesRequest {
amt: number;
page: number;
srch?: string;
ticket: string;
2023-08-21 11:10:34 +00:00
}
2023-06-06 10:02:17 +00:00
export type GetMessagesResponse = TicketMessage[];
export type SendFileResponse = {
message: string;
};