/
voting
/
frontend
Обзор
Документация
Войти
/
voting
/
frontend
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
main
src/api/voting.service.ts
44 строки
1 KB
TimPulin
042-participant-votes-client
19 июл 2026, 18:40
19 июл 2026, 18:40
20d7497
Код
Авторство
О чём код?
import { apiClient } from './client' import type { CurrentNominationDetailsResponseDto, NominationDetailsDto, NominationListItemDto, UpsertVoteDto, VoteResponseDto } from './types' export const votingService = { async getCurrentNomination(eventId: string): Promise<CurrentNominationDetailsResponseDto> { const response = await apiClient.get<CurrentNominationDetailsResponseDto>( `/events/${eventId}/current-nomination` ) return response.data }, async listNominations(eventId?: string): Promise<NominationListItemDto[]> { const response = await apiClient.get<NominationListItemDto[]>('/nominations', { params: eventId !== undefined ? { eventId } : undefined }) return response.data }, async getNomination(id: string): Promise<NominationDetailsDto> { const response = await apiClient.get<NominationDetailsDto>(`/nominations/${id}`) return response.data }, async upsertOrRemoveVote(dto: UpsertVoteDto): Promise<VoteResponseDto | undefined> { const response = await apiClient.post<VoteResponseDto | ''>('/votes', dto) if (response.status === 204) { return undefined } return response.data as VoteResponseDto }, async listMyVotes(eventId: string, userId: string): Promise<VoteResponseDto[]> { const response = await apiClient.get<VoteResponseDto[]>('/votes/me', { params: { eventId, userId } }) return response.data } }