Complete main UI #37
@@ -1,4 +1,4 @@
|
|||||||
import React, { useImperativeHandle } from 'react'
|
import React from 'react'
|
||||||
import HideScrollbar, { HideScrollbarElement } from '@/components/common/HideScrollbar'
|
import HideScrollbar, { HideScrollbarElement } from '@/components/common/HideScrollbar'
|
||||||
|
|
||||||
export interface SidebarScrollElement {
|
export interface SidebarScrollElement {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import React from 'react'
|
import React from 'react'
|
||||||
import FitCenter from '@/components/common/FitCenter'
|
|
||||||
import Icon from '@ant-design/icons'
|
import Icon from '@ant-design/icons'
|
||||||
import '@/assets/css/components/home/footer.scss'
|
import '@/assets/css/components/home/footer.scss'
|
||||||
|
import FitCenter from '@/components/common/FitCenter'
|
||||||
import FitFullScreen from '@/components/common/FitFullScreen'
|
import FitFullScreen from '@/components/common/FitFullScreen'
|
||||||
import { NavLink } from 'react-router-dom'
|
import { NavLink } from 'react-router-dom'
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import React from 'react'
|
import React from 'react'
|
||||||
import Icon from '@ant-design/icons'
|
import Icon from '@ant-design/icons'
|
||||||
import router from '@/router'
|
import router from '@/router'
|
||||||
import { COLOR_FONT_SECONDARY } from '@/constants/common.constants'
|
|
||||||
import '@/assets/css/pages/home-framework.scss'
|
import '@/assets/css/pages/home-framework.scss'
|
||||||
import LoadingMask from '@/components/common/LoadingMask'
|
import LoadingMask from '@/components/common/LoadingMask'
|
||||||
import HideScrollbar, { HideScrollbarElement } from '@/components/common/HideScrollbar'
|
import HideScrollbar, { HideScrollbarElement } from '@/components/common/HideScrollbar'
|
||||||
|
import { COLOR_FONT_SECONDARY } from '@/constants/common.constants'
|
||||||
|
|
||||||
export const HomeFrameworkContext = createContext<{
|
export const HomeFrameworkContext = createContext<{
|
||||||
navbarHiddenState: {
|
navbarHiddenState: {
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
import React from 'react'
|
import React from 'react'
|
||||||
|
import { notification } from 'antd'
|
||||||
|
import moment from 'moment'
|
||||||
|
import '@/assets/css/pages/login.scss'
|
||||||
|
import { setToken } from '@/utils/common'
|
||||||
|
import { getUserInfo, login } from '@/utils/auth'
|
||||||
import {
|
import {
|
||||||
SYSTEM_LOGIN_SUCCESS,
|
SYSTEM_LOGIN_SUCCESS,
|
||||||
SYSTEM_LOGIN_USERNAME_PASSWORD_ERROR,
|
SYSTEM_LOGIN_USERNAME_PASSWORD_ERROR,
|
||||||
SYSTEM_USER_DISABLE,
|
SYSTEM_USER_DISABLE,
|
||||||
SYSTEM_USERNAME_NOT_FOUND
|
SYSTEM_USERNAME_NOT_FOUND
|
||||||
} from '@/constants/common.constants'
|
} from '@/constants/common.constants'
|
||||||
import '@/assets/css/pages/login.scss'
|
|
||||||
import { setToken } from '@/utils/common'
|
|
||||||
import { getUserInfo, login } from '@/utils/auth'
|
|
||||||
import { notification } from 'antd'
|
|
||||||
import moment from 'moment'
|
|
||||||
|
|
||||||
const Login: React.FC = () => {
|
const Login: React.FC = () => {
|
||||||
const [messageApi, contextHolder] = message.useMessage()
|
const [messageApi, contextHolder] = message.useMessage()
|
||||||
|
|||||||
@@ -23,18 +23,13 @@ const ToolsFramework: React.FC = () => {
|
|||||||
<div className={'left-panel'}>
|
<div className={'left-panel'}>
|
||||||
<Sidebar title={'氮工具'} onSidebarSwitch={handleOnSidebarSwitch}>
|
<Sidebar title={'氮工具'} onSidebarSwitch={handleOnSidebarSwitch}>
|
||||||
<SidebarItemList>
|
<SidebarItemList>
|
||||||
<SidebarItem
|
<SidebarItem end path={''} icon={tools[0].icon} text={tools[0].name} />
|
||||||
end
|
|
||||||
path={''}
|
|
||||||
icon={tools[0].icon}
|
|
||||||
text={tools[0].name}
|
|
||||||
></SidebarItem>
|
|
||||||
<SidebarItem
|
<SidebarItem
|
||||||
end
|
end
|
||||||
path={'all'}
|
path={'all'}
|
||||||
icon={tools[1].icon}
|
icon={tools[1].icon}
|
||||||
text={tools[1].name}
|
text={tools[1].name}
|
||||||
></SidebarItem>
|
/>
|
||||||
</SidebarItemList>
|
</SidebarItemList>
|
||||||
<SidebarSeparate style={{ marginBottom: 0 }} />
|
<SidebarSeparate style={{ marginBottom: 0 }} />
|
||||||
<SidebarScroll ref={sidebarScrollRef}>
|
<SidebarScroll ref={sidebarScrollRef}>
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
import React from 'react'
|
import React from 'react'
|
||||||
import tools from '@/router/tools'
|
import tools from '@/router/tools'
|
||||||
import home from '@/router/home'
|
import home from '@/router/home'
|
||||||
import user from '@/router/user.tsx'
|
import user from '@/router/user'
|
||||||
|
import system from '@/router/system'
|
||||||
|
|
||||||
const mapJsonToRoute = (jsonObject: RouteJsonObject[]): RouteObject[] => {
|
const mapJsonToRoute = (jsonObject: RouteJsonObject[]): RouteObject[] => {
|
||||||
return jsonObject.map((value) => ({
|
return jsonObject.map((value) => ({
|
||||||
@@ -69,6 +70,15 @@ const root: RouteJsonObject[] = [
|
|||||||
name: '个人中心',
|
name: '个人中心',
|
||||||
auth: true
|
auth: true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: 'system',
|
||||||
|
absolutePath: '/system',
|
||||||
|
id: 'systemFramework',
|
||||||
|
component: React.lazy(() => import('@/pages/SystemFramework')),
|
||||||
|
children: setTitle(system, '系统设置'),
|
||||||
|
name: '系统设置',
|
||||||
|
auth: true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: '',
|
path: '',
|
||||||
absolutePath: '/',
|
absolutePath: '/',
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ import React from 'react'
|
|||||||
const user: RouteJsonObject[] = [
|
const user: RouteJsonObject[] = [
|
||||||
{
|
{
|
||||||
path: '',
|
path: '',
|
||||||
|
absolutePath: '/user',
|
||||||
id: 'user',
|
id: 'user',
|
||||||
name: '个人档案',
|
name: '个人档案',
|
||||||
icon: React.lazy(() => import('~icons/fatweb/user.jsx')),
|
icon: React.lazy(() => import('~icons/fatweb/user.jsx')),
|
||||||
@@ -10,6 +11,7 @@ const user: RouteJsonObject[] = [
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '*',
|
path: '*',
|
||||||
|
absolutePath: '*',
|
||||||
element: <Navigate to="/user" replace />
|
element: <Navigate to="/user" replace />
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import { getCaptcha, getLocalStorage, removeToken, setLocalStorage } from './common'
|
import { getCaptcha, getLocalStorage, removeToken, setLocalStorage } from './common'
|
||||||
|
import request from '@/services'
|
||||||
import {
|
import {
|
||||||
STORAGE_TOKEN_KEY,
|
STORAGE_TOKEN_KEY,
|
||||||
STORAGE_USER_INFO_KEY,
|
STORAGE_USER_INFO_KEY,
|
||||||
DATABASE_SELECT_SUCCESS
|
DATABASE_SELECT_SUCCESS
|
||||||
} from '@/constants/common.constants'
|
} from '@/constants/common.constants'
|
||||||
import request from '@/services'
|
|
||||||
import { URL_API_LOGIN, URL_API_LOGOUT, URL_API_USER_INFO } from '@/constants/urls.constants'
|
import { URL_API_LOGIN, URL_API_LOGOUT, URL_API_USER_INFO } from '@/constants/urls.constants'
|
||||||
|
|
||||||
let captcha: Captcha
|
let captcha: Captcha
|
||||||
|
|||||||
Reference in New Issue
Block a user