my order status fix
This commit is contained in:
@@ -5,16 +5,28 @@ import { TickSquare } from 'iconsax-react'
|
|||||||
import { useOrderStore } from './store/OrderStore'
|
import { useOrderStore } from './store/OrderStore'
|
||||||
import { useSubmitOrder } from './hooks/useOrderData'
|
import { useSubmitOrder } from './hooks/useOrderData'
|
||||||
import { toast } from '@/shared/toast'
|
import { toast } from '@/shared/toast'
|
||||||
|
import { useNavigate } from 'react-router-dom'
|
||||||
|
import { Paths } from '@/config/Paths'
|
||||||
|
import { extractErrorMessage } from '@/config/func'
|
||||||
|
|
||||||
const NewOrder: FC = () => {
|
const NewOrder: FC = () => {
|
||||||
|
|
||||||
|
const navigate = useNavigate()
|
||||||
const { mutate: submitOrder, isPending } = useSubmitOrder()
|
const { mutate: submitOrder, isPending } = useSubmitOrder()
|
||||||
const [showOrders, setShowOrders] = useState([0])
|
const [showOrders, setShowOrders] = useState([0])
|
||||||
const { items } = useOrderStore()
|
const { items } = useOrderStore()
|
||||||
|
|
||||||
const onSubmit = () => {
|
const onSubmit = () => {
|
||||||
if (items.length > 0) {
|
if (items.length > 0) {
|
||||||
submitOrder(items)
|
submitOrder(items, {
|
||||||
|
onSuccess: () => {
|
||||||
|
toast('سفارش با موفقیت ثبت شد', 'success')
|
||||||
|
navigate(Paths.myOrders)
|
||||||
|
},
|
||||||
|
onError: (error) => {
|
||||||
|
toast(extractErrorMessage(error), 'error')
|
||||||
|
}
|
||||||
|
})
|
||||||
} else {
|
} else {
|
||||||
toast('حداقل یک سفارش باید اضافه کنید.', 'error')
|
toast('حداقل یک سفارش باید اضافه کنید.', 'error')
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ export const useSubmitOrder = () => {
|
|||||||
|
|
||||||
export const useGetMyOrders = (page: number = 1, statuses: TabMyOrdersEnum) => {
|
export const useGetMyOrders = (page: number = 1, statuses: TabMyOrdersEnum) => {
|
||||||
return useQuery({
|
return useQuery({
|
||||||
queryKey: ["products"],
|
queryKey: ["products", page, statuses],
|
||||||
queryFn: () => api.getMyOrders(page, statuses),
|
queryFn: () => api.getMyOrders(page, statuses),
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ export const getMyOrders = async (
|
|||||||
|
|
||||||
let query = `?page=${page}`;
|
let query = `?page=${page}`;
|
||||||
if (statuses) {
|
if (statuses) {
|
||||||
query += `statuses=${statuses}`;
|
query += `&statuses=${statuses}`;
|
||||||
}
|
}
|
||||||
const { data } = await axios.get<MyOrdersResponseType>(
|
const { data } = await axios.get<MyOrdersResponseType>(
|
||||||
`/public/orders${query}`,
|
`/public/orders${query}`,
|
||||||
|
|||||||
Reference in New Issue
Block a user