/
voting
/
frontend
Обзор
Документация
Войти
/
voting
/
frontend
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
main
src/api/admin.service.ts
138 строк
4 KB
pulintim
Запрос на слияние 'features/EventDataLoader' (
#25
) из features/EventDataLoader в main
19 июл 2026, 15:37
Верифицирован
19 июл 2026, 15:37
9809747
Код
Авторство
О чём код?
import { apiClient } from './client' import type { AdminEventResponseDto, AdminNominationResponseDto, AdminNomineeResponseDto, BulkNominationsDto, BulkNomineesDto, CreateEventDto, CreateNominationDto, CreateNomineeDto, CurrentNominationResponseDto, ScreenResponseDto, SetCurrentNominationDto, SetScreenDto, UpdateEventDto, UpdateNominationDto, UpdateNomineeDto } from './types' export const adminService = { async createNomination(dto: CreateNominationDto): Promise<AdminNominationResponseDto> { const response = await apiClient.post<AdminNominationResponseDto>('/admin/nominations', dto) return response.data }, async listNominations(eventId?: string): Promise<AdminNominationResponseDto[]> { const response = await apiClient.get<AdminNominationResponseDto[]>('/admin/nominations', { params: eventId !== undefined ? { eventId } : undefined }) return response.data }, async getNomination(id: string): Promise<AdminNominationResponseDto> { const response = await apiClient.get<AdminNominationResponseDto>(`/admin/nominations/${id}`) return response.data }, async updateNomination( id: string, dto: UpdateNominationDto ): Promise<AdminNominationResponseDto> { const response = await apiClient.put<AdminNominationResponseDto>( `/admin/nominations/${id}`, dto ) return response.data }, async removeNomination(id: string): Promise<void> { await apiClient.delete(`/admin/nominations/${id}`) }, async bulkSyncNominations(dto: BulkNominationsDto): Promise<AdminNominationResponseDto[]> { const response = await apiClient.put<AdminNominationResponseDto[]>( '/admin/nominations/bulk', dto ) return response.data }, async createNominee(dto: CreateNomineeDto): Promise<AdminNomineeResponseDto> { const response = await apiClient.post<AdminNomineeResponseDto>('/admin/nominees', dto) return response.data }, async listNominees(nominationId?: string): Promise<AdminNomineeResponseDto[]> { const response = await apiClient.get<AdminNomineeResponseDto[]>('/admin/nominees', { params: nominationId !== undefined ? { nominationId } : undefined }) return response.data }, async getNominee(id: string): Promise<AdminNomineeResponseDto> { const response = await apiClient.get<AdminNomineeResponseDto>(`/admin/nominees/${id}`) return response.data }, async updateNominee(id: string, dto: UpdateNomineeDto): Promise<AdminNomineeResponseDto> { const response = await apiClient.put<AdminNomineeResponseDto>(`/admin/nominees/${id}`, dto) return response.data }, async removeNominee(id: string): Promise<void> { await apiClient.delete(`/admin/nominees/${id}`) }, async bulkSyncNominees(dto: BulkNomineesDto): Promise<AdminNomineeResponseDto[]> { const response = await apiClient.put<AdminNomineeResponseDto[]>('/admin/nominees/bulk', dto) return response.data }, async createEvent(dto: CreateEventDto): Promise<AdminEventResponseDto> { const response = await apiClient.post<AdminEventResponseDto>('/admin/events', dto) return response.data }, async listEvents(): Promise<AdminEventResponseDto[]> { const response = await apiClient.get<AdminEventResponseDto[]>('/admin/events') return response.data }, async getEvent(id: string): Promise<AdminEventResponseDto> { const response = await apiClient.get<AdminEventResponseDto>(`/admin/events/${id}`) return response.data }, async updateEvent(id: string, dto: UpdateEventDto): Promise<AdminEventResponseDto> { const response = await apiClient.put<AdminEventResponseDto>(`/admin/events/${id}`, dto) return response.data }, async removeEvent(id: string): Promise<void> { await apiClient.delete(`/admin/events/${id}`) }, async getCurrentNomination(eventId: string): Promise<CurrentNominationResponseDto> { const response = await apiClient.get<CurrentNominationResponseDto>( `/admin/events/${eventId}/current-nomination` ) return response.data }, async setCurrentNomination( eventId: string, dto: SetCurrentNominationDto ): Promise<CurrentNominationResponseDto> { const response = await apiClient.put<CurrentNominationResponseDto>( `/admin/events/${eventId}/current-nomination`, dto ) return response.data }, async setScreen(eventId: string, dto: SetScreenDto): Promise<ScreenResponseDto> { const response = await apiClient.put<ScreenResponseDto>(`/admin/events/${eventId}/screen`, dto) return response.data } }