|
|
|
@ -1,9 +1,7 @@
|
|
|
|
|
import ErrorBoundary from '@/components/ErrorBoundary'
|
|
|
|
|
import useAuthStore from '@/stores/AuthStore'
|
|
|
|
|
import { useThemeContext } from '@/stores/ThemeContext'
|
|
|
|
|
import { Conditional } from '@/components/Conditional'
|
|
|
|
|
import useConversationStore from '@/stores/ConversationStore'
|
|
|
|
|
import { PERM_USE_EMAL } from '@/stores/AuthStore'
|
|
|
|
|
import {
|
|
|
|
|
App as AntApp,
|
|
|
|
|
ConfigProvider,
|
|
|
|
@ -13,7 +11,7 @@ import {
|
|
|
|
|
FloatButton,
|
|
|
|
|
theme,
|
|
|
|
|
} from 'antd'
|
|
|
|
|
import { BugOutlined, MailOutlined } from '@ant-design/icons'
|
|
|
|
|
import { BugOutlined } from '@ant-design/icons'
|
|
|
|
|
import zhLocale from 'antd/locale/zh_CN'
|
|
|
|
|
import 'dayjs/locale/zh-cn'
|
|
|
|
|
import { useEffect } from 'react'
|
|
|
|
@ -38,8 +36,8 @@ function AuthApp() {
|
|
|
|
|
const [messageApi, contextHolder] = message.useMessage()
|
|
|
|
|
|
|
|
|
|
const { colorPrimary, borderRadius } = useThemeContext()
|
|
|
|
|
const [loginUser, sendNotify, isPermitted] = useAuthStore((state) => [
|
|
|
|
|
state.loginUser, state.sendNotify, state.isPermitted
|
|
|
|
|
const [loginUser, sendNotify] = useAuthStore((state) => [
|
|
|
|
|
state.loginUser, state.sendNotify
|
|
|
|
|
])
|
|
|
|
|
|
|
|
|
|
const href = useHref()
|
|
|
|
@ -64,11 +62,8 @@ function AuthApp() {
|
|
|
|
|
connectWebsocket(loginUser.userId)
|
|
|
|
|
fetchInitialData(loginUser)
|
|
|
|
|
|
|
|
|
|
let _fetchEmailWorker;
|
|
|
|
|
if (isPermitted(PERM_USE_EMAL)) {
|
|
|
|
|
_fetchEmailWorker = startEmailInterval(loginUser.userId)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return () => {
|
|
|
|
|
disconnectWebsocket()
|
|
|
|
|
fetchEmailWorker.postMessage({ command: 'logout' })
|
|
|
|
@ -136,10 +131,7 @@ function AuthApp() {
|
|
|
|
|
insetInlineEnd: 94,
|
|
|
|
|
}}
|
|
|
|
|
>
|
|
|
|
|
<Conditional
|
|
|
|
|
condition={isPermitted(PERM_USE_EMAL)}
|
|
|
|
|
whenTrue={<EmailFetch />}
|
|
|
|
|
/>
|
|
|
|
|
<EmailFetch />
|
|
|
|
|
<FloatButton icon={<BugOutlined />} tooltip={<div>上传日志给研发部</div>} onClick={() => uploadLog()} />
|
|
|
|
|
<FloatButton.BackTop />
|
|
|
|
|
</FloatButton.Group>
|
|
|
|
|