import React, {useEffect, useState} from 'react'; import DefaultLayout from "../../../components/Layout/DefaultLayout"; import {observer} from "mobx-react-lite"; import {Button, Divider, Form, Image, Input, Modal, Spin} from "antd"; import Constraint from "../../../components/Constraint"; import Ask from "../../../components/Ask"; import Location from "../../../components/Location"; import DownloadApps from "../../../components/DownloadApps"; import Sheet from 'react-modal-sheet'; import Countdown, { zeroPad } from "react-countdown"; import {useRouter} from "next/router"; import BottomSheet from "../../../components/BottomSheet"; import { botsRepository } from '../../../repository/bots'; import { useStore } from '../../../components/StoreProvider'; import { format } from 'date-fns'; import Link from 'next/link'; const Payment = observer(() => { const [form] = Form.useForm(); const router = useRouter(); const store = useStore(); const { qrCode } = router.query; const [orderId, setOrderId] = useState(''); const [price, setPrice] = useState(0); const [checkInTime, setCheckInTime] = useState(''); const [open, setOpen] = useState(false); const [openOrderOut, setOpenOrderOut] = useState(false); const [notOrder, setNotOrder] = useState(false); const [isLoading, setIsLoading] = useState(false); const [isNotComplete, setIsNotComplete] = useState(false); const onOpenSheet = () => setOpen(true); const onCloseSheet = () => setOpen(false); const onNotOrder = () => { setNotOrder(true); setOpenOrderOut(false); }; const { data: location } = botsRepository.hooks.useGetLocationByQR(qrCode) const expiredOrder = async () => { try { await botsRepository.api.updateStatusExpiredOrder(orderId) setIsNotComplete(true) setOpenOrderOut(true) } catch (err) { console.log("session epxired failed") setIsNotComplete(true) setOpenOrderOut(true) } } const renderer = ({minutes, seconds, completed}) => { if (completed) { console.log("session complite") } else { return {zeroPad(minutes)}:{zeroPad(seconds)}; } }; useEffect(() => { if (typeof window !== undefined) { let price = localStorage.getItem("price"); let getCheckInTime = localStorage.getItem("checkInTime"); let orderId = localStorage.getItem("idOrder") setOrderId(orderId); setPrice(price) const checkInTime = format(new Date(getCheckInTime), "mm") console.log(checkInTime, "time") } }, []) const handleSubmitPhoneNumber = async () => { try { const values = await form.validateFields(); setOpen(false); setIsLoading(true); const body = { phoneNumber: values.phoneNumber, }; await store.lockey.createPayment(body); form.resetFields(); setIsLoading(false) } catch (err) { console.log(err); setIsLoading(false); } } return ( <> {isNotComplete ? (
Batas Penyelesaian pesanan Anda Habis
) : (
selesaikan pesananmu dalam
)}
Nomor Telepon Pembayaran} rules={[ {required: true, message: "Silahkan masukan Nomor Ponsel!"}, {min: 10, max: 14, message: "Nomor Ponsel tidak sesuai!"}, ]}> } placeholder={'08xxxxxxxxx'} disabled={ notOrder === true }/>

Dengan melanjutkan, saya telah membaca dan menyetujui router.push('/policy-terms')}>Syarat & Ketentuan di CariParkir.

Total Pembayaran

Rp. {price}

{() => ( )}
{/*ADA KENDALA*/} {/*BUTUH BANTUAN*/} {/*DOWNLOAD APPS*/} {/*MODAL LOADING*/}
{'gif'}
Mohon tunggu Saat ini pemesanan LOCKEY anda sedang di proses.
{/*CONFIRMATION SHEET*/} setOpen(false)}>
{'confirmation'}

Konfirmasi Pembayaran?

Tidak berlaku pembatalan atau pengembalian dana setelah pembayaran selesai.

{/*ORDER OUT*/} setOpenOrderOut(false)}>
{'confirmation'}

Ingin pesan kembali?

Anda akan mendapatkan LOCKEY terbaru, jika ingin memesan kembali.

) }) Payment.getLayout = function Layout(page) { return {page} ; } ; export default Payment;