diff --git a/src/features/ticket/api/ticketOption.ts b/src/features/ticket/api/ticketOption.ts index 319906f6..7df81dae 100644 --- a/src/features/ticket/api/ticketOption.ts +++ b/src/features/ticket/api/ticketOption.ts @@ -1,4 +1,6 @@ import { axiosClient } from "../../../shared/types/api/http-client"; +import { ApiResponse } from '../../../shared/types/api/apiResponse'; +import { TicketOptionRequest, TicketOptionTypeResponse } from '../model/ticketOption'; import { PersonalTicketOptionAnswerResponse, TicketOptionAnswerRequest, TicketOptionAnswerResponse, TicketOptionResponse } from "../model/ticketInformation"; // 티켓 옵션 조회 @@ -28,12 +30,11 @@ export const readPersonalTicketOptionAnswers = async (ticketId: number): Promise }); return response.data; }; -import { TicketOptionRequest, TicketOptionResponse } from '../model/ticketOption'; -import { ApiResponse } from '../../../shared/types/api/apiResponse'; + // 티켓 옵션 생성 -export const createTicketOption = async (data: TicketOptionRequest): Promise => { - const response = await axiosClient.post('/ticket-options', data); +export const createTicketOption = async (data: TicketOptionRequest): Promise => { + const response = await axiosClient.post('/ticket-options', data); return response.data; }; @@ -53,20 +54,20 @@ export const deleteTicketOption = async (ticketOptionId: number): Promise => { - const response = await axiosClient.get(`/ticket-options/events/${eventId}`); +export const getTicketOptions = async (eventId: number): Promise => { + const response = await axiosClient.get(`/ticket-options/events/${eventId}`); return response.data; }; // 티켓에 부착된 옵션 목록 조회 -export const getAttachedTicketOptions = async (ticketId: number): Promise => { - const response = await axiosClient.get(`ticket-options/tickets/${ticketId}`); +export const getAttachedTicketOptions = async (ticketId: number): Promise => { + const response = await axiosClient.get(`ticket-options/tickets/${ticketId}`); return response.data; }; // 티켓 옵션 상세 조회 -export const getTicketOptionDetail = async (ticketOptionId: number): Promise => { - const response = await axiosClient.get(`/ticket-options/${ticketOptionId}`); +export const getTicketOptionDetail = async (ticketOptionId: number): Promise => { + const response = await axiosClient.get(`/ticket-options/${ticketOptionId}`); return response.data; }; diff --git a/src/features/ticket/hooks/useTicketOptionHook.ts b/src/features/ticket/hooks/useTicketOptionHook.ts index 1622fd6c..23389189 100644 --- a/src/features/ticket/hooks/useTicketOptionHook.ts +++ b/src/features/ticket/hooks/useTicketOptionHook.ts @@ -1,3 +1,7 @@ +import { ApiResponse } from '../../../shared/types/api/apiResponse'; +import { useParams, useNavigate } from 'react-router-dom'; +import { useQuery, useMutation, useQueryClient } from '@tanstack/react-query'; +import { TicketOptionRequest, TicketOptionTypeResponse } from '../model/ticketOption'; import { PersonalTicketOptionAnswerResponse, TicketOptionAnswerRequest, @@ -10,7 +14,17 @@ import { readPurchaserAnswers, readTicketOptions, } from '../api/ticketOption'; -import { ApiResponse } from '../../../shared/types/api/apiResponse'; +import { + getTicketOptions, + createTicketOption, + modifyTicketOption, + deleteTicketOption, + getAttachedTicketOptions, + getTicketOptionDetail, + attachTicketOption, + detachTicketOption, +} from '../api/ticketOption'; + // 티켓 옵션 조회 export const useTicketOptions = (ticketId: number) => { @@ -62,21 +76,7 @@ export const usePersonalTicketOptionAnswers = (ticketId: number | null) => { }); }; -import { useParams, useNavigate } from 'react-router-dom'; -import { useQuery, useMutation, useQueryClient } from '@tanstack/react-query'; -import { - getTicketOptions, - createTicketOption, - modifyTicketOption, - deleteTicketOption, - getAttachedTicketOptions, - getTicketOptionDetail, - attachTicketOption, - detachTicketOption, -} from '../api/ticketOption'; -import { TicketOptionRequest, TicketOptionResponse } from '../model/ticketOption'; - -// 티켓 옵션 생성 훅 +// 티켓 옵션 생성 훅 export const useCreateTicketOptionMutation = () => { const { id } = useParams(); const navigate = useNavigate(); @@ -138,7 +138,7 @@ export const useGetTicketOptions = () => { const { id } = useParams(); const eventId = Number(id); - return useQuery({ + return useQuery({ queryKey: ['ticketOptions', id], queryFn: () => getTicketOptions(eventId), enabled: !!id, @@ -147,7 +147,7 @@ export const useGetTicketOptions = () => { // 티켓에 부착된 옵션 목록 조회 훅 export const useGetAttachedTicketOptions = (ticketId: number) => { - return useQuery({ + return useQuery({ queryKey: ['attachedTicketOptions', ticketId], queryFn: () => getAttachedTicketOptions(ticketId), enabled: !!ticketId, @@ -156,7 +156,7 @@ export const useGetAttachedTicketOptions = (ticketId: number) => { // 티켓 옵션 상세 조회 훅 export const useGetTicketOptionDetail = (ticketOptionId: number) => { - return useQuery({ + return useQuery({ queryKey: ['ticketOptionDetail', ticketOptionId], queryFn: () => getTicketOptionDetail(ticketOptionId), enabled: !!ticketOptionId, diff --git a/src/features/ticket/model/ticketOption.ts b/src/features/ticket/model/ticketOption.ts index 08e8026b..b90e225c 100644 --- a/src/features/ticket/model/ticketOption.ts +++ b/src/features/ticket/model/ticketOption.ts @@ -57,4 +57,4 @@ export interface TicketOptionsType { }[]; } -export interface TicketOptionResponse extends ApiResponse {} +export interface TicketOptionTypeResponse extends ApiResponse {}