diff --git a/src/common/components/layout/AvatarProps.tsx b/src/common/components/layout/AvatarProps.tsx index 5952c6a..31bb14c 100644 --- a/src/common/components/layout/AvatarProps.tsx +++ b/src/common/components/layout/AvatarProps.tsx @@ -1,12 +1,13 @@ import { Apis } from '@/gen/Apis'; import { + DownOutlined, LogoutOutlined, UnlockOutlined, UserOutlined, } from '@ant-design/icons'; import { history } from '@umijs/max'; import { Avatar, Dropdown, MenuProps, Space } from 'antd'; -import { useState } from 'react'; +import { useEffect, useState } from 'react'; import { stateActions } from '../../libs/valtio/actions'; import AvatarIcon from './AvatarIcon.png'; import ChangePassword from './ChangePassword'; @@ -52,6 +53,15 @@ export default function AvatarProps({ user }: { user: any }) { }, ]; + useEffect(() => { + let loginUserInfo = sessionStorage.getItem('loginUserInfo'); + console.log(loginUserInfo, 'loginUserInfo'); + if (loginUserInfo === 'dW5kZWZpbmVkXzAx') { + setOpen(true); + console.log('登录成功'); + } + }, []); + return ( <> @@ -59,6 +69,7 @@ export default function AvatarProps({ user }: { user: any }) { } src={AvatarIcon} size={28} /> {user?.name} + diff --git a/src/common/components/layout/ChangePassword.tsx b/src/common/components/layout/ChangePassword.tsx index 953c8d5..67de4b7 100644 --- a/src/common/components/layout/ChangePassword.tsx +++ b/src/common/components/layout/ChangePassword.tsx @@ -1,7 +1,8 @@ import { Apis } from '@/gen/Apis'; import { ModalForm, ProFormText } from '@ant-design/pro-components'; +import { history } from '@umijs/max'; import { message } from 'antd'; - +import { stateActions } from '../../libs/valtio/actions'; export default function ChangePassword({ open, setOpen, @@ -14,12 +15,17 @@ export default function ChangePassword({ open={open} wrapperCol={{ span: 24 }} width="500px" - title="修改密码" + title="请修改初始密码" onFinish={async (values) => { return Apis.Common.Auth.ChangePassword(values) .then(() => { message.success('修改密码成功'); - setOpen(false); + Apis.Common.Auth.Logout().then(() => { + stateActions.setLogout(); + sessionStorage.removeItem('loginUserInfo'); + history.push('/login'); + setOpen(false); + }); }) .catch(() => false); }} diff --git a/src/common/libs/umi/layoutConfig.tsx b/src/common/libs/umi/layoutConfig.tsx index 37ad9a7..e52bf2c 100644 --- a/src/common/libs/umi/layoutConfig.tsx +++ b/src/common/libs/umi/layoutConfig.tsx @@ -1,15 +1,16 @@ import { MyIcons, MyIconsType, PermissionsType, useMyState } from '@/common'; import AvatarProps from '@/common/components/layout/AvatarProps'; -import { SettingOutlined } from '@ant-design/icons'; +import { Apis } from '@/gen/Apis'; import { Link, RuntimeConfig, history, useNavigate } from '@umijs/max'; -import { AutoComplete, Button, Input, Menu, MenuProps, Space } from 'antd'; -import { useState } from 'react'; +import { AutoComplete, Input, Menu, MenuProps, Select, Space } from 'antd'; +import { useEffect, useState } from 'react'; import './allConfig.scss'; // import Logo from './logo.png'; interface LevelKeysProps { key?: string; children?: LevelKeysProps[]; } + const loopMenu = (permissions: PermissionsType[] | undefined) => { let tree: PermissionsType[] = []; let map: Record = {}; @@ -57,6 +58,7 @@ const loopMenu = (permissions: PermissionsType[] | undefined) => { }; export const LayoutConfig: RuntimeConfig['layout'] = () => { + const [getSelectProject, setSelectProject] = useState([]); const { snap } = useMyState(); const navigate = useNavigate(); const permissionsList = (snap.session.permissions || []) @@ -69,12 +71,20 @@ export const LayoutConfig: RuntimeConfig['layout'] = () => { { label: '收费Bi', path: '/charge/charge_bi' }, { label: '项目Bi', path: '/asset/asset_bi' }, ]; + const handleLoadProject = async () => { + let res = await Apis.Common.Auth.GetProjects(); + setSelectProject( + res?.data?.map((item) => ({ + value: item.id, + label: item.name, + })), + ); + }; const [stateOpenKeys, setStateOpenKeys] = useState(['2', '23']); const getLevelKeys: any = (items1: LevelKeysProps[]) => { const key: Record = {}; const func = (items2: LevelKeysProps[], level = 1) => { - console.log(items2, 'level'); items2?.forEach((item) => { if (item.key) { key[item.key] = level; @@ -88,18 +98,22 @@ export const LayoutConfig: RuntimeConfig['layout'] = () => { return key; }; + useEffect(() => { + handleLoadProject(''); + }, []); + return { title: '', // 首页 logo logo: ( -
+
), @@ -114,45 +128,29 @@ export const LayoutConfig: RuntimeConfig['layout'] = () => {
- {/* - 常用功能: - {quickLinks.map((q) => ( - history.push(q.path)} - className="quick_link" - > - {q.label} - - ))} - */}
- {/* -
- -
员工端
-
- -
- -
客户端
-
-
- } - > -