Разработка админ-панели EventHubFrontAdmin v1.0 #1
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
import apiClient from './client';
|
||||
import { Ticket, TicketListParams, TicketStats, PaginatedResponse } from '../types/api';
|
||||
|
||||
export const ticketsApi = {
|
||||
getTickets: async (params: TicketListParams): Promise<PaginatedResponse<Ticket>> => {
|
||||
const { data, headers } = await apiClient.get('/v1/admin/tickets', { params });
|
||||
const total = parseInt(headers['x-total-count'] || '0', 10);
|
||||
return { data, total };
|
||||
},
|
||||
getTicket: async (id: string): Promise<Ticket> => {
|
||||
const { data } = await apiClient.get(`/v1/admin/tickets/${id}`);
|
||||
return data;
|
||||
},
|
||||
updateTicket: async (id: string, payload: Partial<Ticket>): Promise<void> => {
|
||||
await apiClient.put(`/v1/admin/tickets/${id}`, payload);
|
||||
},
|
||||
deleteTicket: async (id: string): Promise<void> => {
|
||||
await apiClient.delete(`/v1/admin/tickets/${id}`);
|
||||
},
|
||||
getTicketStats: async (): Promise<TicketStats> => {
|
||||
const { data } = await apiClient.get('/v1/admin/tickets/stats');
|
||||
return data;
|
||||
},
|
||||
};
|
||||
Reference in New Issue
Block a user