Skip to content

Commit 58a642f

Browse files
authored
Merge pull request #174 from FC-InnerCircle-ICD2/fix/qa
fix: qa
2 parents b202621 + 72ae5e4 commit 58a642f

4 files changed

Lines changed: 21 additions & 9 deletions

File tree

src/api/useGetOrderStatus.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,11 @@ import { useQuery } from '@tanstack/react-query'
33
import { OrderStatus } from './useGetOrdersDetail'
44

55
const useGetOrderStatus = (orderId?: string) => {
6-
const { data: status, isSuccess } = useQuery({
6+
const {
7+
data: status,
8+
isSuccess,
9+
refetch,
10+
} = useQuery({
711
queryKey: ['orderStatus', orderId],
812
queryFn: async () => {
913
return await api.get<{ status: OrderStatus }>(`orders/${orderId}/status`)
@@ -14,7 +18,7 @@ const useGetOrderStatus = (orderId?: string) => {
1418
},
1519
})
1620

17-
return { status, isSuccess }
21+
return { status, isSuccess, refetch }
1822
}
1923

2024
export default useGetOrderStatus

src/api/usePatchOrderCancel.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
import { api } from '@/lib/api'
22
import { useMutation, useQueryClient } from '@tanstack/react-query'
33

4-
const usePatchOrderCancel = () => {
4+
const usePatchOrderCancel = (refetchOrderStatus: () => void) => {
55
const queryClient = useQueryClient()
66

77
return useMutation({
88
mutationFn: (orderId: string) => api.patch(`orders/${orderId}/cancel`, {}),
99
onSuccess: () => {
1010
queryClient.invalidateQueries({ queryKey: ['ordersDetail'] })
11+
refetchOrderStatus()
1112
},
1213
})
1314
}

src/app/orders/detail/[id]/_components/OrderList.tsx

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { OrdersDetail } from '@/api/useGetOrdersDetail'
2-
import usePatchOrderCancel from '@/api/usePatchOrderCancel'
32
import Chip from '@/components/Chip'
43
import Confirm from '@/components/Confirm'
54
import Separator from '@/components/Separator'
@@ -8,10 +7,10 @@ import { v4 as uuidv4 } from 'uuid'
87

98
interface OrderListProps {
109
ordersData: OrdersDetail
10+
patchOrderCancel: (orderId: string) => void
1111
}
1212

13-
const OrderList = ({ ordersData }: OrderListProps) => {
14-
const { mutate: patchOrderCancel } = usePatchOrderCancel()
13+
const OrderList = ({ ordersData, patchOrderCancel }: OrderListProps) => {
1514
const { showModal } = modalStore()
1615

1716
const handleOrderCancel = () => {
@@ -20,7 +19,9 @@ const OrderList = ({ ordersData }: OrderListProps) => {
2019
<Confirm
2120
title="주문 취소"
2221
message="주문을 취소하시겠습니까?"
23-
onConfirmClick={() => patchOrderCancel(ordersData.orderId)}
22+
onConfirmClick={() => {
23+
patchOrderCancel(ordersData.orderId)
24+
}}
2425
/>
2526
),
2627
})

src/app/orders/detail/[id]/page.tsx

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import useGetOrdersDetail from '@/api/useGetOrdersDetail'
44
import useGetOrderStatus from '@/api/useGetOrderStatus'
5+
import usePatchOrderCancel from '@/api/usePatchOrderCancel'
56
import OrderList from '@/app/orders/detail/[id]/_components/OrderList'
67
import FullpageLoader from '@/components/FullpageLoader'
78
import Separator from '@/components/Separator'
@@ -17,7 +18,8 @@ const OrderDetailPage = () => {
1718
return path.split('/').pop()
1819
}, [path])
1920
const { ordersDetail, resetGetOrdersDetail } = useGetOrdersDetail(orderId)
20-
const { status } = useGetOrderStatus(orderId)
21+
const { status, refetch: refetchOrderStatus } = useGetOrderStatus(orderId)
22+
const { mutate: patchOrderCancel } = usePatchOrderCancel(refetchOrderStatus)
2123

2224
useEffect(() => {
2325
if (!status) return
@@ -36,7 +38,11 @@ const OrderDetailPage = () => {
3638
{status && <OrderStatus orderStatus={status.status} />}
3739
<Separator ignoreMobileSafe className="h-[8px]" />
3840
</div>
39-
<div className="pb-5">{ordersDetail && <OrderList ordersData={ordersDetail} />}</div>
41+
<div className="pb-5">
42+
{ordersDetail && (
43+
<OrderList ordersData={ordersDetail} patchOrderCancel={patchOrderCancel} />
44+
)}
45+
</div>
4046
</div>
4147
)
4248
}

0 commit comments

Comments
 (0)