|
|
|
@ -1,6 +1,6 @@
|
|
|
|
|
'use client';
|
|
|
|
|
|
|
|
|
|
import { useContext } from 'react';
|
|
|
|
|
import { useContext, useEffect, useState } from 'react';
|
|
|
|
|
|
|
|
|
|
import { Dialog, DialogContent, DialogTrigger, DialogClose } from '@/components/ui/dialog';
|
|
|
|
|
|
|
|
|
@ -9,8 +9,38 @@ import LoginForm from './LoginForm';
|
|
|
|
|
|
|
|
|
|
import { IconClose } from '@/components';
|
|
|
|
|
|
|
|
|
|
import { apiGetUUID, apiCheckQr, apiGetLoginQr } from '@/services';
|
|
|
|
|
|
|
|
|
|
export default function LoginQrcode() {
|
|
|
|
|
const { state, dispatch } = useContext(LoginContext);
|
|
|
|
|
const { uuid, setUuid } = useState<string>('');
|
|
|
|
|
|
|
|
|
|
const getUUID = async () => {
|
|
|
|
|
const result = await apiGetUUID();
|
|
|
|
|
|
|
|
|
|
if (result.code === 200) {
|
|
|
|
|
setUuid(result.data);
|
|
|
|
|
getQrcode(result.data);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
const getQrcode = async (id: string) => {
|
|
|
|
|
const res = await apiGetLoginQr(id);
|
|
|
|
|
const qrCode = await res.data;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
const checkLoginStatus = async () => {
|
|
|
|
|
const res = await apiCheckQr(uuid);
|
|
|
|
|
console.log(res);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
useEffect(() => {
|
|
|
|
|
const intervalId = setInterval(checkLoginStatus, 1000);
|
|
|
|
|
|
|
|
|
|
return () => clearInterval(intervalId);
|
|
|
|
|
getUUID();
|
|
|
|
|
}, []);
|
|
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
<div className="flex flex-col items-center px-40px bg-#f2f3f7">
|
|
|
|
|