|
|
|
@ -1,6 +1,6 @@
|
|
|
|
|
import useAuthStore from '@/stores/AuthStore'
|
|
|
|
|
import { Flex, Result, Spin, Typography } from 'antd'
|
|
|
|
|
import { useEffect } from 'react'
|
|
|
|
|
import { useEffect, useState } from 'react'
|
|
|
|
|
import { useNavigate } from 'react-router-dom'
|
|
|
|
|
|
|
|
|
|
const { Title } = Typography
|
|
|
|
@ -10,16 +10,18 @@ const { Title } = Typography
|
|
|
|
|
function QRCode() {
|
|
|
|
|
|
|
|
|
|
const navigate = useNavigate()
|
|
|
|
|
|
|
|
|
|
const loginStatus = useAuthStore((state) => state.loginStatus)
|
|
|
|
|
const setLoginStatus = useAuthStore((state) => state.setLoginStatus)
|
|
|
|
|
const loginUser = useAuthStore((state) => state.loginUser)
|
|
|
|
|
const login = useAuthStore((state) => state.login)
|
|
|
|
|
|
|
|
|
|
const [result, setResult] = useState('')
|
|
|
|
|
|
|
|
|
|
// const loginStatus = useAuthStore((state) => state.loginStatus)
|
|
|
|
|
// const setLoginStatus = useAuthStore((state) => state.setLoginStatus)
|
|
|
|
|
// const loginUser = useAuthStore((state) => state.loginUser)
|
|
|
|
|
// const login = useAuthStore((state) => state.login)
|
|
|
|
|
|
|
|
|
|
useEffect(() => {
|
|
|
|
|
if (loginUser.userId > 0) {
|
|
|
|
|
navigate('/')
|
|
|
|
|
}
|
|
|
|
|
// if (loginUser.userId > 0) {
|
|
|
|
|
// navigate('/')
|
|
|
|
|
// }
|
|
|
|
|
}, [])
|
|
|
|
|
|
|
|
|
|
useEffect(() => {
|
|
|
|
@ -40,49 +42,24 @@ function QRCode() {
|
|
|
|
|
},
|
|
|
|
|
(loginResult) => {
|
|
|
|
|
const { authCode } = loginResult
|
|
|
|
|
login(authCode)
|
|
|
|
|
// login(authCode)
|
|
|
|
|
setResult(authCode)
|
|
|
|
|
},
|
|
|
|
|
(errorMsg) => {
|
|
|
|
|
setLoginStatus(403)
|
|
|
|
|
// setLoginStatus(403)
|
|
|
|
|
console.error(`Login Error: ${errorMsg}`)
|
|
|
|
|
},
|
|
|
|
|
)
|
|
|
|
|
})
|
|
|
|
|
}, [])
|
|
|
|
|
|
|
|
|
|
if (loginStatus === 200) {
|
|
|
|
|
return (
|
|
|
|
|
<Flex justify='center' align='center' gap='middle' vertical>
|
|
|
|
|
<Result
|
|
|
|
|
status='success'
|
|
|
|
|
title='扫码成功'
|
|
|
|
|
subTitle='正在获取你的权限'
|
|
|
|
|
extra={[
|
|
|
|
|
<Spin size='small' />
|
|
|
|
|
]}
|
|
|
|
|
/>
|
|
|
|
|
</Flex>
|
|
|
|
|
)
|
|
|
|
|
} else if (loginStatus === 302) {
|
|
|
|
|
navigate('/')
|
|
|
|
|
} else if (loginStatus === 403) {
|
|
|
|
|
return (
|
|
|
|
|
<Flex justify='center' align='center' gap='middle' vertical>
|
|
|
|
|
<Result
|
|
|
|
|
status='403'
|
|
|
|
|
title='403'
|
|
|
|
|
subTitle='你没有绑定钉钉账号,无法登陆。'
|
|
|
|
|
/>
|
|
|
|
|
</Flex>
|
|
|
|
|
)
|
|
|
|
|
} else {
|
|
|
|
|
return (
|
|
|
|
|
<Flex justify='center' align='center' gap='middle' vertical>
|
|
|
|
|
<Title level={4}>使用钉钉扫码</Title>
|
|
|
|
|
<div id='qrCodeContainer' style={{ border: '12px solid rgba(5, 5, 5, 0.06)', borderRadius: '8px' }}></div>
|
|
|
|
|
</Flex>
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
return (
|
|
|
|
|
<Flex justify='center' align='center' gap='middle' vertical>
|
|
|
|
|
<Title level={4}>使用钉钉扫码</Title>
|
|
|
|
|
<div id='qrCodeContainer' style={{ border: '12px solid rgba(5, 5, 5, 0.06)', borderRadius: '8px' }}></div>
|
|
|
|
|
<span>钉钉 authCode: {result}</span>
|
|
|
|
|
</Flex>
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export default QRCode
|