fix: double order when click button reorder
This commit is contained in:
		| @@ -1,4 +1,4 @@ | ||||
| import React, {useEffect} from 'react'; | ||||
| import React, {useEffect, useState} from 'react'; | ||||
| import DefaultLayout from "../../../components/Layout/DefaultLayout"; | ||||
| import { useRouter } from 'next/router'; | ||||
| import { Image } from 'antd'; | ||||
| @@ -9,6 +9,11 @@ import { observer } from 'mobx-react-lite'; | ||||
| const FlashScreen = observer(() => { | ||||
|     const router = useRouter(); | ||||
|     const store = useStore() | ||||
|     const [startOrder, setStartOrder] = useState(false) | ||||
|  | ||||
|     setTimeout(() => { | ||||
|         setStartOrder(true) | ||||
|     }, 3000) | ||||
|  | ||||
|     const { qrCode } = router.query; | ||||
|  | ||||
| @@ -23,16 +28,20 @@ const FlashScreen = observer(() => { | ||||
|                 localStorage.setItem("lockey_id", isAvailable?.id) | ||||
|                 localStorage.setItem("location_name", isAvailable?.location_name); | ||||
|                 localStorage.setItem("price", isAvailable?.price) | ||||
|                 store.lockey.createOrder({ | ||||
|                     lockeyId: isAvailable.id | ||||
|                 }) | ||||
|                     .then(res => { | ||||
|                         router.push(`/${qrCode}/payment-order/`) | ||||
|                         localStorage.setItem("idOrder", res?.data?.id) | ||||
|                         localStorage.setItem("checkInTime", res?.data?.check_in_time) | ||||
|                         localStorage.setItem("validTime", res?.data?.valid_time) | ||||
|                         console.log(res, "data order") | ||||
|                 if (startOrder) { | ||||
|                     store.lockey.createOrder({ | ||||
|                         lockeyId: isAvailable.id | ||||
|                     }) | ||||
|                         .then(res => { | ||||
|                             router.push(`/${qrCode}/payment-order/`) | ||||
|                             localStorage.setItem("idOrder", res?.data?.id) | ||||
|                             localStorage.setItem("checkInTime", res?.data?.check_in_time) | ||||
|                             localStorage.setItem("validTime", res?.data?.valid_time) | ||||
|                             console.log(res, "data order") | ||||
|                         }) | ||||
|                 } else { | ||||
|                     console.log("loading") | ||||
|                 } | ||||
|             } else if (isNotAvailable) { | ||||
|                 localStorage.setItem("lockey_id", isNotAvailable?.id) | ||||
|                 localStorage.setItem("location_name", isNotAvailable?.location_name); | ||||
| @@ -40,7 +49,7 @@ const FlashScreen = observer(() => { | ||||
|             } | ||||
|             console.log(isAvailable, "jj") | ||||
|         } | ||||
|     }, [router.isReady, listLockeys]) | ||||
|     }, [startOrder]) | ||||
|  | ||||
|     return ( | ||||
|         <> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user